From ee1b7eb600b88d437b8798745ac29d7f71164066 Mon Sep 17 00:00:00 2001 From: Oliver Date: Sun, 14 Feb 2021 22:37:07 -0500 Subject: [PATCH] Slides for the week --- src/teaching/cse-562/2021sp/checkpoint1.erb | 4 +- src/teaching/cse-562/2021sp/index.erb | 15 +- .../2021sp/slide/2021-02-16-Checkpoint1.erb | 785 ++ .../slide/2021-02-18-QueryAlgorithms.erb | 489 + .../slide/2021-02-25-PhysicalLayout.erb | 258 + .../slide/graphics/2021-02-16-RA-Tree.svg | 150 + .../slide/graphics/2021-02-18-Flow-Cross.svg | 423 + .../graphics/2021-02-18-Flow-Project.svg | 252 + .../slide/graphics/2021-02-18-Flow-Select.svg | 285 + .../slide/graphics/2021-02-18-Flow-Union.svg | 372 + .../graphics/2021-02-18-Join-1PassHash.svg | 430 + .../graphics/2021-02-18-Join-2PassHash.svg | 608 ++ .../slide/graphics/2021-02-18-Join-BNLJ.svg | 274 + .../slide/graphics/2021-02-18-Join-Grid.svg | 368 + .../slide/graphics/2021-02-18-Join-NLJ.svg | 263 + .../graphics/2021-02-18-Join-OrderGrid.svg | 353 + .../graphics/2021-02-18-Join-SortMerge.svg | 303 + .../graphics/2021-02-25-Buffer-Manager.svg | 577 ++ .../slide/graphics/2021-02-25-Heap-File-1.svg | 390 + .../slide/graphics/2021-02-25-Heap-File-2.svg | 269 + .../graphics/2021-02-25-Layout-ColumnWise.svg | 473 + .../graphics/2021-02-25-Layout-RowWise.svg | 416 + .../graphics/2021-02-25-Page-Layouts-1.svg | 729 ++ .../graphics/2021-02-25-Page-Layouts-2.svg | 385 + .../graphics/2021-02-25-mem_bulk_loading.svg | 9149 +++++++++++++++++ .../graphics/2021-02-25-mem_hierarchy.png | Bin 0 -> 234215 bytes .../graphics/2021-02-25-record-fixed.svg | 209 + .../graphics/2021-02-25-record-header.svg | 372 + .../graphics/2021-02-25-record-separator.svg | 288 + 29 files changed, 18882 insertions(+), 7 deletions(-) create mode 100644 src/teaching/cse-562/2021sp/slide/2021-02-16-Checkpoint1.erb create mode 100644 src/teaching/cse-562/2021sp/slide/2021-02-18-QueryAlgorithms.erb create mode 100644 src/teaching/cse-562/2021sp/slide/2021-02-25-PhysicalLayout.erb create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-16-RA-Tree.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Flow-Cross.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Flow-Project.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Flow-Select.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Flow-Union.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-1PassHash.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-2PassHash.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-BNLJ.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-Grid.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-NLJ.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-OrderGrid.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-SortMerge.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Buffer-Manager.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Heap-File-1.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Heap-File-2.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Layout-ColumnWise.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Layout-RowWise.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Page-Layouts-1.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Page-Layouts-2.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-mem_bulk_loading.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-mem_hierarchy.png create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-record-fixed.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-record-header.svg create mode 100644 src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-record-separator.svg diff --git a/src/teaching/cse-562/2021sp/checkpoint1.erb b/src/teaching/cse-562/2021sp/checkpoint1.erb index 75f95ef2..788f1128 100644 --- a/src/teaching/cse-562/2021sp/checkpoint1.erb +++ b/src/teaching/cse-562/2021sp/checkpoint1.erb @@ -202,7 +202,7 @@ case class AttributeReference( That all being said, here are unresolved nodes you can expect to encounter:

-
LogicalPlan
+

LogicalPlan

 case class UnresolvedRelation(
     nameElements: Seq[String], 
@@ -224,7 +224,7 @@ case class ____(____)
 Note that AttributeSet is a subclass of Seq[Attribute].  In general, the  output field should be given as a sequence of AttributeReferences (see above).
 

-
Expression
+

Expression

 case class UnresolvedStar(target: Option[Seq[String]])
 
diff --git a/src/teaching/cse-562/2021sp/index.erb b/src/teaching/cse-562/2021sp/index.erb index 9d453a19..8dd9d4b7 100644 --- a/src/teaching/cse-562/2021sp/index.erb +++ b/src/teaching/cse-562/2021sp/index.erb @@ -14,26 +14,31 @@ schedule: - date: "Feb. 9" topic: "Relational Algebra + Spark" materials: + lecture: https://youtu.be/xnJNTTirgoY slides: slide/2021-02-09-RA-Basics-and-Spark.html - date: "Feb. 11" topic: "Relational Algebra Equivalence Rules" materials: + lecture: https://youtu.be/IJLLCB6tdCk slides: slide/2021-02-11-RA-Equivs.html - date: "Feb. 16" topic: "Algorithms, Checkpoint 1" due: "Checkpoint 0" materials: checkpoint1: "checkpoint1.html" + slides: slide/2021-02-16-Checkpoint1.html - date: "Feb. 18" - topic: "Extended Relational Algebra" + topic: "Relational Algebra Algorithms" + materials: + slides: slide/2021-02-18-QueryAlgorithms.html - date: "Feb. 23" - topic: "Physical Data Layout" + topic: "Extended Relational Algebra" - date: "Feb. 25" - topic: "Indexes: Tree-Based" + topic: "Physical Data Layout" - date: "Mar. 2" - topic: "Indexes: Hash, View-Based" + topic: "Indexes: Tree-Based, Hash" - date: "Mar. 4" - topic: "Indexes: Modern" + topic: "Indexes: View-Based, Modern" - date: "Mar. 9" topic: "Spark's Optimizer + Checkpoint 2" due: "Checkpoint 1" diff --git a/src/teaching/cse-562/2021sp/slide/2021-02-16-Checkpoint1.erb b/src/teaching/cse-562/2021sp/slide/2021-02-16-Checkpoint1.erb new file mode 100644 index 00000000..63fe996d --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/2021-02-16-Checkpoint1.erb @@ -0,0 +1,785 @@ +--- +template: templates/cse4562_2021_slides.erb +title: "Checkpoint 1" +date: February 16, 2021 +textbook: "Ch. 16.1" +--- + + +
+
+

Checkpoint 1

+ + + + + + sif$ + + scalac -cp build:Catalyzer.jar -jar submission.jar {all .java files} + sif$ + + + + ls data/ + R.data      S.data     T.data + sif$ + + + head -n 2 data/R.data + 1|3|5 + 2|9|1 + sif$ + + + scala -cp submission.jar:Catalyzer.jar microbase.Microbase + + + $> + + + CREATE TABLE R(A int, B int, C int); + $> + + + SELECT A, C FROM R WHERE B < 5; + + + 1|5 + ... + $> + + +
+
+

Checkpoint 1

+
    +
  • Your code is compiled just the same as in Checkpoint 0.
  • +
  • Print a prompt '$>' at the start and after each command.
  • +
  • Read one command per line.
  • +
  • CREATE TABLE statements tell you the schema of each table.
  • +
  • Data lives in a '|'-separated file in 'data/[tablename].data'
  • +
  • Print query results '|'-separated
  • +
+
+ +
+

Setup

+ + Add this to your build.sbt (modify as appropriate for your IDE) + +

+  resolvers += "MimirDB" at "https://maven.mimirdb.info/"
+  libraryDependencies += "edu.buffalo.cse.odin" %% "catalyzer" % "3.0"
+    
+ +

Docs: https://doc.odin.cse.buffalo.edu/catalyzer/

+

Code: https://gitlab.odin.cse.buffalo.edu/okennedy/catalyzer

+ +
+
+
+
+ + + + → SQL + + +
CREATE TABLE PLAYERS(
+  ID string, 
+  FIRSTNAME string, 
+  LASTNAME string, 
+  FIRSTSEASON int, 
+  LASTSEASON int, 
+  WEIGHT int, 
+  BIRTHDATE date
+);
+
+SELECT FIRSTNAME, LASTNAME, WEIGHT, BIRTHDATE 
+FROM PLAYERS WHERE WEIGHT>200;
+
+ +
+ + + + → SQL + + +

+import org.apache.spark.sql.execution.SparkSqlParser
+import org.apache.spark.sql.catalyst.plans.logical.LogicalPlan
+
+...
+  def parseSql(sql: String): LogicalPlan = 
+    new SparkSqlParser().parsePlan(sql)
+...
+    
+
+ +
+ + + + → SQL + → ? + + +

+...
+  plan match {
+    case c:CreateTableStatement => 
+      /* do something with c.name, c.tableSchema */
+    case _ => 
+      /* Interpret plan like a query */
+  }
+...
+    
+
+ +
+ + + + → SQL + + + CREATE TABLE + + + + SELECT + + + +
CREATE TABLE PLAYERS(
+  ID string, 
+  FIRSTNAME string, 
+  LASTNAME string, 
+  FIRSTSEASON int, 
+  LASTSEASON int, 
+  WEIGHT int, 
+  BIRTHDATE date
+);
+↓ +

There is a table named "PLAYERS"... +

    +
  • ... with 7 attributes
  • +
  • ... who's attributes have the given types
  • +
  • ... with data in the file "data/PLAYERS.data"
  • +
+

+
+
+ + + + → SQL + + + CREATE TABLE + + + + + Saved Schema + + + + .data + + + + + SELECT + + + +
+ABDELAL01|Alaa|Abdelnaby|1990|1994|240|1968-06-24
+ABDULKA01|Kareem|Abdul-jabbar|1969|1988|225|1947-04-16
+ABDULMA01|Mahmo|Abdul-rauf|1990|2000|162|1969-03-09
+ABDULTA01|Tariq|Abdul-wahad|1997|2002|223|1974-11-03
+ABDURSH01|Shareef|Abdur-rahim|1996|2007|225|1976-12-11
+ABERNTO01|Tom|Abernethy|1976|1980|220|1954-05-06
+ABRAMJO01|John|Abramovic|1946|1947|195|1919-02-09
+ACKERAL01|Alex|Acker|2005|2008|185|1983-01-21
+ACKERDO01|Donald|Ackerman|1953|1953|183|1930-09-04
+ACRESMA01|Mark|Acres|1987|1992|220|1962-11-15
+ACTONCH01|Charles|Acton|1967|1967|210|1942-01-11
+...   
+
+
+ + + + → SQL + + + CREATE TABLE + + + + + Saved Schema + + + + .data + + + + + + + + SELECT + + + + + + + Results + + + + + +

Example Queries

+
    +
  1. SELECT A, B, ... FROM R (Project)
  2. +
  3. SELECT A, B, ... FROM R WHERE ... (Project+Filter)
  4. +
  5. SELECT A+B AS C, ... FROM R (Map)
  6. +
  7. SELECT A+B AS C, ... FROM R WHERE ... (Map+Filter)
  8. +
  9. SELECT SUM(A+B) AS C, ... FROM R (Aggregate)
  10. +
  11. SELECT SUM(A+B) AS C, ... FROM R WHERE ... (Aggregate+Filter)
  12. +
+
+
+ + + + → SQL + + + CREATE TABLE + + + + + Saved Schema + + + + .data + + + + + + + + SELECT + + + + + + + Results + + + + + + +

Spark's Workflow

+ +
    +
  1. Analysis
  2. +
  3. Optimization
  4. +
  5. Physical Planning
  6. +
  7. Code Generation
  8. +
  9. Execution
  10. +
+
+ +
+ + + + → SQL + + + CREATE TABLE + + + + + Saved Schema + + + + .data + + + + + SELECT + + + + + + + LogicalPlan + + + + + + + + + + + + + Analyzed Plan + + + + + + + Iterators + + + + + + + + + + + + + Results + + + + + + + + + + + +
+
+ +
+
+

Analysis

+ +
+
+
Resolution
+
+
    +
  • Replace placeholder values from parsing.
  • +
  • "Wire up" attributes between operators.
  • +
+
+
+
+
Validation
+
+
    +
  • Ensure all of the types line up.
  • +
+
+
+
+
+ +
+

Placeholders

+ +

+  case class UnresolvedRelation(
+    nameElements: Seq[String], 
+    options: CaseInsensitiveStringMap, 
+    isStreaming: Boolean
+  )
+    
+

Separation of concerns: The parser doesn't know what tables have been defined.

+
+ +
+

Try It

+

+    println(
+      parser.parsePlan("SELECT * FROM R").treeString
+    )
+  
+ ↓ +

+'Project [*]
++- 'UnresolvedRelation [R], [], false
+  
+
+ +
+

+  Project(Seq(UnresolvedStar(None)), 
+    UnresolvedRelation(Seq("R"), CaseInsensitiveStringMap.empty, false)
+  )
+    
+ +

The interesting thing here is the nameElements field
(Seq("R") above)

+ +

This is a sequence to handle multipart names
(e.g., source.tableSeq("source", "table"))

+
+ +
+

Replacing Placeholders

+

+  import org.apache.spark.sql.catalyst.analysis.UnresolvedRelation
+  ...
+  plan.transform { 
+    case UnresolvedRelation(nameElements, _, _) => ???
+  }
+    
+ +

By the way, ??? is valid Scala.
It means "I haven't implemented this yet".

+ +

So what goes there?

+
+ +
+

Suggested Approach

+

+  import org.apache.spark.sql.catalyst.plans.logical.LeafNode
+  import org.apache.spark.sql.catalyst.expressions.AttributeSequence
+
+  class Table( /* parameters */ ) extends LeafNode
+  {
+    def output: AttributeSequence = ???
+  }
+    
+
+ +
+

Expressions

+
+ +
+

org.apache.spark.sql.catalyst.analysis.UnresolvedStar

+

+

Seq(AttributeReference)

+ +

org.apache.spark.sql.catalyst.analysis.UnresolvedAttribute

+

+

AttributeReference

+
+ +
+

+  case class AttributeReference(
+      name: String,
+      dataType: DataType,
+      nullable: Boolean = true,
+      override val metadata: Metadata = Metadata.empty
+    )(
+      val exprId: ExprId = NamedExpression.newExprId,
+      val qualifier: Seq[String] = Seq.empty[String]
+    ) extends Attribute with Unevaluable { ... }
+    
+ +

Simple Constructor: AttributeReference(name, dt)()

+

ExprId Constructor: AttributeReference(name, dt)(id)

+
+ +
+

exprId

+ +

+    AttributeReference("a", IntType)().equals(
+      AttributeReference("a", IntType)())
+  
+ +

returns false

+ +

Spark uses exprId equivalence to check whether two attributes are the same.

+
+ +
+

exprId

+ +

+    val id = NamedExpression.newExprId
+    AttributeReference("a", IntType)(id).equals(
+      AttributeReference("a", IntType)(id))
+  
+ +

returns true

+
+ +
+

qualifiers

+ +

+    AttributeReference("foo", IntType)(
+      qualifier = Seq("bar")
+    )
+    
+ +

represents bar.foo

+ +

You don't need to use this, but Spark already uses it, and it helps during analysis.

+
+ +
+

Why Do Analysis?

+ +
    +
  • Makes output work automagically on all existing LogicalPlan nodes.
  • +
  • Makes dataType work automagically on all existing Expression nodes.
  • +
  • Makes it easier to support eval on all existing Expression nodes.
  • +
+
+ +
+ +
+
+

Evaluating Expressions

+ +

+  import org.apache.spark.sql.catalyst.InternalRow
+  ...
+  def eval(input: InternalRow): Any = ???  
+    
+ +

Input: An InternalRow

+

Output: The result of evaluating the expression

+ +

eval is implemented for most existing Spark Expression nodes.

+
+ +
+

+  case class AttributeReference(
+      name: String,
+      dataType: DataType,
+      nullable: Boolean = true,
+      override val metadata: Metadata = Metadata.empty
+    )(
+      val exprId: ExprId = NamedExpression.newExprId,
+      val qualifier: Seq[String] = Seq.empty[String]
+    ) extends Attribute with Unevaluable { ... }
+    
+ +

Unevaluable, huh?

+
+ +
+

+  abstract class InternalRow extends SpecializedGetters with Serializable {
+    boolean getBoolean(int ordinal);
+    byte getByte(int ordinal);
+    short getShort(int ordinal);
+    int getInt(int ordinal);
+    long getLong(int ordinal);
+    float getFloat(int ordinal);
+    double getDouble(int ordinal);
+    ...
+  }
+    
+

InternalRow is basically just an Array[Any]

+

AttributeReference doesn't know which position the attribute will be at.

+
+ +
+

Suggested Approach

+ +

Make your own RowLookup subclass of Expression

+ +

Why not use this class instead of AttributeReference in the first place?

+ +

Once we start optimizing, optimization rules (e.g., Projection Pushdown) can change an attribute's position.

+
+
+ +
+
+

Evaluating LogicalPlan nodes

+ +

Separation of concerns: Look at each LogicalPlan node individually.

+ +

Naive approach: Compute the full result.

+
+ +
+

+  def eval(plan: LogicalPlan): Seq[InternalRow] =
+    plan match { 
+      case Project(targets, child) => 
+        evalProject(targets, eval(child))
+      case Filter(condition, child) => 
+        evalFilter(targets, eval(child))
+      ...
+    }
+
+  def evalProject(targets: Seq[Expression], 
+                  table: Seq[InternalRow]): Seq[InternalRow] = ???
+  def evalFilter(condition: Expression, 
+                 table: Seq[InternalRow]): Seq[InternalRow] = ???
+  ...
+    
+
+ +
+

Basic Mindset

+ +

+  r = readCSVFile("R")
+
+  s = readCSVFile("S")
+  
+  temp1 = evalCrossProduct(r, s)
+  
+  temp2 = evalFilter({R.B=S.B AND S.C=10}, 
+                     temp1)
+  
+  result = evalProject(Seq( {R.A} ), 
+                       temp2)
+    
+
+ +
+

Select

+ +

+ $$\sigma_{A \neq 3} R$$ +

+ + + + + +
AB
12
34
56
+
+ +
+

Select

+ +

+  def evalFilter(condition: Expression, input: Seq[InternalRow]) =
+      input.filter { row =>
+        condition.eval(row).asInstanceOf[Boolean] 
+      }
+    
+

(All-At-Once)

+
+ +
+

Problem: A "table" can get very very big.

+
+ +
+

Better Idea: Iterators

+
+
hasNext()
+
Returns true if there are more rows to return
+
next()
+
Returns the next row
+
reset()
+
Resets the iterator back to the first row
+
+

All "functions" can be implemented as iterators that use constant space

+
+
+

Select

+ +

+ $$\sigma_{A \neq 3} R$$ +

+ + + + + + + + + +
AB
getNext()for row in input:
12return row;
getNext()for row in input:
34X
56return row;
getNext()for row in input:
Nonereturn None;
+
+ +
+

Hint: Scala makes working with iterators very easy

+
+ +
+

Joins

+
+ +
+

Example: Join (Naive)

+

+      for r in R:
+        for s in S:
+          emit(merge(r, s))
+    
+ +

Project challenge: Implement this as an iterator

+
+
+

'|'-separated Value File Suggestions

+
    +
  • Use Scala's scala.io.Source's lineIterator() method
  • +
  • Use String's split() to separate fields.
  • +
  • Parse everything upfront
  • +
  • Iterate over InternalRow
  • +
  • Use InternalRow.fromSeq to create rows.
  • +
  • For Codd's sake, don't store entire tables in memory
  • +
+
+
+ + + + + + + +
SQL TypeSpark typeScala Type
stringStringTypeUTF8String
intIntTypeInteger
floatFloatTypeFloat
decimalDoubleTypeDouble
dateDateTypejava.time.Date
+

it's org.apache.spark.unsafe.types.UTF8String

+
+
+ +
+

Questions?

+
+ +
+

Next time...

+ +

Algorithms for Basic RA

+
+ diff --git a/src/teaching/cse-562/2021sp/slide/2021-02-18-QueryAlgorithms.erb b/src/teaching/cse-562/2021sp/slide/2021-02-18-QueryAlgorithms.erb new file mode 100644 index 00000000..50fa456d --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/2021-02-18-QueryAlgorithms.erb @@ -0,0 +1,489 @@ +--- +template: templates/cse4562_2021_slides.erb +title: "Algorithms for Queries" +date: February 18, 2021 +textbook: "Ch. 15.1-15.5, 16.7" +--- + + + + +
+
+

Query Evaluation Styles

+ +
+
All-At-Once (Collections)
+
Bottom-up, one operator at a time.
+ +
Volcano-Style (Iterators)
+
Operators "request" one tuple at a time from children.
+ +
Push-Style (Buffers)
+
Operators continuously produce/consume tuples.
+
+
+ +
+

Analyzing Volcano Operators

+ +
    +
  • Memory Bounds
  • +
  • Disk IO Used
  • +
  • CPU Used
  • +
+ +

Databases are usually IO- or Memory-bound

+
+ +
+

Memory Bounds

+ +
    +
  • Constant
  • +
  • Scales with output
  • +
  • Scales with part of the input
  • +
  • Worse
  • +
+ +

Core Question: Do we have enough memory to use this operator?

+
+ +
+

Disk IO

+ +

IO measured in:
+

    +
  • Number of Tuples
  • +
  • Number of Data Pages (absolute size)
  • +
+

+
+

Accounting

+

Figure out the cost of each individual operator.

+

Only count the number of IOs added by each operator.

+
+
+
+ +
+

Note

+ +

We'll be discussing the "default" algorithm for each operator.

+ +

Often, there are many algorithms, some of which cover multiple operators.

+ +

This is why Spark has a PhysicalPlan

+ +

In the suggested Iterator-based approach the Iterators are your PhysicalPlan

+
+ +
+
+

Table Scan ($R$)

+
+
Memory Required?
+
Constant!
+ +
IOs added?
+
$|R|$ tuples read
+
+
+ +
+

Select ($\sigma(R)$)

+ +
+
+

Select ($\sigma(R)$)

+
+
Memory Required?
+
Constant!
+ +
IOs added?
+
None! (Can "inline" into cost of $R$)
+
+
+ +
+

Example

+ +

Example, assume $R$ is 100 tuples.

+ +

How many IOs do we need to compute $Q := R$

+

How many IOs do we need to compute $Q := \sigma(R)$

+
+ +
+

Project ($\pi(R)$)

+ +
+
+

Project ($\pi(R)$)

+
+
Memory Required?
+
Constant!
+ +
IOs added?
+
None!
+
+
+ +
+

Example

+ +

Example, assume $R$ is 100 tuples.

+ +

How many IOs do we need to compute $Q := \pi(R)$

+

How many IOs do we need to compute $Q := \pi(\sigma(R))$

+ +

Projection and Selection do not add IO.

+
+ + +
+

Union ($R \cup S$)

+ +
+
+

Union ($R \cup S$)

+
+
Memory Required?
+
Constant!
+ +
IOs added?
+
None!
+
+
+ +
+

Cross ($R \times S$)

+ +
+
+

Cross ($R \times S$)

+
+
Memory Required?
+
It depends
+ +
IOs added?
+
It depends
+
+
+
+

Cross ($R \times S$)

+

How do you "reset" $S$?

+ +
+
"Materialize" S into memory
+
No extra IOs (but $O(|S|)$ memory)
+
Rerun the entire iterator
+
$(|R|-1) \cdot \texttt{cost}(S)$ extra tuples read
+
"Materialize" S onto disk
+
$|S|$ tuples written
+
$(|R|-1) \cdot |S|$ extra tuples read
+
+

This can get very expensive

+
+ +
+

Example

+ +

Example, assume $R$ and $S$ are both 100 tuples.

+ +

How many IOs do we need to compute $Q := R \cup S$?

+
    +
  1. Getting an Iterator on $R$: 100 tuples
  2. +
  3. Getting an Iterator on $S$: 100 tuples
  4. +
  5. Getting an Iterator on $R \cup S$ using the above iterators: 0 extra tuples
  6. +
+
+ +
+

Example

+ +

Example, assume $R$ is 20 tuples and $S$ is 100 tuples.

+ +

How many IOs do we need to compute $Q := R \times S$?

+
    +
  1. Getting an Iterator on $R$: 100 tuples
  2. +
  3. Getting an Iterator on $S$: 20 tuples
  4. +
  5. Getting an Iterator on $R \times S$ using the above iterators:
  6. +
+
+ +
+
    +
  • Memory: 0 extra tuples
  • +
  • Replay: $(|R|-1) \times \texttt{cost}(S) = 19 \times 100 = 1900$ extra tuples
  • +
  • Cache: $|R| \times |S| = 20 \times 100 = 2000$ extra tuples
  • +
+ +

Best Total Cost $100 + 20 + 1900 = 2020$

+
+ +
+

Example

+ +

Example, assume $R$ is 20 tuples and $S$ is 100 tuples,
and $c$ filters out 90% of tuples.

+ +

How many IOs do we need to compute $Q := R \times \sigma_c(R \times S)$

+
    +
  1. Getting an Iterator on $\sigma_c(R \times S)$: 2020 tuples
  2. +
  3. Getting an Iterator on $R$: 20 tuples
  4. +
  5. Getting an Iterator on $R \times \sigma_c(R \times S)$ using the above iterators:
  6. +
+
+ +
+
    +
  • Memory: 0 extra tuples
  • +
  • Replay: $(|R|-1) \times \texttt{cost}(\sigma_c(R \times S)) = 19 \times 2020 = 38380$ extra tuples
  • +
  • Cache: $|R| \times |S| = 20 \times 200 = 4000$ extra tuples
  • +
+ +

Best Total Cost $2020 + 20 + 4000 = 6040$

+
+ +
+

Is there a middle ground?

+
+
+ +
+ +
+

Nested-Loop Join

+ +
+ +
+

Problem: We need to evaluate rhs iterator
once per record in lhs

+
+ +
+

Preloading Data

+ +

Better Solution: Load both lhs and rhs records in blocks.

+ +

+                    def apply_cross(lhs, rhs):
+                      result = []
+
+                      while r_block = lhs.take(100):
+                        while s_block = rhs.take(100):
+                          for r in r_block:
+                            for s in s_block: 
+                              result += [r + s]
+                        rhs.reset()
+
+                      return result
+    
+
+ +
+

Block-Nested Loop Join

+ +
+ +
+

Block-Nested Loop ($R \times S$)

+ +

(with $\mathcal B$ as the block size for $R$)

+

(and with caching $S$ to disk)

+ +
+
Memory Required?
+
$O(\mathcal B)$
+ +
IOs added?
+
$|S|$ tuples written.
+
$(\frac{|R|}{\mathcal B} - 1) \cdot |S|$ tuples read.
+
+

In-memory caching is a special case of block-nested loop with $\mathcal B = |S|$

+

Does the block size for $R$ matter?

+
+ +
+

How big should the blocks be?

+ + +
+
+ +
+
+

Cross product is expensive!
Can we do better?

+

$\sigma_c(R\times S) \equiv R\bowtie_c S$

+
+ +
+

Cross Product

+ +
+
+

Problem: Naively, any tuple matches any other

+
+ +
+

Join Conditions

+ +

Solution: First organize the data

+
+ +
+ +
+ +
+

Strategies for Implementing $R \bowtie_{R.A = S.A} S$

+ +
+
In-Memory Index Join (1-pass Hash; Hash Join)
+
Build an in-memory index on one table, scan the other.
+ +
Partition Join (2-pass Hash; External Hash Join)
+
Partition both sides so that tuples don't join across partitions.
+ +
Sort/Merge Join
+
Sort all of the data upfront, then scan over both sides.
+
+
+ +
+

Hash Functions

+ +
    +
  • A hash function is a function that maps a large data value to a small fixed-size value
      +
    • Typically is deterministic & pseudorandom
    • +
  • +
  • Used in Checksums, Hash Tables, Partitioning, Bloom Filters, Caching, Cryptography, Password Storage, …
  • +
  • Examples: MD5, SHA1, SHA2
      +
    • MD5() part of OpenSSL (on most OSX / Linux / Unix)
    • +
  • +
  • Can map h(k) to range [0,N) with h(k) % N (modulus)
  • +
+
+ +
+

Hash Functions

+ +

+ $$h(X) \mod N$$ + +

    +
  • Pseudorandom output between $[0, N)$
  • +
  • Always the same output for a given $X$
  • +
+

+
+ +
+

1-Pass Hash Join

+ +
+ +
+

1-Pass Hash Join

+
+
Limited Queries
+
Only supports join conditions of the form $R.A = S.B$
+ +
Moderate-High Memory
+
Keeps 1 full relation in memory
+ +
Low Added IO Cost
+
Only requires 1 scan over each input.
+
+
+ +
+

Alternative: Build an in-memory tree (e.g., B+Tree) instead of a hash table!

+ +
+
Limited Queries
+
Also supports $R.A \geq S.B$, $R.A > S.B$
+ +
Moderate-High Memory
+
Keeps 1 full relation in memory
+ +
Low Added IO Cost
+
Only requires 1 scan over each input.
+
+
+ +
+

2-Pass Hash Join

+ +
+ +
+

2-Pass Hash Join

+
+
Limited Queries
+
Only supports join conditions of the form $R.A = S.B$
+ +
Low Memory
+
Never need more than 1 pair of partitions in memory
+ +
High IO Cost
+
$|R| + |S|$ tuples written out
+
$|R| + |S|$ tuples read in
+
+
+ +
+

Why is it important that the hash function is pseudorandom?

+
+ +
+

What if the data is already organized (e.g., sorted) in a useful way?

+
+ + +
+ +

Sort/Merge Join

+ +
+ +
+

Sort/Merge Join

+
+
Limited Queries
+
Only supports join conditions of the form $R.A = S.B$
+ +
Low Memory
+
Only needs to keep ~2 rows in memory at a time (not counting sort).
+ +
Low Added IO Cost
+
No added IO! (not counting sort).
+
+
+
+ +
+

Next time...

+ +

Extended Relational Algebra

+
+ diff --git a/src/teaching/cse-562/2021sp/slide/2021-02-25-PhysicalLayout.erb b/src/teaching/cse-562/2021sp/slide/2021-02-25-PhysicalLayout.erb new file mode 100644 index 00000000..a5c87452 --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/2021-02-25-PhysicalLayout.erb @@ -0,0 +1,258 @@ +--- +template: templates/cse4562_2021_slides.erb +textbook: "Ch. 13.1-13.7, 15.7, 16.7" +date: February 25, 2021 +title: "Physical Layout & Memory Management" +--- +
+ +
+
+ + + + + + + +
CREATED_ATTREE_IDBLOCK_IDTHE_GEOMTREE_DBHSTUMP_DIAMCURB_LOCSTATUSHEALTHSPC_LATINSPC_COMMONSTEWARDGUARDSSIDEWALKUSER_TYPEPROBLEMSROOT_STONEROOT_GRATEROOT_OTHERTRNK_WIRETRNK_LIGHTTRNK_OTHERBRNCH_LIGHBRNCH_SHOEBRNCH_OTHEADDRESSZIPCODEZIP_CITYCB_NUMBOROCODEBORONAMECNCLDISTST_ASSEMST_SENATENTANTA_NAMEBORO_CTSTATELATITUDELONGITUDEX_SPY_SP
'08/27/2015'180683348711'POINT (-73.84421521958048 40.723091773924274)'30'OnCurb''Alive''Fair''Acer rubrum''red maple''None''None''NoDamage''TreesCount Staff''None''No''No''No''No''No''No''No''No''No''108-005 70 AVENUE''11375''Forest Hills'4064'Queens'292816'QN17''Forest Hills'4073900'New York'40.72309177-73.844215221027431.14821202756.768749
'09/03/2015'200540315986'POINT (-73.81867945834878 40.79411066708779)'210'OnCurb''Alive''Fair''Quercus palustris''pin oak''None''None''Damage''TreesCount Staff''Stones''Yes''No''No''No''No''No''No''No''No''147-074 7 AVENUE''11357''Whitestone'4074'Queens'192711'QN49''Whitestone'4097300'New York'40.79411067-73.818679461034455.70109228644.837379
'09/05/2015'204026218365'POINT (-73.93660770459083 40.717580740099116)'30'OnCurb''Alive''Good''Gleditsia triacanthos var. inermis''honeylocust''1or2''None''Damage''Volunteer''None''No''No''No''No''No''No''No''No''No''390 MORGAN AVENUE''11211''Brooklyn'3013'Brooklyn'345018'BK90''East Williamsburg'3044900'New York'40.71758074-73.93660771001822.83131200716.891267
'09/05/2015'204337217969'POINT (-73.93445615919741 40.713537494833226)'100'OnCurb''Alive''Good''Gleditsia triacanthos var. inermis''honeylocust''None''None''Damage''Volunteer''Stones''Yes''No''No''No''No''No''No''No''No''1027 GRAND STREET''11211''Brooklyn'3013'Brooklyn'345318'BK90''East Williamsburg'3044900'New York'40.71353749-73.934456161002420.35833199244.253136
'08/30/2015'189565223043'POINT (-73.97597938483258 40.66677775537875)'210'OnCurb''Alive''Good''Tilia americana''American linden''None''None''Damage''Volunteer''Stones''Yes''No''No''No''No''No''No''No''No''603 6 STREET''11215''Brooklyn'3063'Brooklyn'394421'BK37''Park Slope-Gowanus'3016500'New York'40.66677776-73.97597938990913.775046182202.425999
+
+

+
0101010010111010101010001010101001101001001010010001010101001...
+
+
+ + +
+
+

Record Layouts

+ +

How is data stored?

+
+ +
+

Problem 1: How should you encode one tuple?

+
+ +
+

Record Layout 1: Fixed

+ +
+ +
+

Record Layout 2: Delimiters

+ +
+ +
+

Record Layout 3: Headers

+ +
+ +
+

Record Formats

+
+
Fixed
+
Constant-size fields. Field $i$ at byte $\sum_{j < i} |Field_j|$
+
Delimited
+
Special character or string (e.g., ,) between fields
+
Header
+
Fixed-size header points to start of each field
+
 
+
 
+
+
+ +
+

Problem 2: How should you encode a file of tuples?

+
+ +
+

File Formats

+
+
Fixed
+
Constant-size records. Record $i$ at byte $|Record| \times i$
+
Delimited
+
Special character or string (e.g., \r\n) at record end
+
Header
+
Index in file points to start of each record
+
Paged
+
Align records to paging boundaries
+
+
+ +
+ +
+ +
+ + openclipart.org +
+
+ +
+
+
+
File
+
A collection of pages (or records)
+
Page
+
A fixed-size collection of records
+
Page size is usually dictated by hardware.
Mem Page $\approx$ 4KB   Cache Line $\approx$ 64B
+
Record
+
One or more fields (for now)
+
Field
+
A primitive value (for now)
+
+
+ +
+

Problem 2.b: How should you store records in a page?

+
+ +
+

Goal 1: Where is record $X$?

+

Goal 2: Support updates/deletions

+
+ +
+

Fixed size records

+
+ +
+ +

What about variable-size records?

+
+ +
+ +

Why store the key and records from opposite ends?

+
+ +
+ +
+ +
+

Problem 3: How should you organize pages in a file?

+

Key question: What happens when all records on a page are deleted?

+

Idea: Track empty pages.

+
+
+ +
+
+ +
+
+ +
+
+

An Alternative Layout

+
+ +
+

Row-Wise Layouts

+ +
+
+

Column-Wise Layouts

+ +
+ +
+

Each file stores 2-tuples $\left< RowID, Value\right >$.

+

Values only for one attribute.

+
+ +
+

Benefits

+
    +
  • Only one attribute to sort per file.
  • +
  • No IO cost for unused attributes ($\pi$-pushdown!)
  • +
+

Drawbacks

+
    +
  • Result attributes must be stitched back together ($\bowtie$)
  • +
+

Great for wide, rarely-updated tables where only a few attributes are used per-query

+
+ +
+

Example Column Stores

+ +

+ Cassandra logo + Vertica pos blk rgb.svg + MonetDB logo +

+ By Apache Software Foundation - https://svn.apache.org/repos/asf/cassandra/logo/cassandra.svg, Apache License 2.0, Link
+ By Ariolica - Own work, CC BY-SA 4.0, Link
+ By Source (WP:NFCC#4), Fair use, Link
+
+
+ +
+
+

Buffer Manager

+

Abstract the messy details of File-IO

+
+ +
+ + openclipart.org +
+ +
+
+
Frame
+
A "slot" managed by the buffer manager that holds one page.
+ +
Pinned Page
+
A page currently in use by part of the database. Must stay in its current frame until unpinned. (A page may be pinned multiple times)
+ +
Dirty Page
+
A page that has been modified since it was last read in.
+
+
+ +
+

When a page is requested

+ +

Is the page in the buffer pool? +

    +
  • Yes? Pin the page (again) and return the address.
  • +
  • No?
      +
    • Pick a frame for replacement with your favorite algorithm (e.g., LRU)...
    • +
    • If the frame is dirty, write it to disk
    • +
    • Read requested page into chosen frame
    • +
    • Pin the page and return its address
    • +
  • +
+
+ +
+

Does this all sound familiar?

+

Isn't this just Virtual Memory?

+
+ +
+

Yes!

+

(Many databases use memory-mapped files as a buffer manager)

+
+ +
+

Why Re-implement VMem?

+
+ +

Databases can predict the future!

+
+

SELECT * FROM R WHERE A > 500 AND A < 2000   →    Pages 10-12

+
+ +
+

How do we decide which pages hold the query results?

+

Answers next class!

+
+ +
diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-16-RA-Tree.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-16-RA-Tree.svg new file mode 100644 index 00000000..910a0882 --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-16-RA-Tree.svg @@ -0,0 +1,150 @@ + + + + + + + + + + image/svg+xml + + + + + + + σS.C=10 + πR.A + R.B=S.B + + R + S + + + + + + + + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Flow-Cross.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Flow-Cross.svg new file mode 100644 index 00000000..df8d8209 --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Flow-Cross.svg @@ -0,0 +1,423 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + start + + Have Old 'r'? + + no + Read LHS Row 'r'and Reset RHS + + + + Read RHS Row 's' + not empty + + + + not empty + Return <r s> + + + + yes + + + + Done + + empty + + + + empty + + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Flow-Project.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Flow-Project.svg new file mode 100644 index 00000000..dbe2612e --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Flow-Project.svg @@ -0,0 +1,252 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + Read One Row + + not empty + Compute New Row + + + + Return Row + + + + Done! + + empty + + start + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Flow-Select.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Flow-Select.svg new file mode 100644 index 00000000..43e07a21 --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Flow-Select.svg @@ -0,0 +1,285 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + Read One Row + + not empty + Check Condition + + + + satisfied + Return Row + + + + + unsatisfied + + + Done! + + empty + + start + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Flow-Union.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Flow-Union.svg new file mode 100644 index 00000000..26435b5b --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Flow-Union.svg @@ -0,0 +1,372 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + start + Read LHS Row + + not empty + Return Row + + + + Read RHS Row + + empty + + + not empty + + + + Done! + + empty + + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-1PassHash.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-1PassHash.svg new file mode 100644 index 00000000..8fa80c73 --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-1PassHash.svg @@ -0,0 +1,430 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + h(A) = 0 + h(A) = 1 + + + + + 1 + + + + 1 + + + + 3 + + + + 3 + + + + 2 + + + + 2 + + + + 1 + + + + 1 + + + + + + + 3 + + + + + 2 + + + + + 1 + + + + + 3 + + + + + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-2PassHash.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-2PassHash.svg new file mode 100644 index 00000000..d254f98f --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-2PassHash.svg @@ -0,0 +1,608 @@ + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + h(A) = 0 + h(A) = 1 + + + + + h(A) = 0 + h(A) = 1 + + + + + 1 + + + + 1 + + + + 3 + + + + 3 + + + + 2 + + + + 2 + + + + 1 + + + + 1 + + + + + + + 3 + + + + 3 + + + + 2 + + + + 2 + + + + 1 + + + + 1 + + + + 3 + + + + 3 + + + + + + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-BNLJ.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-BNLJ.svg new file mode 100644 index 00000000..3f28615b --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-BNLJ.svg @@ -0,0 +1,274 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-Grid.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-Grid.svg new file mode 100644 index 00000000..16848069 --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-Grid.svg @@ -0,0 +1,368 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + 1 + 3 + 2 + 1 + + + + + + + + + 3 + 2 + 3 + 1 + + + + + + + + + 3 + 2 + 3 + 1 + 1 + + + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-NLJ.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-NLJ.svg new file mode 100644 index 00000000..777c5202 --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-NLJ.svg @@ -0,0 +1,263 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ... + ... + ... + + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-OrderGrid.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-OrderGrid.svg new file mode 100644 index 00000000..8c7c0c45 --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-OrderGrid.svg @@ -0,0 +1,353 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + 3 + 3 + + + + + + 2 + + + + + + + + 1 + 1 + + + + + + + 1 + 1 + 2 + 3 + + + + + + + 1 + 2 + 3 + 3 + + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-SortMerge.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-SortMerge.svg new file mode 100644 index 00000000..39f1c5e9 --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-18-Join-SortMerge.svg @@ -0,0 +1,303 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + 1 + + + + 1 + + + + + + + 1 + + + + 2 + + + + + + 2 + + + + + + 3 + + + + 3 + + + + + + 3 + + + + + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Buffer-Manager.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Buffer-Manager.svg new file mode 100644 index 00000000..8215b798 --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Buffer-Manager.svg @@ -0,0 +1,577 @@ + + + +image/svg+xml +Higher levels of the DB +Disk Page +Free Frame +Pages allocated to frames as per + +page replacement policy + \ No newline at end of file diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Heap-File-1.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Heap-File-1.svg new file mode 100644 index 00000000..53f2874f --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Heap-File-1.svg @@ -0,0 +1,390 @@ + + + +image/svg+xml +ø +ø +Pages with + +Data +Empty +Pages +Directory +Page +Each page contains 2 pointers plus data + \ No newline at end of file diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Heap-File-2.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Heap-File-2.svg new file mode 100644 index 00000000..0d791aeb --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Heap-File-2.svg @@ -0,0 +1,269 @@ + + + +image/svg+xml +Directory +Pages +Directories are a collection of pages (e.g., a linked list) + +Directories point to all data pages + +(entries can include # of free pages) + +Data + +Pages + \ No newline at end of file diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Layout-ColumnWise.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Layout-ColumnWise.svg new file mode 100644 index 00000000..14aa294f --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Layout-ColumnWise.svg @@ -0,0 +1,473 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + A1 + + + + B1 + + + + C1 + + + + D1 + + + + A2 + + + + B2 + + + + C2 + + + + D2 + + + + A3 + + + + B3 + + + + C3 + + + + D3 + + + + A4 + + + + B4 + + + + C4 + + + + D4 + + File 1 + File 2 + File 3 + File 4 + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Layout-RowWise.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Layout-RowWise.svg new file mode 100644 index 00000000..667af648 --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Layout-RowWise.svg @@ -0,0 +1,416 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + A1 + + + + B1 + + + + C1 + + + + D1 + + + + A2 + + + + B2 + + + + C2 + + + + D2 + + + + A3 + + + + B3 + + + + C3 + + + + D3 + + + + A4 + + + + B4 + + + + C4 + + + + D4 + + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Page-Layouts-1.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Page-Layouts-1.svg new file mode 100644 index 00000000..e44c25ec --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Page-Layouts-1.svg @@ -0,0 +1,729 @@ + + + +image/svg+xml +6 +1 +2 +3 +4 +5 +6 +7 +8 + +N +1 +2 +3 +4 +5 +6 +7 +8 + +N +N +01101011 + +Packed +Unpacked (Bitmap) +Number of Records +Bit array of occupied slots(and size of page) +Data Records +Free Space + \ No newline at end of file diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Page-Layouts-2.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Page-Layouts-2.svg new file mode 100644 index 00000000..7f1a4b42 --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-Page-Layouts-2.svg @@ -0,0 +1,385 @@ + + + +image/svg+xml1 2 3 4 … +R1 +R2 +R3 +Variable Size Records +Pointer to start of free space + \ No newline at end of file diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-mem_bulk_loading.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-mem_bulk_loading.svg new file mode 100644 index 00000000..8a8482ee --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-mem_bulk_loading.svg @@ -0,0 +1,9149 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Page + + + + Page + + + + Page + + + + Page + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Page + + + + Page + + + + Page + + + + Page + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Line + + + + Line + + + + Line + + + + Line + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Record + + + BAD! + + + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-mem_hierarchy.png b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-mem_hierarchy.png new file mode 100644 index 0000000000000000000000000000000000000000..6f8534561dc942bcbfdd73e3f41b5f831816fb76 GIT binary patch literal 234215 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'&8?k#_?M# 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 z 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 literal 0 HcmV?d00001 diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-record-fixed.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-record-fixed.svg new file mode 100644 index 00000000..2333ecf7 --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-record-fixed.svg @@ -0,0 +1,209 @@ + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + A + B + C + D + + Base Address (X) + + + + + + Address of C (X+|A|+|B|) + + + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-record-header.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-record-header.svg new file mode 100644 index 00000000..6db27914 --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-record-header.svg @@ -0,0 +1,372 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + A + + + + B + + + + C + + + + D + + + + |A| + + + + |B| + + + + |C| + + + + |H| + + Record header points to each field + + + diff --git a/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-record-separator.svg b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-record-separator.svg new file mode 100644 index 00000000..00811f9b --- /dev/null +++ b/src/teaching/cse-562/2021sp/slide/graphics/2021-02-25-record-separator.svg @@ -0,0 +1,288 @@ + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + A + + + + B + + + + C + + + + D + + + + ',' + + + + ',' + + + + ',' + + Special Separator Characters Delimit Fields + + + + +