A B C D E F G H I J K L M N O P Q R S T U V W _ 

A

abort() - Method in class simpledb.Transaction
Finish the transaction
ABORT_RECORD - Static variable in class simpledb.LogFile
 
AbstractDbFileIterator - Class in simpledb
Helper for implementing DbFileIterators.
AbstractDbFileIterator() - Constructor for class simpledb.AbstractDbFileIterator
 
addAggregate(String, String, String) - Method in class simpledb.LogicalPlan
Add an aggregate over the field with the specified grouping to the query.
addFilter(String, Predicate.Op, String) - Method in class simpledb.LogicalPlan
Add a new filter to the logical plan
addJoin(String, String, Predicate.Op) - Method in class simpledb.LogicalPlan
Add a join between two fields of two different tables.
addJoin(String, DbIterator, Predicate.Op) - Method in class simpledb.LogicalPlan
Add a join between a field and a subquery.
addOrderBy(String, boolean) - Method in class simpledb.LogicalPlan
Add an ORDER BY expression in the specified order on the specified field.
addPlan(Set<LogicalJoinNode>, double, int, Vector<LogicalJoinNode>) - Method in class simpledb.PlanCache
Add a new cost, cardinality and ordering for a particular join set.
addProjectField(String, String) - Method in class simpledb.LogicalPlan
Add a specified field/aggregate combination to the select list of the query.
addScan(int, String) - Method in class simpledb.LogicalPlan
Add a scan to the plan.
addTable(DbFile, String, String) - Method in class simpledb.Catalog
Add a new table to the catalog.
addTable(DbFile, String) - Method in class simpledb.Catalog
 
addTable(DbFile) - Method in class simpledb.Catalog
Add a new table to the catalog.
addValue(int) - Method in class simpledb.IntHistogram
Add a value to the set of values that you are keeping a histogram of.
addValue(String) - Method in class simpledb.StringHistogram
Add a new value to thte histogram
aggField - Variable in class simpledb.LogicalPlan
 
aggOp - Variable in class simpledb.LogicalPlan
 
aggOp - Variable in class simpledb.LogicalSelectListNode
The aggregation operation over the field (if any)
Aggregate - Class in simpledb
The Aggregation operator that computes an aggregate (e.g., sum, avg, max, min).
Aggregate(DbIterator, int, int, Aggregator.Op) - Constructor for class simpledb.Aggregate
Constructor.
aggregateField() - Method in class simpledb.Aggregate
 
aggregateFieldName() - Method in class simpledb.Aggregate
 
aggregateOp() - Method in class simpledb.Aggregate
 
Aggregator - Interface in simpledb
The common interface for any class that can compute an aggregate over a list of Tuples.
Aggregator.Op - Enum in simpledb
SUM_COUNT and SC_AVG will only be used in lab6, you are not required to implement them until then.
Aggregator.Op() - Constructor for enum simpledb.Aggregator.Op
 
alias - Variable in class simpledb.BPlusTreeScan
 
alias - Variable in class simpledb.LogicalScanNode
The name (alias) of the table as it is used in the query
asc - Variable in class simpledb.OrderBy
 
asc - Variable in class simpledb.TupleComparator
 
avgSelectivity() - Method in class simpledb.IntHistogram
 
avgSelectivity() - Method in class simpledb.StringHistogram
 
avgSelectivity(int, Predicate.Op) - Method in class simpledb.TableStats
The average selectivity of the field under op.

B

BEGIN_RECORD - Static variable in class simpledb.LogFile
 
bestCardinalities - Variable in class simpledb.PlanCache
 
bestCosts - Variable in class simpledb.PlanCache
 
bestOrders - Variable in class simpledb.PlanCache
 
bf - Variable in class simpledb.BPlusTreeUtility.BPlusTreeDeleter
 
bf - Variable in class simpledb.BPlusTreeUtility.BPlusTreeInserter
 
bf - Variable in class simpledb.BPlusTreeUtility.BPlusTreeReader
 
bf - Variable in class simpledb.BPlusTreeUtility.BPlusTreeWriter
 
BPlusTreeEntry - Class in simpledb
Each instance of BPlusTreeEntry stores one key and two child page ids.
BPlusTreeEntry(Field, BPlusTreePageId, BPlusTreePageId) - Constructor for class simpledb.BPlusTreeEntry
Constructor to create a new BPlusTreeEntry
BPlusTreeFile - Class in simpledb
BPlusTreeFile is an implementation of a DbFile that stores a B+ tree.
BPlusTreeFile(File, int, TupleDesc) - Constructor for class simpledb.BPlusTreeFile
Constructs a B+ tree file backed by the specified file.
BPlusTreeFileEncoder - Class in simpledb
BPlusTreeFileEncoder reads a comma delimited text file and converts it to pages of binary data in the appropriate format for simpledb B+ tree pages.
BPlusTreeFileEncoder() - Constructor for class simpledb.BPlusTreeFileEncoder
 
BPlusTreeFileEncoder.EntryComparator - Class in simpledb
Comparator to sort BPlusTreeEntry objects by key
BPlusTreeFileEncoder.EntryComparator() - Constructor for class simpledb.BPlusTreeFileEncoder.EntryComparator
 
BPlusTreeFileEncoder.TupleComparator - Class in simpledb
comparator to sort Tuples by key field
BPlusTreeFileEncoder.TupleComparator(int) - Constructor for class simpledb.BPlusTreeFileEncoder.TupleComparator
Construct a TupleComparator
BPlusTreeFileIterator - Class in simpledb
Helper class that implements the Java Iterator for tuples on a BPlusTreeFile
BPlusTreeFileIterator(BPlusTreeFile, TransactionId) - Constructor for class simpledb.BPlusTreeFileIterator
Constructor for this iterator
BPlusTreeHeaderPage - Class in simpledb
Each instance of BPlusTreeHeaderPage stores data for one page of a BPlusTreeFile and implements the Page interface that is used by BufferPool.
BPlusTreeHeaderPage(BPlusTreePageId, byte[]) - Constructor for class simpledb.BPlusTreeHeaderPage
Create a BPlusTreeHeaderPage from a set of bytes of data read from disk.
BPlusTreeInternalPage - Class in simpledb
Each instance of BPlusTreeInternalPage stores data for one page of a BPlusTreeFile and implements the Page interface that is used by BufferPool.
BPlusTreeInternalPage(BPlusTreePageId, byte[], int) - Constructor for class simpledb.BPlusTreeInternalPage
Create a BPlusTreeInternalPage from a set of bytes of data read from disk.
BPlusTreeInternalPageIterator - Class in simpledb
Helper class that implements the Java Iterator for entries on a BPlusTreeInternalPage.
BPlusTreeInternalPageIterator(BPlusTreeInternalPage) - Constructor for class simpledb.BPlusTreeInternalPageIterator
 
BPlusTreeLeafPage - Class in simpledb
Each instance of BPlusTreeLeafPage stores data for one page of a BPlusTreeFile and implements the Page interface that is used by BufferPool.
BPlusTreeLeafPage(BPlusTreePageId, byte[], int) - Constructor for class simpledb.BPlusTreeLeafPage
Create a BPlusTreeLeafPage from a set of bytes of data read from disk.
BPlusTreeLeafPageIterator - Class in simpledb
Helper class that implements the Java Iterator for tuples on a BPlusTreeLeafPage.
BPlusTreeLeafPageIterator(BPlusTreeLeafPage) - Constructor for class simpledb.BPlusTreeLeafPageIterator
 
BPlusTreePageId - Class in simpledb
Unique identifier for BPlusTreeInternalPage, BPlusTreeLeafPage, BPlusTreeHeaderPage and BPlusTreeRootPtrPage objects.
BPlusTreePageId(int, int, int) - Constructor for class simpledb.BPlusTreePageId
Constructor.
BPlusTreeRootPtrPage - Class in simpledb
BPlusTreeRootPtrPage stores the pointer to the root node used in the B+ tree and implements Page Interface that is used by BufferPool
BPlusTreeRootPtrPage(BPlusTreePageId, byte[]) - Constructor for class simpledb.BPlusTreeRootPtrPage
Constructor.
BPlusTreeScan - Class in simpledb
BPlusTreeScan is an operator which reads tuples in sorted order according to a predicate
BPlusTreeScan(TransactionId, int, String, IndexPredicate) - Constructor for class simpledb.BPlusTreeScan
Creates a B+ tree scan over the specified table as a part of the specified transaction.
BPlusTreeScan(TransactionId, int, IndexPredicate) - Constructor for class simpledb.BPlusTreeScan
 
BPlusTreeSearchIterator - Class in simpledb
Helper class that implements the DbFileIterator for search tuples on a B+ Tree File
BPlusTreeSearchIterator(BPlusTreeFile, TransactionId, IndexPredicate) - Constructor for class simpledb.BPlusTreeSearchIterator
Constructor for this iterator
BPlusTreeUtility - Class in simpledb
Helper methods used for testing and implementing random features.
BPlusTreeUtility() - Constructor for class simpledb.BPlusTreeUtility
 
BPlusTreeUtility.BPlusTreeDeleter - Class in simpledb
Helper class that attempts to delete tuple(s) in a new thread
BPlusTreeUtility.BPlusTreeDeleter(BPlusTreeFile, BlockingQueue<ArrayList<Integer>>) - Constructor for class simpledb.BPlusTreeUtility.BPlusTreeDeleter
 
BPlusTreeUtility.BPlusTreeInserter - Class in simpledb
Helper class that attempts to insert a tuple in a new thread
BPlusTreeUtility.BPlusTreeInserter(BPlusTreeFile, int[], BlockingQueue<ArrayList<Integer>>) - Constructor for class simpledb.BPlusTreeUtility.BPlusTreeInserter
 
BPlusTreeUtility.BPlusTreeReader - Class in simpledb
Helper class that searches for tuple(s) in a new thread
BPlusTreeUtility.BPlusTreeReader(TransactionId, BPlusTreeFile, Field, int) - Constructor for class simpledb.BPlusTreeUtility.BPlusTreeReader
 
BPlusTreeUtility.BPlusTreeWriter - Class in simpledb
Helper class that attempts to insert a tuple in a new thread
BPlusTreeUtility.BPlusTreeWriter(TransactionId, BPlusTreeFile, int, int) - Constructor for class simpledb.BPlusTreeUtility.BPlusTreeWriter
 
BufferPool - Class in simpledb
BufferPool manages the reading and writing of pages into memory from disk.
BufferPool(int) - Constructor for class simpledb.BufferPool
Creates a BufferPool that caches up to numPages pages.

C

c - Variable in class simpledb.LogicalFilterNode
 
card - Variable in class simpledb.CostCard
The cardinality of the optimal subplan
Catalog - Class in simpledb
The Catalog keeps track of all available tables in the database and their associated schemas.
Catalog() - Constructor for class simpledb.Catalog
Constructor.
CHECKPOINT_RECORD - Static variable in class simpledb.LogFile
 
child - Variable in class simpledb.OrderBy
 
child - Variable in class simpledb.Project
 
childCategory - Variable in class simpledb.BPlusTreeInternalPage
 
children - Variable in class simpledb.BPlusTreeInternalPage
 
childTups - Variable in class simpledb.OrderBy
 
cleanUpEntries(ArrayList<ArrayList<BPlusTreeEntry>>, BPlusTreeFile, int, int, Type, int, int) - Static method in class simpledb.BPlusTreeFileEncoder
Write out any remaining entries and update the parent pointers.
clear() - Method in class simpledb.Catalog
Delete all tables from the catalog
close() - Method in class simpledb.AbstractDbFileIterator
If subclasses override this, they should call super.close().
close() - Method in class simpledb.Aggregate
 
close() - Method in class simpledb.BPlusTreeFileIterator
close the iterator
close() - Method in class simpledb.BPlusTreeScan
 
close() - Method in class simpledb.BPlusTreeSearchIterator
close the iterator
close() - Method in interface simpledb.DbFileIterator
Closes the iterator.
close() - Method in interface simpledb.DbIterator
Closes the iterator.
close() - Method in class simpledb.Delete
 
close() - Method in class simpledb.Filter
 
close() - Method in class simpledb.Insert
 
close() - Method in class simpledb.Join
 
close() - Method in class simpledb.Operator
Closes this iterator.
close() - Method in class simpledb.OrderBy
 
close() - Method in class simpledb.Project
 
close() - Method in class simpledb.Query
Close the iterator
close() - Method in class simpledb.SeqScan
 
close() - Method in class simpledb.TupleArrayIterator
Closes the iterator.
close() - Method in class simpledb.TupleIterator
 
commit() - Method in class simpledb.Transaction
Finish the transaction
COMMIT_RECORD - Static variable in class simpledb.LogFile
 
compare(BPlusTreeEntry, BPlusTreeEntry) - Method in class simpledb.BPlusTreeFileEncoder.EntryComparator
Compare two entries based on their key field
compare(Tuple, Tuple) - Method in class simpledb.BPlusTreeFileEncoder.TupleComparator
Compare two tuples based on their key field
compare(Predicate.Op, Field) - Method in interface simpledb.Field
Compare the value of this field object to the passed in value.
compare(Predicate.Op, Field) - Method in class simpledb.IntField
Compare the specified field to the value of this Field.
compare(Predicate.Op, Field) - Method in class simpledb.StringField
Compare the specified field to the value of this Field.
compare(Tuple, Tuple) - Method in class simpledb.TupleComparator
 
computeCostAndCardOfSubplan(HashMap<String, TableStats>, HashMap<String, Double>, LogicalJoinNode, Set<LogicalJoinNode>, double, PlanCache) - Method in class simpledb.JoinOptimizer
This is a helper method that computes the cost and cardinality of joining joinToRemove to joinSet (joinSet should contain joinToRemove), given that all of the subsets of size joinSet.size() - 1 have already been computed and stored in PlanCache pc.
computeStatistics() - Static method in class simpledb.TableStats
 
convert(ArrayList<ArrayList<Integer>>, File, File, int, int) - Static method in class simpledb.BPlusTreeFileEncoder
Encode the file using the BPlusTreeFile's Insert method.
convert(File, File, File, int, int) - Static method in class simpledb.BPlusTreeFileEncoder
Encode the file using the BPlusTreeFile's Insert method.
convert(ArrayList<ArrayList<Integer>>, File, File, int, int, Type[], char, int) - Static method in class simpledb.BPlusTreeFileEncoder
Faster method to encode the B+ tree file
convert(File, File, File, int, int, Type[], char, int) - Static method in class simpledb.BPlusTreeFileEncoder
Faster method to encode the B+ tree file
convert(ArrayList<ArrayList<Integer>>, File, int, int) - Static method in class simpledb.HeapFileEncoder
Convert the specified tuple list (with only integer fields) into a binary page file.
convert(File, File, int, int) - Static method in class simpledb.HeapFileEncoder
 
convert(File, File, int, int, Type[]) - Static method in class simpledb.HeapFileEncoder
 
convert(File, File, int, int, Type[], char) - Static method in class simpledb.HeapFileEncoder
Convert the specified input text file into a binary page file.
convertToInternalPage(ArrayList<BPlusTreeEntry>, int, Type, int) - Static method in class simpledb.BPlusTreeFileEncoder
Convert a set of entries to a byte array in the format of a BPlusTreeInternalPage
convertToLeafPage(ArrayList<Tuple>, int, int, Type[], int) - Static method in class simpledb.BPlusTreeFileEncoder
Convert a set of tuples to a byte array in the format of a BPlusTreeLeafPage
convertToRootPtrPage(int, int, int) - Static method in class simpledb.BPlusTreeFileEncoder
Create a byte array in the format of a BPlusTreeRootPtrPage
cost - Variable in class simpledb.CostCard
The cost of the optimal subplan
CostCard - Class in simpledb
CostCard() - Constructor for class simpledb.CostCard
 
count - Variable in class simpledb.BPlusTreeUtility.BPlusTreeReader
 
count - Variable in class simpledb.BPlusTreeUtility.BPlusTreeWriter
 
counter - Static variable in class simpledb.TransactionId
 
createBPlusTreeFile(int, int, Map<Integer, Integer>, ArrayList<ArrayList<Integer>>, int) - Static method in class simpledb.BPlusTreeUtility
creates a *non* random B+ tree file for testing
createEmptyBPlusTreeFile(String, int, int) - Static method in class simpledb.BPlusTreeUtility
A utility method to create a new BPlusTreeFile with no data, assuming the path does not already exist.
createEmptyHeapFile(String, int) - Static method in class simpledb.Utility
A utility method to create a new HeapFile with a single empty page, assuming the path does not already exist.
createEmptyPageData() - Static method in class simpledb.BPlusTreeHeaderPage
Static method to generate a byte array corresponding to an empty BPlusTreeHeaderPage.
createEmptyPageData() - Static method in class simpledb.BPlusTreeInternalPage
Static method to generate a byte array corresponding to an empty BPlusTreeInternalPage.
createEmptyPageData() - Static method in class simpledb.BPlusTreeLeafPage
Static method to generate a byte array corresponding to an empty BPlusTreeLeafPage.
createEmptyPageData() - Static method in class simpledb.BPlusTreeRootPtrPage
Static method to generate a byte array corresponding to an empty BPlusTreeRootPtrPage.
createEmptyPageData() - Static method in class simpledb.HeapPage
Static method to generate a byte array corresponding to an empty HeapPage.
createRandomBPlusTreeFile(int, int, Map<Integer, Integer>, ArrayList<ArrayList<Integer>>, int) - Static method in class simpledb.BPlusTreeUtility
 
createRandomBPlusTreeFile(int, int, int, Map<Integer, Integer>, ArrayList<ArrayList<Integer>>, int) - Static method in class simpledb.BPlusTreeUtility
Generates a random B+ tree file for testing
curEntry - Variable in class simpledb.BPlusTreeInternalPageIterator
 
curp - Variable in class simpledb.BPlusTreeFileIterator
 
curp - Variable in class simpledb.BPlusTreeSearchIterator
 
currentOffset - Variable in class simpledb.LogFile
 
curtrans - Variable in class simpledb.Parser
 
curTuple - Variable in class simpledb.BPlusTreeLeafPageIterator
 

D

Database - Class in simpledb
Database is a class that initializes several static variables used by the database system (the catalog, the buffer pool, and the log files, in particular.)
Database() - Constructor for class simpledb.Database
 
DbException - Exception in simpledb
Generic database exception class
DbException(String) - Constructor for exception simpledb.DbException
 
DbFile - Interface in simpledb
The interface for database files on disk.
DbFileIterator - Interface in simpledb
DbFileIterator is the iterator interface that all SimpleDB Dbfile should implement.
DbIterator - Interface in simpledb
DbIterator is the iterator interface that all SimpleDB operators should implement.
Debug - Class in simpledb
Debug is a utility class that wraps println statements and allows more or less command line output to be turned on.
Debug() - Constructor for class simpledb.Debug
 
DEBUG_LEVEL - Static variable in class simpledb.Debug
 
DEFAULT_LEVEL - Static variable in class simpledb.Debug
 
DEFAULT_PAGES - Static variable in class simpledb.BufferPool
Default number of pages passed to the constructor.
Delete - Class in simpledb
The delete operator.
Delete(TransactionId, DbIterator) - Constructor for class simpledb.Delete
Constructor specifying the transaction that this delete belongs to as well as the child to read from.
deleteEntry(BPlusTreeEntry, boolean) - Method in class simpledb.BPlusTreeInternalPage
Delete the specified entry (key + 1 child pointer) from the page; the entry should be updated to reflect that it is no longer stored on any page.
deleteEntry(BPlusTreeEntry) - Method in class simpledb.BPlusTreeInternalPage
Delete the specified entry (key + right child pointer) from the page; the entry should be updated to reflect that it is no longer stored on any page.
deleteTuple(TransactionId, Tuple) - Method in class simpledb.BPlusTreeFile
Delete a tuple from this BPlusTreeFile.
deleteTuple(Tuple) - Method in class simpledb.BPlusTreeLeafPage
Delete the specified tuple from the page; the tuple should be updated to reflect that it is no longer stored on any page.
deleteTuple(TransactionId, Tuple) - Method in class simpledb.BufferPool
Remove the specified tuple from the buffer pool.
deleteTuple(TransactionId, Tuple) - Method in interface simpledb.DbFile
Removes the specified tuple from the file on behalf of the specified transaction.
deleteTuple(TransactionId, Tuple) - Method in class simpledb.HeapFile
 
deleteTuple(Tuple) - Method in class simpledb.HeapPage
Delete the specified tuple from the page; the tuple should be updated to reflect that it is no longer stored on any page.
dirtier - Variable in class simpledb.BPlusTreeHeaderPage
 
dirtier - Variable in class simpledb.BPlusTreeInternalPage
 
dirtier - Variable in class simpledb.BPlusTreeLeafPage
 
dirtier - Variable in class simpledb.BPlusTreeRootPtrPage
 
dirty - Variable in class simpledb.BPlusTreeHeaderPage
 
dirty - Variable in class simpledb.BPlusTreeInternalPage
 
dirty - Variable in class simpledb.BPlusTreeLeafPage
 
dirty - Variable in class simpledb.BPlusTreeRootPtrPage
 
dis - Variable in class simpledb.BPlusTreeRootPtrPage
 
disambiguateName(String) - Method in class simpledb.LogicalPlan
Given a name of a field, try to figure out what table it belongs to by looking through all of the tables added via LogicalPlan.addScan(int, java.lang.String).
discardPage(PageId) - Method in class simpledb.BufferPool
Remove the specific page id from the buffer pool.
doesJoin(Vector<LogicalJoinNode>, String) - Method in class simpledb.JoinOptimizer
Return true if the specified table is in the list of joins, false otherwise

E

elock - Variable in class simpledb.BPlusTreeUtility.BPlusTreeDeleter
 
elock - Variable in class simpledb.BPlusTreeUtility.BPlusTreeInserter
 
elock - Variable in class simpledb.BPlusTreeUtility.BPlusTreeReader
 
elock - Variable in class simpledb.BPlusTreeUtility.BPlusTreeWriter
 
enumerateSubsets(Vector<T>, int) - Method in class simpledb.JoinOptimizer
Helper method to enumerate all of the subsets of a given size of a specified vector.
equals(Object) - Method in class simpledb.BPlusTreePageId
Compares one PageId to another.
equals(Object) - Method in interface simpledb.Field
 
equals(Object) - Method in class simpledb.HeapPageId
Compares one PageId to another.
equals(IndexPredicate) - Method in class simpledb.IndexPredicate
Return true if the fieldvalue in the supplied predicate is satisfied by this predicate's fieldvalue and operator.
equals(Object) - Method in class simpledb.IntField
 
equals(Object) - Method in class simpledb.LogicalJoinNode
 
equals(Object) - Method in class simpledb.LogicalSubplanJoinNode
 
equals(Object) - Method in interface simpledb.PageId
Compares one PageId to another.
equals(Object) - Method in class simpledb.RecordId
Two RecordId objects are considered equal if they represent the same tuple.
equals(Object) - Method in class simpledb.StringField
 
equals(Object) - Method in class simpledb.TransactionId
 
equals(Object) - Method in class simpledb.TupleDesc
Compares the specified object with this TupleDesc for equality.
error - Variable in class simpledb.BPlusTreeUtility.BPlusTreeDeleter
 
error - Variable in class simpledb.BPlusTreeUtility.BPlusTreeInserter
 
error - Variable in class simpledb.BPlusTreeUtility.BPlusTreeReader
 
error - Variable in class simpledb.BPlusTreeUtility.BPlusTreeWriter
 
estimatedCardinality - Variable in class simpledb.Operator
 
estimateJoinCardinality(LogicalJoinNode, int, int, boolean, boolean, Map<String, TableStats>) - Method in class simpledb.JoinOptimizer
Estimate the cardinality of a join.
estimateJoinCost(LogicalJoinNode, int, int, double, double) - Method in class simpledb.JoinOptimizer
Estimate the cost of a join.
estimateScanCost() - Method in class simpledb.TableStats
Estimates the cost of sequentially scanning the file, given that the cost to read a page is costPerPageIO.
estimateSelectivity(Predicate.Op, int) - Method in class simpledb.IntHistogram
Estimate the selectivity of a particular predicate and operand on this table.
estimateSelectivity(Predicate.Op, String) - Method in class simpledb.StringHistogram
Estimate the selectivity (as a double between 0 and 1) of the specified predicate over the specified string
estimateSelectivity(int, Predicate.Op, Field) - Method in class simpledb.TableStats
Estimate the selectivity of predicate field op constant on the table.
estimateTableCardinality(double) - Method in class simpledb.TableStats
This method returns the number of tuples in the relation, given that a predicate with selectivity selectivityFactor is applied.
estimateTableJoinCardinality(Predicate.Op, String, String, String, String, int, int, boolean, boolean, Map<String, TableStats>, Map<String, Integer>) - Static method in class simpledb.JoinOptimizer
Estimate the join cardinality of two tables.
evictPage() - Method in class simpledb.BufferPool
Discards a page from the buffer pool.
execute() - Method in class simpledb.Query
 
explain - Static variable in class simpledb.Parser
 

F

f - Variable in class simpledb.BPlusTreeFile
 
f - Variable in class simpledb.BPlusTreeFileIterator
 
f - Variable in class simpledb.BPlusTreeSearchIterator
 
f - Variable in class simpledb.BPlusTreeUtility.BPlusTreeReader
 
f1PureName - Variable in class simpledb.LogicalJoinNode
The name of the field in t1 to join with.
f1QuantifiedName - Variable in class simpledb.LogicalJoinNode
 
f2PureName - Variable in class simpledb.LogicalJoinNode
The name of the field in t2 to join with.
f2QuantifiedName - Variable in class simpledb.LogicalJoinNode
 
fetchNext() - Method in class simpledb.Aggregate
Returns the next tuple.
fetchNext() - Method in class simpledb.Delete
Deletes tuples as they are read from the child operator.
fetchNext() - Method in class simpledb.Filter
AbstractDbIterator.readNext implementation.
fetchNext() - Method in class simpledb.Insert
Inserts tuples read from child into the tableid specified by the constructor.
fetchNext() - Method in class simpledb.Join
Returns the next tuple generated by the join, or null if there are no more tuples.
fetchNext() - Method in class simpledb.Operator
Returns the next Tuple in the iterator, or null if the iteration is finished.
fetchNext() - Method in class simpledb.OrderBy
Operator.fetchNext implementation.
fetchNext() - Method in class simpledb.Project
Operator.fetchNext implementation.
Field - Interface in simpledb
Interface for values of fields in tuples in SimpleDB.
field - Variable in class simpledb.TupleComparator
 
fieldName - Variable in class simpledb.TupleDesc.TDItem
The name of the field
fieldNameToIndex(String) - Method in class simpledb.TupleDesc
Find the index of the field with a given name.
fieldPureName - Variable in class simpledb.LogicalFilterNode
The field from t which is in the filter.
fieldQuantifiedName - Variable in class simpledb.LogicalFilterNode
 
fields() - Method in class simpledb.Tuple
 
fieldType - Variable in class simpledb.TupleDesc.TDItem
The type of the field
fieldvalue - Variable in class simpledb.IndexPredicate
 
Filter - Class in simpledb
Filter is an operator that implements a relational select.
Filter(Predicate, DbIterator) - Constructor for class simpledb.Filter
Constructor accepts a predicate to apply and a child operator to read tuples to filter from.
filter(Tuple, Tuple) - Method in class simpledb.JoinPredicate
Apply the predicate to the two specified tuples.
filter(Tuple) - Method in class simpledb.Predicate
Compares the field number of t specified in the constructor to the operand field specified in the constructor using the operator specific in the constructor.
filters - Variable in class simpledb.LogicalPlan
 
findLeafPage(TransactionId, Field, BPlusTreePageId, Permissions) - Method in class simpledb.BPlusTreeFile
Recursive function which finds and locks the leaf page in the B+ tree corresponding to the left-most page possibly containing the key field f.
flushAllPages() - Method in class simpledb.BufferPool
Flush all dirty pages to disk.
flushPage(PageId) - Method in class simpledb.BufferPool
Flushes a certain page to disk
flushPages(TransactionId) - Method in class simpledb.BufferPool
Write all pages of the specified transaction to disk.
fname - Variable in class simpledb.LogicalSelectListNode
The field name being selected; the name may be (optionally) be qualified with a table name or alias.
force() - Method in class simpledb.LogFile
 
found - Variable in class simpledb.BPlusTreeUtility.BPlusTreeReader
 
found() - Method in class simpledb.BPlusTreeUtility.BPlusTreeReader
 

G

generateLogicalPlan(TransactionId, String) - Method in class simpledb.Parser
 
getAggOp(String) - Static method in class simpledb.LogicalPlan
Convert the aggregate operator name s into an Aggregator.op operation.
getAlias() - Method in class simpledb.BPlusTreeScan
 
getAlias() - Method in class simpledb.SeqScan
 
getBeforeImage() - Method in class simpledb.BPlusTreeHeaderPage
Return a view of this page before it was modified -- used by recovery
getBeforeImage() - Method in class simpledb.BPlusTreeInternalPage
Return a view of this page before it was modified -- used by recovery
getBeforeImage() - Method in class simpledb.BPlusTreeLeafPage
Return a view of this page before it was modified -- used by recovery
getBeforeImage() - Method in class simpledb.BPlusTreeRootPtrPage
Return a view of this page before it was modified -- used by recovery
getBeforeImage() - Method in class simpledb.HeapPage
Return a view of this page before it was modified -- used by recovery
getBeforeImage() - Method in interface simpledb.Page
Provide a representation of this page before any modifications were made to it.
getBPlusTreeEntry(int) - Static method in class simpledb.BPlusTreeUtility
 
getBPlusTreeEntry(int, int) - Static method in class simpledb.BPlusTreeUtility
 
getBPlusTreeEntry(int, int, int) - Static method in class simpledb.BPlusTreeUtility
 
getBPlusTreeTuple(int) - Static method in class simpledb.BPlusTreeUtility
 
getBPlusTreeTuple(int[]) - Static method in class simpledb.BPlusTreeUtility
 
getBPlusTreeTuple(int, int) - Static method in class simpledb.BPlusTreeUtility
 
getBufferPool() - Static method in class simpledb.Database
Return the buffer pool of the static Database instance
getCard(Set<LogicalJoinNode>) - Method in class simpledb.PlanCache
Find the cardinality of the best join order in the cache for the specified plan
getCatalog() - Static method in class simpledb.Database
Return the catalog of the static Database instance
getChildId(int) - Method in class simpledb.BPlusTreeInternalPage
protected method used by the iterator to get the ith child page id out of this page
getChildren() - Method in class simpledb.Aggregate
 
getChildren() - Method in class simpledb.Delete
 
getChildren() - Method in class simpledb.Filter
 
getChildren() - Method in class simpledb.Insert
 
getChildren() - Method in class simpledb.Join
 
getChildren() - Method in class simpledb.Operator
 
getChildren() - Method in class simpledb.OrderBy
 
getChildren() - Method in class simpledb.Project
 
getCost(Set<LogicalJoinNode>) - Method in class simpledb.PlanCache
Find the cost of the best join order in the cache for the specified plan
getDatabaseFile(int) - Method in class simpledb.Catalog
Returns the DbFile that can be used to read the contents of the specified table.
getEmptyPage(TransactionId, HashSet<Page>) - Method in class simpledb.BPlusTreeFile
Get the page number of the first empty page in this BPlusTreeFile.
getEmptySlot() - Method in class simpledb.BPlusTreeHeaderPage
get the index of the first empty slot
getError() - Method in class simpledb.BPlusTreeUtility.BPlusTreeDeleter
 
getError() - Method in class simpledb.BPlusTreeUtility.BPlusTreeInserter
 
getError() - Method in class simpledb.BPlusTreeUtility.BPlusTreeReader
 
getError() - Method in class simpledb.BPlusTreeUtility.BPlusTreeWriter
 
getEstimatedCardinality() - Method in class simpledb.Operator
 
getField() - Method in class simpledb.IndexPredicate
 
getField() - Method in class simpledb.Predicate
 
getField(int) - Method in class simpledb.Tuple
 
getField1() - Method in class simpledb.JoinPredicate
 
getField2() - Method in class simpledb.JoinPredicate
 
getFieldName(int) - Method in class simpledb.TupleDesc
Gets the (possibly null) field name of the ith field of this TupleDesc.
getFieldType(int) - Method in class simpledb.TupleDesc
Gets the type of the ith field of this TupleDesc.
getFile() - Method in class simpledb.BPlusTreeFile
Returns the File backing this BPlusTreeFile on disk.
getFile() - Method in class simpledb.HeapFile
Returns the File backing this HeapFile on disk.
getHeaderId() - Method in class simpledb.BPlusTreeRootPtrPage
Get the id of the first header page, or null if none exists
getHeaderSize() - Static method in class simpledb.BPlusTreeHeaderPage
Computes the number of bytes in the header while saving room for pointers
getHeaderSize() - Method in class simpledb.BPlusTreeInternalPage
Computes the number of bytes in the header of a B+ internal page with each entry occupying entrySize bytes
getHeaderSize() - Method in class simpledb.BPlusTreeLeafPage
Computes the number of bytes in the header of a page in a BPlusTreeFile with each tuple occupying tupleSize bytes
getHeaderSize() - Method in class simpledb.HeapPage
Computes the number of bytes in the header of a page in a HeapFile with each tuple occupying tupleSize bytes
getHeapTuple(int) - Static method in class simpledb.Utility
 
getHeapTuple(int[]) - Static method in class simpledb.Utility
 
getHeapTuple(int, int) - Static method in class simpledb.Utility
 
getId() - Method in class simpledb.BPlusTreeFile
Returns an ID uniquely identifying this BPlusTreeFile.
getId() - Method in class simpledb.BPlusTreeHeaderPage
 
getId() - Method in class simpledb.BPlusTreeInternalPage
 
getId() - Method in class simpledb.BPlusTreeLeafPage
 
getId() - Method in class simpledb.BPlusTreeRootPtrPage
 
getId(int) - Static method in class simpledb.BPlusTreeRootPtrPage
There is only one instance of a BPlusTreeRootPtrPage per table.
getId() - Method in interface simpledb.DbFile
Returns a unique ID used to identify this DbFile in the Catalog.
getId() - Method in class simpledb.HeapFile
Returns an ID uniquely identifying this HeapFile.
getId() - Method in class simpledb.HeapPage
 
getId() - Method in interface simpledb.Page
Return the id of this page.
getId() - Method in class simpledb.Transaction
 
getId() - Method in class simpledb.TransactionId
 
getJoinField1Name() - Method in class simpledb.Join
 
getJoinField2Name() - Method in class simpledb.Join
 
getJoinPredicate() - Method in class simpledb.Join
 
getKey() - Method in class simpledb.BPlusTreeEntry
 
getKey(int) - Method in class simpledb.BPlusTreeInternalPage
protected method used by the iterator to get the ith key out of this page
getLeftChild() - Method in class simpledb.BPlusTreeEntry
 
getLeftSiblingId() - Method in class simpledb.BPlusTreeLeafPage
Get the id of the left sibling of this page
getLen() - Method in enum simpledb.Type
 
getLogFile() - Static method in class simpledb.Database
Return the log file of the static Database instance
getLogicalPlan() - Method in class simpledb.Query
 
getNextPageId() - Method in class simpledb.BPlusTreeHeaderPage
Get the page id of the next header page
getNumEmptySlots() - Method in class simpledb.BPlusTreeInternalPage
Returns the number of empty slots on this page.
getNumEmptySlots() - Method in class simpledb.BPlusTreeLeafPage
Returns the number of empty slots on this page.
getNumEmptySlots() - Method in class simpledb.HeapPage
Returns the number of empty slots on this page.
getNumEntries() - Method in class simpledb.BPlusTreeInternalPage
Retrieve the number of entries on this page.
getNumSlots() - Static method in class simpledb.BPlusTreeHeaderPage
Computes the number of slots in the header
getNumTuples() - Method in class simpledb.BPlusTreeLeafPage
Retrieve the number of tuples on this page.
getNumTuples() - Method in class simpledb.HeapPage
Retrieve the number of tuples on this page.
getOp(String) - Static method in enum simpledb.Aggregator.Op
Interface to access operations by a string containing an integer index for command-line convenience.
getOp(int) - Static method in enum simpledb.Aggregator.Op
Interface to access operations by integer value for command-line convenience.
getOp() - Method in class simpledb.IndexPredicate
 
getOp(String) - Static method in class simpledb.Parser
 
getOp() - Method in class simpledb.Predicate
 
getOp(int) - Static method in enum simpledb.Predicate.Op
Interface to access operations by integer value for command-line convenience.
getOperand() - Method in class simpledb.Predicate
 
getOperator() - Method in class simpledb.JoinPredicate
 
getOrder(Set<LogicalJoinNode>) - Method in class simpledb.PlanCache
Find the best join order in the cache for the specified plan
getOrderByField() - Method in class simpledb.OrderBy
 
getOrderFieldName() - Method in class simpledb.OrderBy
 
getOutputTupleDesc() - Method in class simpledb.Query
 
getPage(TransactionId, PageId, Permissions) - Method in class simpledb.BufferPool
Retrieve the specified page with the associated permissions.
getPageData() - Method in class simpledb.BPlusTreeHeaderPage
Generates a byte array representing the contents of this page.
getPageData() - Method in class simpledb.BPlusTreeInternalPage
Generates a byte array representing the contents of this page.
getPageData() - Method in class simpledb.BPlusTreeLeafPage
Generates a byte array representing the contents of this page.
getPageData() - Method in class simpledb.BPlusTreeRootPtrPage
Generates a byte array representing the contents of this root pointer page.
getPageData() - Method in class simpledb.HeapPage
Generates a byte array representing the contents of this page.
getPageData() - Method in interface simpledb.Page
Generates a byte array representing the contents of this page.
getPageId() - Method in class simpledb.RecordId
 
getPageSize() - Static method in class simpledb.BPlusTreeRootPtrPage
Get the page size of root pointer pages
getPageSize() - Static method in class simpledb.BufferPool
 
getParentId() - Method in class simpledb.BPlusTreeInternalPage
Get the parent id of this page
getParentId() - Method in class simpledb.BPlusTreeLeafPage
Get the id of the parent of this page
getPhysicalPlan() - Method in class simpledb.Query
 
getPredicate() - Method in class simpledb.Filter
 
getPrevPageId() - Method in class simpledb.BPlusTreeHeaderPage
Get the page id of the previous header page
getPrimaryKey(int) - Method in class simpledb.Catalog
 
getQuery() - Method in class simpledb.LogicalPlan
Get the query text associated with this plan via LogicalPlan.setQuery(java.lang.String).
getRecordId() - Method in class simpledb.BPlusTreeEntry
 
getRecordId() - Method in class simpledb.Tuple
 
getRightChild() - Method in class simpledb.BPlusTreeEntry
 
getRightSiblingId() - Method in class simpledb.BPlusTreeLeafPage
Get the id of the right sibling of this page
getRootId() - Method in class simpledb.BPlusTreeRootPtrPage
Get the id of the root page in this B+ tree
getRootPtrPage(TransactionId) - Method in class simpledb.BPlusTreeFile
Get a read lock on the root pointer page.
getSize() - Method in class simpledb.TupleDesc
 
getStatsMap() - Static method in class simpledb.TableStats
 
getStrings(int, String) - Static method in class simpledb.Utility
 
getTableAliasToIdMapping() - Method in class simpledb.LogicalPlan
 
getTableId() - Method in class simpledb.BPlusTreePageId
 
getTableId(String) - Method in class simpledb.Catalog
Return the id of the table with a specified name,
getTableId() - Method in class simpledb.HeapPageId
 
getTableId(String) - Method in class simpledb.LogicalPlan
Given a table alias, return id of the table object (this id can be supplied to Catalog.getDatabaseFile(int)).
getTableId() - Method in interface simpledb.PageId
 
getTableName() - Method in class simpledb.BPlusTreeScan
 
getTableName(int) - Method in class simpledb.Catalog
 
getTableName() - Method in class simpledb.SeqScan
 
getTableStats(String) - Static method in class simpledb.TableStats
 
getTotalRecords() - Method in class simpledb.LogFile
 
getTransaction() - Method in class simpledb.Parser
 
getTransactionId() - Method in class simpledb.Query
 
getTuple(int) - Method in class simpledb.BPlusTreeLeafPage
protected method used by the iterator to get the ith tuple out of this page
getTuple(int[], int) - Static method in class simpledb.Utility
 
getTupleDesc() - Method in class simpledb.Aggregate
Returns the TupleDesc of this Aggregate.
getTupleDesc() - Method in class simpledb.BPlusTreeFile
Returns the TupleDesc of the table stored in this DbFile.
getTupleDesc() - Method in class simpledb.BPlusTreeScan
Returns the TupleDesc with field names from the underlying BPlusTreeFile, prefixed with the tableAlias string from the constructor.
getTupleDesc(int) - Method in class simpledb.Catalog
Returns the tuple descriptor (schema) of the specified table
getTupleDesc() - Method in interface simpledb.DbFile
Returns the TupleDesc of the table stored in this DbFile.
getTupleDesc() - Method in interface simpledb.DbIterator
Returns the TupleDesc associated with this DbIterator.
getTupleDesc() - Method in class simpledb.Delete
 
getTupleDesc() - Method in class simpledb.Filter
 
getTupleDesc() - Method in class simpledb.HeapFile
Returns the TupleDesc of the table stored in this DbFile.
getTupleDesc() - Method in class simpledb.Insert
 
getTupleDesc() - Method in class simpledb.Join
 
getTupleDesc() - Method in class simpledb.Operator
 
getTupleDesc() - Method in class simpledb.OrderBy
 
getTupleDesc() - Method in class simpledb.Project
 
getTupleDesc() - Method in class simpledb.SeqScan
Returns the TupleDesc with field names from the underlying HeapFile, prefixed with the tableAlias string from the constructor.
getTupleDesc() - Method in class simpledb.Tuple
 
getTupleDesc() - Method in class simpledb.TupleArrayIterator
Returns the TupleDesc associated with this DbIterator.
getTupleDesc() - Method in class simpledb.TupleIterator
 
getTupleDesc(int, String) - Static method in class simpledb.Utility
 
getTupleDesc(int) - Static method in class simpledb.Utility
 
getType() - Method in interface simpledb.Field
Returns the type of this field (see Type.INT_TYPE or Type.STRING_TYPE
getType() - Method in class simpledb.IntField
Return the Type of this field.
getType() - Method in class simpledb.StringField
 
getTypes(int) - Static method in class simpledb.Utility
 
getValue() - Method in class simpledb.IntField
 
getValue() - Method in class simpledb.StringField
 
groupByField - Variable in class simpledb.LogicalPlan
 
groupField() - Method in class simpledb.Aggregate
 
groupFieldName() - Method in class simpledb.Aggregate
 

H

handleDeleteStatement(ZDelete, TransactionId) - Method in class simpledb.Parser
 
handleInsertStatement(ZInsert, TransactionId) - Method in class simpledb.Parser
 
handleMinOccupancyInternalPage(TransactionId, BPlusTreeInternalPage, HashSet<Page>) - Method in class simpledb.BPlusTreeFile
Handle the case when an internal page becomes less than half full due to deletions.
handleMinOccupancyLeafPage(TransactionId, BPlusTreeLeafPage, HashSet<Page>) - Method in class simpledb.BPlusTreeFile
Handle the case when a leaf page becomes less than half full due to deletions.
handleQueryStatement(ZQuery, TransactionId) - Method in class simpledb.Parser
 
handleTransactStatement(ZTransactStmt) - Method in class simpledb.Parser
 
hasAgg - Variable in class simpledb.LogicalPlan
 
hashCode() - Method in class simpledb.BPlusTreePageId
 
hashCode() - Method in interface simpledb.Field
Hash code.
hashCode() - Method in class simpledb.HeapPageId
 
hashCode() - Method in class simpledb.IntField
 
hashCode() - Method in class simpledb.LogicalJoinNode
 
hashCode() - Method in class simpledb.LogicalSubplanJoinNode
 
hashCode() - Method in interface simpledb.PageId
 
hashCode() - Method in class simpledb.RecordId
You should implement the hashCode() so that two equal RecordId instances (with respect to equals()) have the same hashCode().
hashCode() - Method in class simpledb.StringField
 
hashCode() - Method in class simpledb.TransactionId
 
hashCode() - Method in class simpledb.TupleDesc
 
hasNext() - Method in class simpledb.AbstractDbFileIterator
 
hasNext() - Method in class simpledb.BPlusTreeInternalPageIterator
 
hasNext() - Method in class simpledb.BPlusTreeLeafPageIterator
 
hasNext() - Method in class simpledb.BPlusTreeScan
 
hasNext() - Method in interface simpledb.DbFileIterator
 
hasNext() - Method in interface simpledb.DbIterator
Returns true if the iterator has more tuples.
hasNext() - Method in class simpledb.Operator
 
hasNext() - Method in class simpledb.Query
 
hasNext() - Method in class simpledb.SeqScan
 
hasNext() - Method in class simpledb.TupleArrayIterator
 
hasNext() - Method in class simpledb.TupleIterator
 
hasOrderBy - Variable in class simpledb.LogicalPlan
 
hasPkey(Vector<LogicalJoinNode>) - Method in class simpledb.JoinOptimizer
Return true if a primary key field is joined by one of the joins in joinlist
header - Variable in class simpledb.BPlusTreeHeaderPage
 
header - Variable in class simpledb.BPlusTreeInternalPage
 
header - Variable in class simpledb.BPlusTreeLeafPage
 
HEADER - Static variable in class simpledb.BPlusTreePageId
 
header - Variable in class simpledb.BPlusTreeRootPtrPage
 
header - Variable in class simpledb.HeapPage
 
HeapFile - Class in simpledb
HeapFile is an implementation of a DbFile that stores a collection of tuples in no particular order.
HeapFile(File, TupleDesc) - Constructor for class simpledb.HeapFile
Constructs a heap file backed by the specified file.
HeapFileEncoder - Class in simpledb
HeapFileEncoder reads a comma delimited text file or accepts an array of tuples and converts it to pages of binary data in the appropriate format for simpledb heap pages Pages are padded out to a specified length, and written consecutive in a data file.
HeapFileEncoder() - Constructor for class simpledb.HeapFileEncoder
 
HeapPage - Class in simpledb
Each instance of HeapPage stores data for one page of HeapFiles and implements the Page interface that is used by BufferPool.
HeapPage(HeapPageId, byte[]) - Constructor for class simpledb.HeapPage
Create a HeapPage from a set of bytes of data read from disk.
HeapPageId - Class in simpledb
Unique identifier for HeapPage objects.
HeapPageId(int, int) - Constructor for class simpledb.HeapPageId
Constructor.
hist - Variable in class simpledb.StringHistogram
 
holdsLock(TransactionId, PageId) - Method in class simpledb.BufferPool
Return true if the specified transaction has a lock on the specified page

I

i - Variable in class simpledb.TupleIterator
 
INDEX_SIZE - Static variable in class simpledb.BPlusTreeHeaderPage
 
INDEX_SIZE - Static variable in class simpledb.BPlusTreeInternalPage
 
INDEX_SIZE - Static variable in class simpledb.BPlusTreeLeafPage
 
IndexDbIterator - Interface in simpledb
IndexDBIterator is the interface that index access methods implement in SimpleDb.
indexIterator(TransactionId, IndexPredicate) - Method in class simpledb.BPlusTreeFile
get the specified tuples from the file based on its IndexPredicate value on behalf of the specified transaction.
IndexPredicate - Class in simpledb
IndexPredicate compares a field which has index on it against a given value
IndexPredicate(Predicate.Op, Field) - Constructor for class simpledb.IndexPredicate
Constructor.
init() - Method in class simpledb.BPlusTreeHeaderPage
Initially mark all slots in the header used.
init(BPlusTreeFile, BlockingQueue<ArrayList<Integer>>) - Method in class simpledb.BPlusTreeUtility.BPlusTreeDeleter
 
init(BPlusTreeFile, int[], BlockingQueue<ArrayList<Integer>>) - Method in class simpledb.BPlusTreeUtility.BPlusTreeInserter
 
Insert - Class in simpledb
Inserts tuples read from the child operator into the tableid specified in the constructor
Insert(TransactionId, DbIterator, int) - Constructor for class simpledb.Insert
Constructor.
insertedTuples - Variable in class simpledb.BPlusTreeUtility.BPlusTreeDeleter
 
insertedTuples - Variable in class simpledb.BPlusTreeUtility.BPlusTreeInserter
 
insertEntry(BPlusTreeEntry) - Method in class simpledb.BPlusTreeInternalPage
Adds the specified entry to the page; the entry should be updated to reflect that it is now stored on this page.
insertTuple(TransactionId, Tuple) - Method in class simpledb.BPlusTreeFile
Insert a tuple into this BPlusTreeFile, keeping the tuples in sorted order.
insertTuple(Tuple) - Method in class simpledb.BPlusTreeLeafPage
Adds the specified tuple to the page such that all records remain in sorted order; the tuple should be updated to reflect that it is now stored on this page.
insertTuple(TransactionId, int, Tuple) - Method in class simpledb.BufferPool
Add a tuple to the specified table on behalf of transaction tid.
insertTuple(TransactionId, Tuple) - Method in interface simpledb.DbFile
Inserts the specified tuple to the file on behalf of transaction.
insertTuple(TransactionId, Tuple) - Method in class simpledb.HeapFile
 
insertTuple(Tuple) - Method in class simpledb.HeapPage
Adds the specified tuple to the page; the tuple should be updated to reflect that it is now stored on this page.
instantiateJoin(LogicalJoinNode, DbIterator, DbIterator) - Static method in class simpledb.JoinOptimizer
Return best iterator for computing a given logical join, given the specified statistics, and the provided left and right subplans.
INT_SIZE - Static variable in class simpledb.LogFile
 
IntegerAggregator - Class in simpledb
Knows how to compute some aggregate over a set of IntFields.
IntegerAggregator(int, Type, int, Aggregator.Op) - Constructor for class simpledb.IntegerAggregator
Aggregate constructor
interactive - Variable in class simpledb.Parser
 
INTERNAL - Static variable in class simpledb.BPlusTreePageId
 
IntField - Class in simpledb
Instance of Field that stores a single integer.
IntField(int) - Constructor for class simpledb.IntField
Constructor.
IntHistogram - Class in simpledb
A class to represent a fixed-width histogram over a single integer-based field.
IntHistogram(int, int, int) - Constructor for class simpledb.IntHistogram
Create a new IntHistogram.
inUserTrans - Variable in class simpledb.Parser
 
IOCOSTPERPAGE - Static variable in class simpledb.TableStats
 
ipred - Variable in class simpledb.BPlusTreeScan
 
ipred - Variable in class simpledb.BPlusTreeSearchIterator
 
isASC() - Method in class simpledb.OrderBy
 
isDirty() - Method in class simpledb.BPlusTreeHeaderPage
Returns the tid of the transaction that last dirtied this page, or null if the page is not dirty
isDirty() - Method in class simpledb.BPlusTreeInternalPage
Returns the tid of the transaction that last dirtied this page, or null if the page is not dirty
isDirty() - Method in class simpledb.BPlusTreeLeafPage
Returns the tid of the transaction that last dirtied this page, or null if the page is not dirty
isDirty() - Method in class simpledb.BPlusTreeRootPtrPage
 
isDirty() - Method in class simpledb.HeapPage
Returns the tid of the transaction that last dirtied this page, or null if the page is not dirty
isDirty() - Method in interface simpledb.Page
Get the id of the transaction that last dirtied this page, or null if the page is clean..
isEnabled(int) - Static method in class simpledb.Debug
 
isEnabled() - Static method in class simpledb.Debug
 
isOpen - Variable in class simpledb.BPlusTreeScan
 
isPkey(String, String) - Method in class simpledb.JoinOptimizer
Return true if field is a primary key of the specified table, false otherwise
isSlotUsed(int) - Method in class simpledb.BPlusTreeHeaderPage
Returns true if the page of the BPlusTreeFile associated with slot i is used
isSlotUsed(int) - Method in class simpledb.BPlusTreeInternalPage
Returns true if associated slot on this page is filled.
isSlotUsed(int) - Method in class simpledb.BPlusTreeLeafPage
Returns true if associated slot on this page is filled.
isSlotUsed(int) - Method in class simpledb.HeapPage
Returns true if associated slot on this page is filled.
it - Variable in class simpledb.BPlusTreeFileIterator
 
it - Variable in class simpledb.BPlusTreeScan
 
it - Variable in class simpledb.BPlusTreeSearchIterator
 
it - Variable in class simpledb.OrderBy
 
it - Variable in class simpledb.TupleArrayIterator
 
item - Variable in class simpledb.BPlusTreeUtility.BPlusTreeWriter
 
iterator() - Method in interface simpledb.Aggregator
Create a DbIterator over group aggregate results.
iterator(TransactionId) - Method in class simpledb.BPlusTreeFile
Get an iterator for all tuples in this B+ tree file in sorted order.
iterator() - Method in class simpledb.BPlusTreeInternalPage
 
iterator() - Method in class simpledb.BPlusTreeLeafPage
 
iterator(TransactionId) - Method in interface simpledb.DbFile
Returns an iterator over all the tuples stored in this DbFile.
iterator(TransactionId) - Method in class simpledb.HeapFile
 
iterator() - Method in class simpledb.HeapPage
 
iterator() - Method in class simpledb.IntegerAggregator
Create a DbIterator over group aggregate results.
iterator() - Method in class simpledb.StringAggregator
Create a DbIterator over group aggregate results.
iterator() - Method in class simpledb.TupleDesc
 

J

Join - Class in simpledb
The Join operator implements the relational join operation.
Join(JoinPredicate, DbIterator, DbIterator) - Constructor for class simpledb.Join
Constructor.
JoinOptimizer - Class in simpledb
The JoinOptimizer class is responsible for ordering a series of joins optimally, and for selecting the best instantiation of a join for a given logical plan.
JoinOptimizer(LogicalPlan, Vector<LogicalJoinNode>) - Constructor for class simpledb.JoinOptimizer
Constructor
JoinPredicate - Class in simpledb
JoinPredicate compares fields of two tuples using a predicate.
JoinPredicate(int, Predicate.Op, int) - Constructor for class simpledb.JoinPredicate
Constructor -- create a new predicate over two fields of two tuples.
joins - Variable in class simpledb.JoinOptimizer
 
joins - Variable in class simpledb.LogicalPlan
 

K

key - Variable in class simpledb.BPlusTreeEntry
The key of this entry
keyField - Variable in class simpledb.BPlusTreeFile
 
keyField() - Method in class simpledb.BPlusTreeFile
Returns the index of the field that this B+ tree is keyed on
keyField - Variable in class simpledb.BPlusTreeFileEncoder.TupleComparator
 
keyField - Variable in class simpledb.BPlusTreeInternalPage
 
keyField - Variable in class simpledb.BPlusTreeLeafPage
 
keys - Variable in class simpledb.BPlusTreeInternalPage
 

L

LEAF - Static variable in class simpledb.BPlusTreePageId
 
leftChild - Variable in class simpledb.BPlusTreeEntry
The left child page id
leftSibling - Variable in class simpledb.BPlusTreeLeafPage
 
listToString(ArrayList<Integer>) - Static method in class simpledb.Utility
 
loadSchema(String) - Method in class simpledb.Catalog
Reads the schema from a file and creates the appropriate tables in the database.
log(int, String, Object...) - Static method in class simpledb.Debug
Log message if the log level >= level.
log(String, Object...) - Static method in class simpledb.Debug
Logs message at the default log level.
logAbort(TransactionId) - Method in class simpledb.LogFile
Write an abort record to the log for the specified tid, force the log to disk, and perform a rollback
logCheckpoint() - Method in class simpledb.LogFile
Checkpoint the log and write a checkpoint record.
logCommit(TransactionId) - Method in class simpledb.LogFile
Write a commit record to disk for the specified tid, and force the log to disk.
LogFile - Class in simpledb
The format of the log file is as follows: The first long integer of the file represents the offset of the last written checkpoint, or -1 if there are no checkpoints All additional data in the log consists of log records.
LogFile(File) - Constructor for class simpledb.LogFile
Constructor.
logFile - Variable in class simpledb.LogFile
 
LOGFILENAME - Static variable in class simpledb.Database
 
LogicalFilterNode - Class in simpledb
A LogicalFilterNode represents the parameters of a filter in the WHERE clause of a query.
LogicalFilterNode(String, String, Predicate.Op, String) - Constructor for class simpledb.LogicalFilterNode
 
LogicalJoinNode - Class in simpledb
A LogicalJoinNode represens the state needed of a join of two tables in a LogicalQueryPlan
LogicalJoinNode() - Constructor for class simpledb.LogicalJoinNode
 
LogicalJoinNode(String, String, String, String, Predicate.Op) - Constructor for class simpledb.LogicalJoinNode
 
LogicalPlan - Class in simpledb
LogicalPlan represents a logical query plan that has been through the parser and is ready to be processed by the optimizer.
LogicalPlan() - Constructor for class simpledb.LogicalPlan
Constructor -- generate an empty logical plan
logicalPlan - Variable in class simpledb.Query
 
LogicalScanNode - Class in simpledb
A LogicalScanNode represents table in the FROM list in a LogicalQueryPlan
LogicalScanNode(int, String) - Constructor for class simpledb.LogicalScanNode
 
LogicalSelectListNode - Class in simpledb
A LogicalSelectListNode represents a clause in the select list in a LogicalQueryPlan
LogicalSelectListNode(String, String) - Constructor for class simpledb.LogicalSelectListNode
 
LogicalSubplanJoinNode - Class in simpledb
A LogicalSubplanJoinNode represens the state needed of a join of a table to a subplan in a LogicalQueryPlan -- inherits state from LogicalJoinNode; t2 and f2 should always be null
LogicalSubplanJoinNode(String, String, DbIterator, Predicate.Op) - Constructor for class simpledb.LogicalSubplanJoinNode
 
logTruncate() - Method in class simpledb.LogFile
Truncate any unneeded portion of the log to reduce its space consumption
logWrite(TransactionId, Page, Page) - Method in class simpledb.LogFile
Write an UPDATE record to disk for the specified tid and page (with provided before and after images.)
logXactionBegin(TransactionId) - Method in class simpledb.LogFile
Write a BEGIN record for the specified transaction
LONG_SIZE - Static variable in class simpledb.LogFile
 

M

main(String[]) - Static method in class simpledb.LogicalPlan
 
main(String[]) - Static method in class simpledb.Parser
 
main(String[]) - Static method in class simpledb.SimpleDb
 
markDirty(boolean, TransactionId) - Method in class simpledb.BPlusTreeHeaderPage
Marks this page as dirty/not dirty and record that transaction that did the dirtying
markDirty(boolean, TransactionId) - Method in class simpledb.BPlusTreeInternalPage
Marks this page as dirty/not dirty and record that transaction that did the dirtying
markDirty(boolean, TransactionId) - Method in class simpledb.BPlusTreeLeafPage
Marks this page as dirty/not dirty and record that transaction that did the dirtying
markDirty(boolean, TransactionId) - Method in class simpledb.BPlusTreeRootPtrPage
 
markDirty(boolean, TransactionId) - Method in class simpledb.HeapPage
Marks this page as dirty/not dirty and record that transaction that did the dirtying
markDirty(boolean, TransactionId) - Method in interface simpledb.Page
Set the dirty state of this page as dirtied by a particular transaction
markSlotUsed(int, boolean) - Method in class simpledb.BPlusTreeHeaderPage
Abstraction to mark a page of the BPlusTreeFile used or unused
markSlotUsed(int, boolean) - Method in class simpledb.BPlusTreeInternalPage
Abstraction to fill or clear a slot on this page.
markSlotUsed(int, boolean) - Method in class simpledb.BPlusTreeLeafPage
Abstraction to fill or clear a slot on this page.
markSlotUsed(int, boolean) - Method in class simpledb.HeapPage
Abstraction to fill or clear a slot on this page.
MAX_RAND_VALUE - Static variable in class simpledb.BPlusTreeUtility
 
maxSize - Variable in class simpledb.StringField
 
maxVal() - Method in class simpledb.StringHistogram
 
merge(TupleDesc, TupleDesc) - Static method in class simpledb.TupleDesc
Merge two TupleDescs into one, with td1.numFields + td2.numFields fields, with the first td1.numFields coming from td1 and the remaining from td2.
mergeInternalPages(TransactionId, BPlusTreeInternalPage, BPlusTreeInternalPage, BPlusTreeInternalPage, BPlusTreeEntry, HashSet<Page>) - Method in class simpledb.BPlusTreeFile
Merge two internal pages by moving all entries from the right page to the left page.
mergeLeafPages(TransactionId, BPlusTreeLeafPage, BPlusTreeLeafPage, BPlusTreeInternalPage, BPlusTreeEntry, HashSet<Page>) - Method in class simpledb.BPlusTreeFile
Merge two leaf pages by moving all tuples from the right page to the left page.
mergeTupleIntoGroup(Tuple) - Method in interface simpledb.Aggregator
Merge a new tuple into the aggregate for a distinct group value; creates a new group aggregate result if the group value has not yet been encountered.
mergeTupleIntoGroup(Tuple) - Method in class simpledb.IntegerAggregator
Merge a new tuple into the aggregate, grouping as indicated in the constructor
mergeTupleIntoGroup(Tuple) - Method in class simpledb.StringAggregator
Merge a new tuple into the aggregate, grouping as indicated in the constructor
minVal() - Method in class simpledb.StringHistogram
 
moveEntry(int, int) - Method in class simpledb.BPlusTreeInternalPage
Move an entry from one slot to another slot, and update the corresponding headers
moveRecord(int, int) - Method in class simpledb.BPlusTreeLeafPage
Move a record from one slot to another slot, and update the corresponding headers and RecordId
myid - Variable in class simpledb.TransactionId
 
myTd - Variable in class simpledb.BPlusTreeScan
 

N

nameOfAggregatorOp(Aggregator.Op) - Static method in class simpledb.Aggregate
 
next - Variable in class simpledb.AbstractDbFileIterator
 
next() - Method in class simpledb.AbstractDbFileIterator
 
next() - Method in class simpledb.BPlusTreeInternalPageIterator
 
next() - Method in class simpledb.BPlusTreeLeafPageIterator
 
next() - Method in class simpledb.BPlusTreeScan
 
next() - Method in interface simpledb.DbFileIterator
Gets the next tuple from the operator (typically implementing by reading from a child operator or an access method).
next() - Method in interface simpledb.DbIterator
Returns the next tuple from the operator (typically implementing by reading from a child operator or an access method).
next - Variable in class simpledb.Operator
 
next() - Method in class simpledb.Operator
 
next() - Method in class simpledb.Query
Returns the next tuple, or throws NoSuchElementException if the iterator is closed.
next() - Method in class simpledb.SeqScan
 
next() - Method in class simpledb.TupleArrayIterator
Gets the next tuple from the operator (typically implementing by reading from a child operator or an access method).
next() - Method in class simpledb.TupleIterator
 
nextPage - Variable in class simpledb.BPlusTreeHeaderPage
 
nextToReturn - Variable in class simpledb.BPlusTreeInternalPageIterator
 
nextToReturn - Variable in class simpledb.BPlusTreeLeafPageIterator
 
NO_CHECKPOINT_ID - Static variable in class simpledb.LogFile
 
NO_GROUPING - Static variable in interface simpledb.Aggregator
 
NUM_HIST_BINS - Static variable in class simpledb.TableStats
Number of bins for the histogram.
numFields() - Method in class simpledb.TupleDesc
 
numPages() - Method in class simpledb.BPlusTreeFile
Returns the number of pages in this BPlusTreeFile.
numPages() - Method in class simpledb.HeapFile
Returns the number of pages in this HeapFile.
numSlots - Variable in class simpledb.BPlusTreeHeaderPage
 
numSlots - Variable in class simpledb.BPlusTreeInternalPage
 
numSlots - Variable in class simpledb.BPlusTreeLeafPage
 
numSlots - Variable in class simpledb.HeapPage
 

O

oByAsc - Variable in class simpledb.LogicalPlan
 
oByField - Variable in class simpledb.LogicalPlan
 
oldData - Variable in class simpledb.BPlusTreeHeaderPage
 
oldData - Variable in class simpledb.BPlusTreeInternalPage
 
oldData - Variable in class simpledb.BPlusTreeLeafPage
 
oldData - Variable in class simpledb.BPlusTreeRootPtrPage
 
oldData - Variable in class simpledb.HeapPage
 
oldDataLock - Variable in class simpledb.BPlusTreeHeaderPage
 
oldDataLock - Variable in class simpledb.BPlusTreeInternalPage
 
oldDataLock - Variable in class simpledb.BPlusTreeLeafPage
 
oldDataLock - Variable in class simpledb.HeapPage
 
op - Variable in class simpledb.IndexPredicate
 
op - Variable in class simpledb.Query
 
open() - Method in class simpledb.Aggregate
 
open() - Method in class simpledb.BPlusTreeFileIterator
Open this iterator by getting an iterator on the first leaf page
open() - Method in class simpledb.BPlusTreeScan
 
open() - Method in class simpledb.BPlusTreeSearchIterator
Open this iterator by getting an iterator on the first leaf page applicable for the given predicate operation
open() - Method in interface simpledb.DbFileIterator
Opens the iterator
open() - Method in interface simpledb.DbIterator
Opens the iterator.
open() - Method in class simpledb.Delete
 
open() - Method in class simpledb.Filter
 
open(IndexPredicate) - Method in interface simpledb.IndexDbIterator
Open the access method such that when getNext is called, it iterates through the tuples that satisfy ipred.
open() - Method in class simpledb.Insert
 
open() - Method in class simpledb.Join
 
open - Variable in class simpledb.Operator
 
open() - Method in class simpledb.Operator
 
open() - Method in class simpledb.OrderBy
 
open() - Method in class simpledb.Project
 
open() - Method in class simpledb.SeqScan
 
open() - Method in class simpledb.TupleArrayIterator
 
open() - Method in class simpledb.TupleIterator
 
openBPlusTreeFile(int, File, int) - Static method in class simpledb.BPlusTreeUtility
Opens a BPlusTreeFile and adds it to the catalog.
openBPlusTreeFile(int, String, File, int) - Static method in class simpledb.BPlusTreeUtility
 
openHeapFile(int, File) - Static method in class simpledb.Utility
Opens a HeapFile and adds it to the catalog.
openHeapFile(int, String, File) - Static method in class simpledb.Utility
 
Operator - Class in simpledb
Abstract class for implementing operators.
Operator() - Constructor for class simpledb.Operator
 
OrderBy - Class in simpledb
OrderBy is an operator that implements a relational ORDER BY.
OrderBy(int, boolean, DbIterator) - Constructor for class simpledb.OrderBy
Creates a new OrderBy node over the tuples from the iterator.
orderByField - Variable in class simpledb.OrderBy
 
orderByFieldName - Variable in class simpledb.OrderBy
 
orderJoins(HashMap<String, TableStats>, HashMap<String, Double>, boolean) - Method in class simpledb.JoinOptimizer
Compute a logical, reasonably efficient join on the specified tables.
outFieldIds - Variable in class simpledb.Project
 

P

p - Variable in class simpledb.BPlusTreeInternalPageIterator
 
p - Variable in class simpledb.BPlusTreeLeafPageIterator
 
p - Variable in class simpledb.JoinOptimizer
 
p - Variable in class simpledb.LogicalFilterNode
The predicate in the filter
p - Variable in class simpledb.LogicalJoinNode
The join predicate
Page - Interface in simpledb
Page is the interface used to represent pages that are resident in the BufferPool.
PAGE_SIZE - Static variable in class simpledb.BPlusTreeRootPtrPage
 
PAGE_SIZE - Static variable in class simpledb.BufferPool
Bytes per page, including header.
PageId - Interface in simpledb
PageId is an interface to a specific page of a specific table.
pageNumber() - Method in class simpledb.BPlusTreePageId
 
pageNumber() - Method in class simpledb.HeapPageId
 
pageNumber() - Method in interface simpledb.PageId
 
pageSize - Static variable in class simpledb.BufferPool
 
parent - Variable in class simpledb.BPlusTreeInternalPage
 
parent - Variable in class simpledb.BPlusTreeLeafPage
 
parse(DataInputStream) - Method in enum simpledb.Type
 
parseQueryLogicalPlan(TransactionId, ZQuery) - Method in class simpledb.Parser
 
Parser - Class in simpledb
 
Parser() - Constructor for class simpledb.Parser
 
ParsingException - Exception in simpledb
 
ParsingException(String) - Constructor for exception simpledb.ParsingException
 
ParsingException(Exception) - Constructor for exception simpledb.ParsingException
 
Permissions - Class in simpledb
Class representing requested permissions to a relation/file.
Permissions(int) - Constructor for class simpledb.Permissions
 
permLevel - Variable in class simpledb.Permissions
 
pgcateg - Variable in class simpledb.BPlusTreePageId
 
pgcateg() - Method in class simpledb.BPlusTreePageId
 
pgNo - Variable in class simpledb.BPlusTreePageId
 
physicalPlan(TransactionId, Map<String, TableStats>, boolean) - Method in class simpledb.LogicalPlan
Convert this LogicalPlan into a physicalPlan represented by a DbIterator.
pid - Variable in class simpledb.BPlusTreeHeaderPage
 
pid - Variable in class simpledb.BPlusTreeInternalPage
 
pid - Variable in class simpledb.BPlusTreeLeafPage
 
pid - Variable in class simpledb.BPlusTreeRootPtrPage
 
pid - Variable in class simpledb.HeapPage
 
plan - Variable in class simpledb.CostCard
The optimal subplan
PlanCache - Class in simpledb
A PlanCache is a helper class that can be used to store the best way to order a given set of joins
PlanCache() - Constructor for class simpledb.PlanCache
 
preAppend() - Method in class simpledb.LogFile
 
Predicate - Class in simpledb
Predicate compares tuples to a specified Field value.
Predicate(int, Predicate.Op, Field) - Constructor for class simpledb.Predicate
Constructor.
Predicate.Op - Enum in simpledb
Constants used for return codes in Field.compare
Predicate.Op() - Constructor for enum simpledb.Predicate.Op
 
prevChildId - Variable in class simpledb.BPlusTreeInternalPageIterator
 
prevPage - Variable in class simpledb.BPlusTreeHeaderPage
 
print() - Method in class simpledb.LogFile
Print out a human readable represenation of the log
printJoins(Vector<LogicalJoinNode>, PlanCache, HashMap<String, TableStats>, HashMap<String, Double>) - Method in class simpledb.JoinOptimizer
Helper function to display a Swing window with a tree representation of the specified list of joins.
processExpression(TransactionId, ZExpression, LogicalPlan) - Method in class simpledb.Parser
 
processNextStatement(String) - Method in class simpledb.Parser
 
processNextStatement(InputStream) - Method in class simpledb.Parser
 
Project - Class in simpledb
Project is an operator that implements a relational projection.
Project(ArrayList<Integer>, ArrayList<Type>, DbIterator) - Constructor for class simpledb.Project
Constructor accepts a child operator to read tuples to apply projection to and a list of fields in output tuple
Project(ArrayList<Integer>, Type[], DbIterator) - Constructor for class simpledb.Project
 

Q

query - Variable in class simpledb.LogicalPlan
 
Query - Class in simpledb
Query is a wrapper class to manage the execution of queries.
Query(TransactionId) - Constructor for class simpledb.Query
 
Query(DbIterator, TransactionId) - Constructor for class simpledb.Query
 

R

raf - Variable in class simpledb.LogFile
 
READ_ONLY - Static variable in class simpledb.Permissions
 
READ_WRITE - Static variable in class simpledb.Permissions
 
readNext() - Method in class simpledb.AbstractDbFileIterator
Reads the next tuple from the underlying source.
readNext() - Method in class simpledb.BPlusTreeFileIterator
Read the next tuple either from the current page if it has more tuples or from the next page by following the right sibling pointer.
readNext() - Method in class simpledb.BPlusTreeSearchIterator
Read the next tuple either from the current page if it has more tuples matching the predicate or from the next page by following the right sibling pointer.
readNextChild(DataInputStream, int) - Method in class simpledb.BPlusTreeInternalPage
Suck up child pointers from the source file.
readNextKey(DataInputStream, int) - Method in class simpledb.BPlusTreeInternalPage
Suck up keys from the source file.
readNextTuple(DataInputStream, int) - Method in class simpledb.BPlusTreeLeafPage
Suck up tuples from the source file.
readNextTuple(DataInputStream, int) - Method in class simpledb.HeapPage
Suck up tuples from the source file.
readPage(PageId) - Method in class simpledb.BPlusTreeFile
Read a page from the file on disk.
readPage(PageId) - Method in interface simpledb.DbFile
Read the specified page from disk.
readPage(PageId) - Method in class simpledb.HeapFile
 
readPageData(RandomAccessFile) - Method in class simpledb.LogFile
 
RecordId - Class in simpledb
A RecordId is a reference to a specific tuple on a specific page of a specific table.
RecordId(PageId, int) - Constructor for class simpledb.RecordId
Creates a new RecordId referring to the specified PageId and tuple number.
recover() - Method in class simpledb.LogFile
Recover the database system by ensuring that the updates of committed transactions are installed and that the updates of uncommitted transactions are not installed.
recoveryUndecided - Variable in class simpledb.LogFile
 
releasePage(TransactionId, PageId) - Method in class simpledb.BufferPool
Releases the lock on a page.
remove() - Method in class simpledb.BPlusTreeInternalPageIterator
 
remove() - Method in class simpledb.BPlusTreeLeafPageIterator
 
rerun(BPlusTreeFile, BlockingQueue<ArrayList<Integer>>) - Method in class simpledb.BPlusTreeUtility.BPlusTreeDeleter
 
rerun(BPlusTreeFile, int[], BlockingQueue<ArrayList<Integer>>) - Method in class simpledb.BPlusTreeUtility.BPlusTreeInserter
 
reset(int, String) - Method in class simpledb.BPlusTreeScan
Reset the tableid, and tableAlias of this operator.
reset() - Static method in class simpledb.Database
 
reset(int, String) - Method in class simpledb.SeqScan
Reset the tableid, and tableAlias of this operator.
resetBufferPool(int) - Static method in class simpledb.Database
Method used for testing -- create a new instance of the buffer pool and return it
resetTupleDesc(TupleDesc) - Method in class simpledb.Tuple
reset the TupleDesc of thi tuple
rewind() - Method in class simpledb.Aggregate
 
rewind() - Method in class simpledb.BPlusTreeFileIterator
rewind this iterator back to the beginning of the tuples
rewind() - Method in class simpledb.BPlusTreeScan
 
rewind() - Method in class simpledb.BPlusTreeSearchIterator
rewind this iterator back to the beginning of the tuples
rewind() - Method in interface simpledb.DbFileIterator
Resets the iterator to the start.
rewind() - Method in interface simpledb.DbIterator
Resets the iterator to the start.
rewind() - Method in class simpledb.Delete
 
rewind() - Method in class simpledb.Filter
 
rewind(IndexPredicate) - Method in interface simpledb.IndexDbIterator
Begin a new index scan with the specified predicate.
rewind() - Method in class simpledb.Insert
 
rewind() - Method in class simpledb.Join
 
rewind() - Method in class simpledb.OrderBy
 
rewind() - Method in class simpledb.Project
 
rewind() - Method in class simpledb.SeqScan
 
rewind() - Method in class simpledb.TupleArrayIterator
Resets the iterator to the start.
rewind() - Method in class simpledb.TupleIterator
 
rid - Variable in class simpledb.BPlusTreeEntry
The record id of this entry
rightChild - Variable in class simpledb.BPlusTreeEntry
The right child page id
rightSibling - Variable in class simpledb.BPlusTreeLeafPage
 
rollback(TransactionId) - Method in class simpledb.LogFile
Rollback the specified transaction, setting the state of any of pages it updated to their pre-updated state.
root - Variable in class simpledb.BPlusTreeRootPtrPage
 
ROOT_PTR - Static variable in class simpledb.BPlusTreePageId
 
rootCategory - Variable in class simpledb.BPlusTreeRootPtrPage
 
run() - Method in class simpledb.BPlusTreeUtility.BPlusTreeDeleter
 
run() - Method in class simpledb.BPlusTreeUtility.BPlusTreeInserter
 
run() - Method in class simpledb.BPlusTreeUtility.BPlusTreeReader
 
run() - Method in class simpledb.BPlusTreeUtility.BPlusTreeWriter
 

S

selectList - Variable in class simpledb.LogicalPlan
 
SeqScan - Class in simpledb
SeqScan is an implementation of a sequential scan access method that reads each tuple of a table in no particular order (e.g., as they are laid out on disk).
SeqScan(TransactionId, int, String) - Constructor for class simpledb.SeqScan
Creates a sequential scan over the specified table as a part of the specified transaction.
SeqScan(TransactionId, int) - Constructor for class simpledb.SeqScan
 
serialize() - Method in class simpledb.BPlusTreePageId
Return a representation of this object as an array of integers, for writing to disk.
serialize(DataOutputStream) - Method in interface simpledb.Field
Write the bytes representing this field to the specified DataOutputStream.
serialize() - Method in class simpledb.HeapPageId
Return a representation of this object as an array of integers, for writing to disk.
serialize(DataOutputStream) - Method in class simpledb.IntField
 
serialize() - Method in interface simpledb.PageId
Return a representation of this page id object as a collection of integers (used for logging) This class MUST have a constructor that accepts n integer parameters, where n is the number of integers returned in the array from serialize.
serialize(DataOutputStream) - Method in class simpledb.StringField
Write this string to dos.
serialVersionUID - Static variable in class simpledb.Aggregate
 
serialVersionUID - Static variable in class simpledb.BPlusTreeEntry
 
serialVersionUID - Static variable in class simpledb.BPlusTreeScan
 
serialVersionUID - Static variable in exception simpledb.DbException
 
serialVersionUID - Static variable in class simpledb.Delete
 
serialVersionUID - Static variable in class simpledb.Filter
 
serialVersionUID - Static variable in class simpledb.IndexPredicate
 
serialVersionUID - Static variable in class simpledb.Insert
 
serialVersionUID - Static variable in class simpledb.IntegerAggregator
 
serialVersionUID - Static variable in class simpledb.IntField
 
serialVersionUID - Static variable in class simpledb.Join
 
serialVersionUID - Static variable in class simpledb.JoinPredicate
 
serialVersionUID - Static variable in class simpledb.Operator
 
serialVersionUID - Static variable in class simpledb.OrderBy
 
serialVersionUID - Static variable in exception simpledb.ParsingException
 
serialVersionUID - Static variable in class simpledb.Predicate
 
serialVersionUID - Static variable in class simpledb.Project
 
serialVersionUID - Static variable in class simpledb.Query
 
serialVersionUID - Static variable in class simpledb.RecordId
 
serialVersionUID - Static variable in class simpledb.SeqScan
 
serialVersionUID - Static variable in class simpledb.StringAggregator
 
serialVersionUID - Static variable in class simpledb.StringField
 
serialVersionUID - Static variable in exception simpledb.TransactionAbortedException
 
serialVersionUID - Static variable in class simpledb.TransactionId
 
serialVersionUID - Static variable in class simpledb.Tuple
 
serialVersionUID - Static variable in class simpledb.TupleArrayIterator
 
serialVersionUID - Static variable in class simpledb.TupleDesc
 
serialVersionUID - Static variable in class simpledb.TupleDesc.TDItem
 
serialVersionUID - Static variable in class simpledb.TupleIterator
 
setBeforeImage() - Method in class simpledb.BPlusTreeHeaderPage
 
setBeforeImage() - Method in class simpledb.BPlusTreeInternalPage
 
setBeforeImage() - Method in class simpledb.BPlusTreeLeafPage
 
setBeforeImage() - Method in class simpledb.BPlusTreeRootPtrPage
 
setBeforeImage() - Method in class simpledb.HeapPage
 
setBeforeImage() - Method in interface simpledb.Page
 
setChildren(DbIterator[]) - Method in class simpledb.Aggregate
 
setChildren(DbIterator[]) - Method in class simpledb.Delete
 
setChildren(DbIterator[]) - Method in class simpledb.Filter
 
setChildren(DbIterator[]) - Method in class simpledb.Insert
 
setChildren(DbIterator[]) - Method in class simpledb.Join
 
setChildren(DbIterator[]) - Method in class simpledb.Operator
Set the children(child) of this operator.
setChildren(DbIterator[]) - Method in class simpledb.OrderBy
 
setChildren(DbIterator[]) - Method in class simpledb.Project
 
setEmptyPage(TransactionId, HashSet<Page>, int) - Method in class simpledb.BPlusTreeFile
Mark a page in this BPlusTreeFile as empty.
setEstimatedCardinality(int) - Method in class simpledb.Operator
 
setField(int, Field) - Method in class simpledb.Tuple
Change the value of the ith field of this tuple.
setHeaderId(BPlusTreePageId) - Method in class simpledb.BPlusTreeRootPtrPage
Set the page id of the first header page
setKey(Field) - Method in class simpledb.BPlusTreeEntry
set the key for this entry
setLeftChild(BPlusTreePageId) - Method in class simpledb.BPlusTreeEntry
set the left child id for this entry
setLeftSiblingId(BPlusTreePageId) - Method in class simpledb.BPlusTreeLeafPage
Set the left sibling id of this page
setLogicalPlan(LogicalPlan) - Method in class simpledb.Query
 
setNextPageId(BPlusTreePageId) - Method in class simpledb.BPlusTreeHeaderPage
Set the page id of the next header page
setPageSize(int) - Static method in class simpledb.BufferPool
 
setParentId(BPlusTreePageId) - Method in class simpledb.BPlusTreeInternalPage
Set the parent id
setParentId(BPlusTreePageId) - Method in class simpledb.BPlusTreeLeafPage
Set the parent id of this page
setParents(BPlusTreeFile, BPlusTreePageId, BPlusTreePageId) - Static method in class simpledb.BPlusTreeFileEncoder
Recursive function to set all the parent pointers
setPhysicalPlan(DbIterator) - Method in class simpledb.Query
 
setPrevPageId(BPlusTreePageId) - Method in class simpledb.BPlusTreeHeaderPage
Set the page id of the previous header page
setQuery(String) - Method in class simpledb.LogicalPlan
Set the text of the query representing this logical plan.
setRecordId(RecordId) - Method in class simpledb.BPlusTreeEntry
set the record id for this entry
setRecordId(RecordId) - Method in class simpledb.Tuple
Set the RecordId information for this tuple.
setRightChild(BPlusTreePageId) - Method in class simpledb.BPlusTreeEntry
set the right child id for this entry
setRightSiblingId(BPlusTreePageId) - Method in class simpledb.BPlusTreeLeafPage
Set the right sibling id of this page
setRightSiblingPtrs(BPlusTreeFile, BPlusTreePageId, BPlusTreePageId) - Static method in class simpledb.BPlusTreeFileEncoder
Set all the right sibling pointers by following the left sibling pointers
setRootId(BPlusTreePageId) - Method in class simpledb.BPlusTreeRootPtrPage
Set the id of the root page in this B+ tree
setStatsMap(HashMap<String, TableStats>) - Static method in class simpledb.TableStats
 
setTableStats(String, TableStats) - Static method in class simpledb.TableStats
 
setTransaction(Transaction) - Method in class simpledb.Parser
 
shutdown() - Method in class simpledb.LogFile
Shutdown the logging system, writing out whatever state is necessary so that start up can happen quickly (without extensive recovery.)
shutdown() - Method in class simpledb.Parser
 
simpledb - package simpledb
 
SimpleDb - Class in simpledb
 
SimpleDb() - Constructor for class simpledb.SimpleDb
 
slock - Variable in class simpledb.BPlusTreeUtility.BPlusTreeDeleter
 
slock - Variable in class simpledb.BPlusTreeUtility.BPlusTreeInserter
 
slock - Variable in class simpledb.BPlusTreeUtility.BPlusTreeReader
 
slock - Variable in class simpledb.BPlusTreeUtility.BPlusTreeWriter
 
splitInternalPage(BPlusTreeInternalPage, TransactionId, HashSet<Page>, Field) - Method in class simpledb.BPlusTreeFile
Recursively split internal pages as needed to make room for new entries.
splitLeafPage(BPlusTreeLeafPage, TransactionId, HashSet<Page>, Field) - Method in class simpledb.BPlusTreeFile
Split a leaf page to make room for new tuples and recursively split the parent node as needed.
SQL_COMMANDS - Static variable in class simpledb.Parser
 
start(String[]) - Method in class simpledb.Parser
 
start() - Method in class simpledb.Query
 
start() - Method in class simpledb.Transaction
Start the transaction running
started - Variable in class simpledb.Query
 
started - Variable in class simpledb.Transaction
 
statsMap - Static variable in class simpledb.TableStats
 
STRING_LEN - Static variable in enum simpledb.Type
 
StringAggregator - Class in simpledb
Knows how to compute some aggregate over a set of StringFields.
StringAggregator(int, Type, int, Aggregator.Op) - Constructor for class simpledb.StringAggregator
Aggregate constructor
StringField - Class in simpledb
Instance of Field that stores a single String of a fixed length.
StringField(String, int) - Constructor for class simpledb.StringField
Constructor.
StringHistogram - Class in simpledb
A class to represent a fixed-width histogram over a single String-based field.
StringHistogram(int) - Constructor for class simpledb.StringHistogram
Create a new StringHistogram with a specified number of buckets.
stringToInt(String) - Method in class simpledb.StringHistogram
Convert a string to an integer, with the property that if the return value(s1) < return value(s2), then s1 < s2
subPlan - Variable in class simpledb.LogicalSubplanJoinNode
The subplan (used on the inner) of the join
subplanMap - Variable in class simpledb.LogicalPlan
 
succeeded() - Method in class simpledb.BPlusTreeUtility.BPlusTreeDeleter
 
succeeded() - Method in class simpledb.BPlusTreeUtility.BPlusTreeInserter
 
succeeded() - Method in class simpledb.BPlusTreeUtility.BPlusTreeWriter
 
success - Variable in class simpledb.BPlusTreeUtility.BPlusTreeDeleter
 
success - Variable in class simpledb.BPlusTreeUtility.BPlusTreeInserter
 
success - Variable in class simpledb.BPlusTreeUtility.BPlusTreeWriter
 
swapInnerOuter() - Method in class simpledb.LogicalJoinNode
Return a new LogicalJoinNode with the inner and outer (t1.f1 and t2.f2) tables swapped.
swapInnerOuter() - Method in class simpledb.LogicalSubplanJoinNode
 

T

t - Variable in class simpledb.LogicalScanNode
The table identifier (can be passed to Catalog.getDatabaseFile(int)) to retrieve a DbFile
t1Alias - Variable in class simpledb.LogicalJoinNode
The first table to join (may be null).
t2Alias - Variable in class simpledb.LogicalJoinNode
The second table to join (may be null).
tableAlias - Variable in class simpledb.LogicalFilterNode
The alias of a table (or the name if no alias) over which the filter ranges
tableid - Variable in class simpledb.BPlusTreeFile
 
tableId - Variable in class simpledb.BPlusTreePageId
 
tableIdIterator() - Method in class simpledb.Catalog
 
tableMap - Variable in class simpledb.LogicalPlan
 
tablename - Variable in class simpledb.BPlusTreeScan
 
tables - Variable in class simpledb.LogicalPlan
 
TableStats - Class in simpledb
TableStats represents statistics (e.g., histograms) about base tables in a query.
TableStats(int, int) - Constructor for class simpledb.TableStats
Create a new TableStats object, that keeps track of statistics on each column of a table
td - Variable in class simpledb.BPlusTreeFile
 
td - Variable in class simpledb.BPlusTreeInternalPage
 
td - Variable in class simpledb.BPlusTreeLeafPage
 
td - Variable in class simpledb.HeapPage
 
td - Variable in class simpledb.OrderBy
 
td - Variable in class simpledb.Project
 
td - Variable in class simpledb.TupleIterator
 
tid - Variable in class simpledb.BPlusTreeFileIterator
 
tid - Variable in class simpledb.BPlusTreeScan
 
tid - Variable in class simpledb.BPlusTreeSearchIterator
 
tid - Variable in class simpledb.BPlusTreeUtility.BPlusTreeDeleter
 
tid - Variable in class simpledb.BPlusTreeUtility.BPlusTreeInserter
 
tid - Variable in class simpledb.BPlusTreeUtility.BPlusTreeReader
 
tid - Variable in class simpledb.BPlusTreeUtility.BPlusTreeWriter
 
tid - Variable in class simpledb.Query
 
tid - Variable in class simpledb.Transaction
 
tidToFirstLogRecord - Variable in class simpledb.LogFile
 
toString() - Method in enum simpledb.Aggregator.Op
 
toString() - Method in interface simpledb.Field
 
toString() - Method in class simpledb.IntField
 
toString() - Method in class simpledb.IntHistogram
 
toString() - Method in class simpledb.LogicalJoinNode
 
toString() - Method in class simpledb.Permissions
 
toString() - Method in enum simpledb.Predicate.Op
 
toString() - Method in class simpledb.Predicate
Returns something useful, like "f = field_id op = op_string operand = operand_string
toString() - Method in class simpledb.StringField
 
toString() - Method in class simpledb.Tuple
Returns the contents of this Tuple as a string.
toString() - Method in class simpledb.TupleDesc.TDItem
 
toString() - Method in class simpledb.TupleDesc
Returns a String describing this descriptor.
totalRecords - Variable in class simpledb.LogFile
 
totalTuples() - Method in class simpledb.TableStats
return the total number of tuples in this table
Transaction - Class in simpledb
Transaction encapsulates information about the state of a transaction and manages transaction commit / abort.
Transaction() - Constructor for class simpledb.Transaction
 
TransactionAbortedException - Exception in simpledb
Exception that is thrown when a transaction has aborted.
TransactionAbortedException() - Constructor for exception simpledb.TransactionAbortedException
 
transactionComplete(TransactionId) - Method in class simpledb.BufferPool
Release all locks associated with a given transaction.
transactionComplete(TransactionId, boolean) - Method in class simpledb.BufferPool
Commit or abort a given transaction; release all locks associated to the transaction.
transactionComplete(boolean) - Method in class simpledb.Transaction
Handle the details of transaction commit / abort
TransactionId - Class in simpledb
TransactionId is a class that contains the identifier of a transaction.
TransactionId() - Constructor for class simpledb.TransactionId
 
tupdata - Variable in class simpledb.BPlusTreeUtility.BPlusTreeInserter
 
tuple - Variable in class simpledb.BPlusTreeUtility.BPlusTreeDeleter
 
Tuple - Class in simpledb
Tuple maintains information about the contents of a tuple.
Tuple(TupleDesc) - Constructor for class simpledb.Tuple
Create a new tuple with the specified schema (type).
TupleArrayIterator - Class in simpledb
 
TupleArrayIterator(ArrayList<Tuple>) - Constructor for class simpledb.TupleArrayIterator
 
TupleComparator - Class in simpledb
 
TupleComparator(int, boolean) - Constructor for class simpledb.TupleComparator
 
TupleDesc - Class in simpledb
TupleDesc describes the schema of a tuple.
TupleDesc(Type[], String[]) - Constructor for class simpledb.TupleDesc
Create a new TupleDesc with typeAr.length fields with fields of the specified types, with associated named fields.
TupleDesc(Type[]) - Constructor for class simpledb.TupleDesc
Constructor.
TupleDesc.TDItem - Class in simpledb
A help class to facilitate organizing the information of each field
TupleDesc.TDItem(Type, String) - Constructor for class simpledb.TupleDesc.TDItem
 
TupleIterator - Class in simpledb
Implements a DbIterator by wrapping an Iterable.
TupleIterator(TupleDesc, Iterable<Tuple>) - Constructor for class simpledb.TupleIterator
Constructs an iterator from the specified Iterable, and the specified descriptor.
tupleno() - Method in class simpledb.RecordId
 
tuples - Variable in class simpledb.BPlusTreeLeafPage
 
tuples - Variable in class simpledb.HeapPage
 
tuples - Variable in class simpledb.TupleIterator
 
tupleToList(Tuple) - Static method in class simpledb.BPlusTreeUtility
 
tups - Variable in class simpledb.TupleArrayIterator
 
Type - Enum in simpledb
Class representing a type in SimpleDB.
Type() - Constructor for enum simpledb.Type
 

U

UPDATE_RECORD - Static variable in class simpledb.LogFile
 
updateEntries(ArrayList<ArrayList<BPlusTreeEntry>>, BPlusTreeFile, BPlusTreeEntry, int, int, int, Type, int, int) - Static method in class simpledb.BPlusTreeFileEncoder
Recursive function to update the entries by adding a new Entry at a particular level
updateParentPointer(TransactionId, BPlusTreePageId, BPlusTreePageId, HashSet<Page>) - Method in class simpledb.BPlusTreeFile
Helper function to update the parent pointer of a node.
updateParentPointers(TransactionId, BPlusTreeInternalPage, HashSet<Page>) - Method in class simpledb.BPlusTreeFile
Update the parent pointer of every child of the given page
usage - Static variable in class simpledb.Parser
 
Utility - Class in simpledb
Helper methods used for testing and implementing random features.
Utility() - Constructor for class simpledb.Utility
 

V

value - Variable in class simpledb.IntField
 
value - Variable in class simpledb.StringField
 
valueOf(String) - Static method in enum simpledb.Aggregator.Op
Returns the enum constant of this type with the specified name.
valueOf(String) - Static method in enum simpledb.Predicate.Op
Returns the enum constant of this type with the specified name.
valueOf(String) - Static method in enum simpledb.Type
Returns the enum constant of this type with the specified name.
values() - Static method in enum simpledb.Aggregator.Op
Returns an array containing the constants of this enum type, in the order they are declared.
values() - Static method in enum simpledb.Predicate.Op
Returns an array containing the constants of this enum type, in the order they are declared.
values() - Static method in enum simpledb.Type
Returns an array containing the constants of this enum type, in the order they are declared.

W

writePage(Page) - Method in class simpledb.BPlusTreeFile
Write a page to disk.
writePage(Page) - Method in interface simpledb.DbFile
Push the specified page to disk.
writePage(Page) - Method in class simpledb.HeapFile
 
writePageData(RandomAccessFile, Page) - Method in class simpledb.LogFile
 

_

_bufferpool - Variable in class simpledb.Database
 
_catalog - Variable in class simpledb.Database
 
_instance - Static variable in class simpledb.Database
 
_logfile - Variable in class simpledb.Database
 
A B C D E F G H I J K L M N O P Q R S T U V W _