A B C D E F G H I J 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
 
acceptor - Variable in class simpledb.parallel.Server
 
acceptor - Variable in class simpledb.parallel.Worker
The acceptor, which binds to a TCP socket and waits for connections The Server sends messages, including query plans and control messages, to the worker through this acceptor.
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.
addNewFilters(HashMap<String, HashMap<String, HashSet<Predicate>>>, DbIterator) - Method in class simpledb.parallel.FilterOptimizer
 
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.
address - Variable in class simpledb.parallel.SocketInfo
 
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
 
AggregateOptimizer - Class in simpledb.parallel
Optimize aggregate operators of a parallel queryplan.
AggregateOptimizer() - Constructor for class simpledb.parallel.AggregateOptimizer
 
AggregateOptimizer(ParallelQueryPlanOptimizer) - Constructor for class simpledb.parallel.AggregateOptimizer
 
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.LogicalScanNode
The name (alias) of the table as it is used in the query
aliasToIdMapping - Variable in class simpledb.parallel.BloomFilterOptimizer
 
asc - Variable in class simpledb.OrderBy
 
asc - Variable in class simpledb.TupleComparator
 
attributes - Variable in class simpledb.parallel.PartitionFunction
 
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
 
bitSet - Variable in class simpledb.parallel.BloomFilterBitSet
 
bloomFilter - Variable in class simpledb.parallel.BloomFilterConsumer
 
bloomFilter - Variable in class simpledb.parallel.BloomFilterProducer
 
BloomFilterBitSet - Class in simpledb.parallel
 
BloomFilterBitSet(Exchange.ParallelOperatorID, String, BitSet) - Constructor for class simpledb.parallel.BloomFilterBitSet
 
BloomFilterConsumer - Class in simpledb.parallel
The bloom filter consumer
BloomFilterConsumer(DbIterator, Exchange.ParallelOperatorID, SocketInfo[], int, int[], int) - Constructor for class simpledb.parallel.BloomFilterConsumer
 
BloomFilterConsumer.BloomFilterCollector - Class in simpledb.parallel
 
BloomFilterConsumer.BloomFilterCollector() - Constructor for class simpledb.parallel.BloomFilterConsumer.BloomFilterCollector
 
BloomFilterOptimizer - Class in simpledb.parallel
Add bloom filters to query plan.
BloomFilterOptimizer(SocketInfo[], HashMap<String, Integer>, Map<String, TableStats>) - Constructor for class simpledb.parallel.BloomFilterOptimizer
 
BloomFilterOptimizer(ParallelQueryPlanOptimizer) - Constructor for class simpledb.parallel.BloomFilterOptimizer
 
BloomFilterProducer - Class in simpledb.parallel
The bloom filter producer
BloomFilterProducer(DbIterator, Exchange.ParallelOperatorID, SocketInfo[], int, int[], int) - Constructor for class simpledb.parallel.BloomFilterProducer
 
broadcastMessageToWorkers(Object, SocketInfo[], IoHandlerAdapter, long) - Static method in class simpledb.parallel.ParallelUtility
 
buffer - Variable in class simpledb.parallel.Consumer
The buffer for receiving ExchangeMessages.
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.
buildBloomFilter() - Method in class simpledb.parallel.BloomFilterConsumer
 
buildMasterWorkerPlan(TransactionId, DbIterator, ParallelQueryPlan.QueryPlanWrapper, SocketInfo[]) - Static method in class simpledb.parallel.ParallelQueryPlan
 
buildSlaveWorkerPlan(DbIterator, TransactionId, Class<? extends PartitionFunction<?, ?>>, SocketInfo[], SocketInfo) - Static method in class simpledb.parallel.ParallelQueryPlan
 
buildTree(int, int, DbIterator, int, int) - Method in class simpledb.QueryPlanVisualizer
 

C

c - Variable in class simpledb.LogicalFilterNode
 
calculateQueryPlanTreeDepth(DbIterator) - Method in class simpledb.QueryPlanVisualizer
 
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.parallel.BloomFilterConsumer
 
child - Variable in class simpledb.parallel.BloomFilterProducer
 
child - Variable in class simpledb.parallel.CollectConsumer
The child of a CollectConsumer must be a paired CollectProducer.
child - Variable in class simpledb.parallel.CollectProducer
 
child - Variable in class simpledb.Project
 
child - Variable in class simpledb.Rename
 
child1 - Variable in class simpledb.HashEquiJoin
 
child2 - Variable in class simpledb.HashEquiJoin
 
childTups - Variable in class simpledb.OrderBy
 
cleanup() - Method in class simpledb.parallel.Server
 
clear() - Method in class simpledb.Catalog
Delete all tables from the catalog
close() - Method in class simpledb.Aggregate
 
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.HashEquiJoin
 
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.parallel.BloomFilterConsumer
 
close() - Method in class simpledb.parallel.BloomFilterProducer
 
close() - Method in class simpledb.parallel.CollectConsumer
 
close() - Method in class simpledb.parallel.CollectProducer
 
close() - Method in class simpledb.parallel.ShuffleConsumer
 
close() - Method in class simpledb.parallel.ShuffleProducer
 
close() - Method in class simpledb.Project
 
close() - Method in class simpledb.Query
Close the iterator
close() - Method in class simpledb.Rename
 
close() - Method in class simpledb.SeqScan
 
close() - Method in class simpledb.TupleArrayIterator
Closes the iterator.
close() - Method in class simpledb.TupleIterator
 
closeSession(IoSession) - Static method in class simpledb.parallel.ParallelUtility
Close a session.
CollectConsumer - Class in simpledb.parallel
The consumer part of the Collect Exchange operator.
CollectConsumer(TupleDesc, Exchange.ParallelOperatorID, SocketInfo[]) - Constructor for class simpledb.parallel.CollectConsumer
If there's no child operator, a TupleDesc is needed
CollectConsumer(CollectProducer, Exchange.ParallelOperatorID, SocketInfo[]) - Constructor for class simpledb.parallel.CollectConsumer
If a child is provided, the TupleDesc is the child's TD
collectConsumerAddr - Variable in class simpledb.parallel.CollectProducer
The paired collect consumer address
collectConsumerOperatorIDs(DbIterator, ArrayList<Exchange.ParallelOperatorID>) - Static method in class simpledb.parallel.Worker
Find out all the ParallelOperatorIDs of all consuming operators: ShuffleConsumer, CollectConsumer, and BloomFilterConsumer running at this worker.
collectorOperator - Variable in class simpledb.parallel.ParallelQueryPlan.QueryPlanWrapper
 
CollectProducer - Class in simpledb.parallel
The producer part of the Collect Exchange operator.
CollectProducer(DbIterator, Exchange.ParallelOperatorID, String, int) - Constructor for class simpledb.parallel.CollectProducer
 
CollectProducer(DbIterator, Exchange.ParallelOperatorID, InetSocketAddress) - Constructor for class simpledb.parallel.CollectProducer
 
CollectProducer.WorkingThread - Class in simpledb.parallel
The working thread, which executes the child operator and send the tuples to the paired CollectConsumer operator
CollectProducer.WorkingThread() - Constructor for class simpledb.parallel.CollectProducer.WorkingThread
 
comboTD - Variable in class simpledb.HashEquiJoin
 
commit() - Method in class simpledb.Transaction
Finish the transaction
COMMIT_RECORD - Static variable in class simpledb.LogFile
 
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
 
Consumer - Class in simpledb.parallel
 
Consumer(Exchange.ParallelOperatorID) - Constructor for class simpledb.parallel.Consumer
 
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.
copyFileFolder(File, File, boolean) - Static method in class simpledb.parallel.ParallelUtility
 
cost - Variable in class simpledb.CostCard
The cost of the optimal subplan
CostCard - Class in simpledb
CostCard() - Constructor for class simpledb.CostCard
 
counter - Static variable in class simpledb.TransactionId
 
createAcceptor() - Static method in class simpledb.parallel.ParallelUtility
create a server side acceptor
createConnector() - Static method in class simpledb.parallel.ParallelUtility
create a client side connector to the server
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.HeapPage
Static method to generate a byte array corresponding to an empty HeapPage.
createSession(SocketAddress, IoHandlerAdapter, long) - Static method in class simpledb.parallel.ParallelUtility
Create a session for network communication.
currentOffset - Variable in class simpledb.LogFile
 
curtrans - Variable in class simpledb.Parser
 

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_CONF_DIR - Static variable in class simpledb.parallel.Server
 
DEFAULT_DATA_DIR - Static variable in class simpledb.parallel.Worker
 
DEFAULT_LEVEL - Static variable in class simpledb.Debug
 
DEFAULT_OUTPUT_DIR - Static variable in class simpledb.HeapFileSplitter
 
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.
deleteFileFolder(File) - Static method in class simpledb.parallel.ParallelUtility
 
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 specifed 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.
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.
dispatchWorkerQueryPlans(HashMap<SocketInfo, DbIterator>) - Method in class simpledb.parallel.Server
 
doesJoin(Vector<LogicalJoinNode>, String) - Method in class simpledb.JoinOptimizer
Return true if the specified table is in the list of joins, false otherwise
doInsertBloomFilter(TransactionId, DbIterator, Exchange) - Method in class simpledb.parallel.BloomFilterOptimizer
 
doMyOptimization(TransactionId, ParallelQueryPlan) - Method in class simpledb.parallel.AggregateOptimizer
 
doMyOptimization(TransactionId, ParallelQueryPlan) - Method in class simpledb.parallel.BloomFilterOptimizer
 
doMyOptimization(TransactionId, ParallelQueryPlan) - Method in class simpledb.parallel.FilterOptimizer
 
doMyOptimization(TransactionId, ParallelQueryPlan) - Method in class simpledb.parallel.ParallelQueryPlanOptimizer
Sub classes should implement this method to do the actual optimization
doMyOptimization(TransactionId, ParallelQueryPlan) - Method in class simpledb.parallel.ProjectOptimizer
 

E

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 interface simpledb.Field
 
equals(Object) - Method in class simpledb.HeapPageId
Compares one PageId to another.
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.parallel.Exchange.ParallelOperatorID
 
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.
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.
exceptionCaught(IoSession, Throwable) - Method in class simpledb.parallel.Server.ServerHandler
 
exceptionCaught(IoSession, Throwable) - Method in class simpledb.parallel.Worker.WorkerHandler
 
Exchange - Class in simpledb.parallel
The exchange operator, which will be used in implementing parallel simpledb.
Exchange(Exchange.ParallelOperatorID) - Constructor for class simpledb.parallel.Exchange
 
Exchange.ParallelOperatorID - Class in simpledb.parallel
The identifier of exchange operators.
Exchange.ParallelOperatorID(TransactionId, int) - Constructor for class simpledb.parallel.Exchange.ParallelOperatorID
 
ExchangeMessage - Class in simpledb.parallel
All the messages that will change between Exchange Operators should be a sub class of ExchangeMessage.
ExchangeMessage(Exchange.ParallelOperatorID, String) - Constructor for class simpledb.parallel.ExchangeMessage
 
execute() - Method in class simpledb.Query
 
executeQuery() - Method in class simpledb.parallel.Worker
execute the current query, note that this method is invoked by the Mina IOHandler thread.
explain - Static variable in class simpledb.Parser
 
extractSlaveWorkerPlan(DbIterator) - Method in class simpledb.parallel.ParallelQueryPlan
 

F

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.HashEquiJoin
 
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.parallel.BloomFilterConsumer
 
fetchNext() - Method in class simpledb.parallel.BloomFilterProducer
 
fetchNext() - Method in class simpledb.parallel.CollectConsumer
 
fetchNext() - Method in class simpledb.parallel.CollectProducer
 
fetchNext() - Method in class simpledb.parallel.ShuffleConsumer
 
fetchNext() - Method in class simpledb.parallel.ShuffleProducer
 
fetchNext() - Method in class simpledb.Project
Operator.fetchNext implementation.
fetchNext() - Method in class simpledb.Rename
 
Field - Interface in simpledb
Interface for values of fields in tuples in SimpleDB.
field - Variable in class simpledb.TupleComparator
 
FIELD_NAME - Static variable in class simpledb.parallel.SingleFieldHashPartitionFunction
 
fieldName - Variable in class simpledb.parallel.SingleFieldHashPartitionFunction
 
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
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.parallel.BloomFilterConsumer
 
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.
filterField - Variable in class simpledb.parallel.BloomFilterConsumer
 
filterField - Variable in class simpledb.parallel.BloomFilterProducer
 
FilterOptimizer - Class in simpledb.parallel
This optimizer spreads filters.
FilterOptimizer() - Constructor for class simpledb.parallel.FilterOptimizer
 
FilterOptimizer(ParallelQueryPlanOptimizer) - Constructor for class simpledb.parallel.FilterOptimizer
 
filters - Variable in class simpledb.LogicalPlan
 
finishQuery() - Method in class simpledb.parallel.Worker
This method should be called when a query is finished
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
 
fromWorkerID - Variable in class simpledb.parallel.ExchangeMessage
 

G

generateLogicalPlan(TransactionId, String) - Method in class simpledb.Parser
 
getAddress() - Method in class simpledb.parallel.SocketInfo
 
getAggOp(String) - Static method in class simpledb.LogicalPlan
Convert the aggregate operator name s into an Aggregator.op operation.
getAlias() - Method in class simpledb.SeqScan
 
getAttribute(K) - Method in class simpledb.parallel.PartitionFunction
 
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.
getBitSet() - Method in class simpledb.parallel.BloomFilterBitSet
 
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
getChildren() - Method in class simpledb.Aggregate
 
getChildren() - Method in class simpledb.Delete
 
getChildren() - Method in class simpledb.Filter
 
getChildren() - Method in class simpledb.HashEquiJoin
 
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.parallel.BloomFilterConsumer
 
getChildren() - Method in class simpledb.parallel.BloomFilterProducer
 
getChildren() - Method in class simpledb.parallel.CollectConsumer
 
getChildren() - Method in class simpledb.parallel.CollectProducer
 
getChildren() - Method in class simpledb.parallel.ShuffleConsumer
 
getChildren() - Method in class simpledb.parallel.ShuffleProducer
 
getChildren() - Method in class simpledb.Project
 
getChildren() - Method in class simpledb.Rename
 
getCollectServerAddr() - Method in class simpledb.parallel.CollectProducer
 
getCost(Set<LogicalJoinNode>) - Method in class simpledb.PlanCache
Find the cost of the best join order in the cache for the specified plan
getDbFile(int) - Method in class simpledb.Catalog
Returns the DbFile that can be used to read the contents of the specified table.
getEquivalentJoinFields(DbIterator, HashMap<String, HashSet<String>>, HashMap<String, HashSet<Predicate>>) - Method in class simpledb.parallel.FilterOptimizer
 
getEstimatedCardinality() - Method in class simpledb.Operator
 
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.HeapFile
Returns the File backing this HeapFile on disk.
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
 
getHost() - Method in class simpledb.parallel.SocketInfo
 
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.parallel.SocketInfo
 
getId() - Method in class simpledb.Transaction
 
getId() - Method in class simpledb.TransactionId
 
getJoinField1Name() - Method in class simpledb.HashEquiJoin
 
getJoinField1Name() - Method in class simpledb.Join
 
getJoinField2Name() - Method in class simpledb.HashEquiJoin
 
getJoinField2Name() - Method in class simpledb.Join
 
getJoinPredicate() - Method in class simpledb.HashEquiJoin
 
getJoinPredicate() - Method in class simpledb.Join
 
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
 
getMasterWorkerPlan() - Method in class simpledb.parallel.ParallelQueryPlan
 
getName() - Method in class simpledb.parallel.BloomFilterConsumer
 
getName() - Method in class simpledb.parallel.BloomFilterProducer
 
getName() - Method in class simpledb.parallel.CollectConsumer
 
getName() - Method in class simpledb.parallel.CollectProducer
 
getName() - Method in class simpledb.parallel.Exchange
Return the name of the exchange, used only to display the operator in the operator tree
getName() - Method in class simpledb.parallel.ShuffleConsumer
 
getName() - Method in class simpledb.parallel.ShuffleProducer
 
getNumEmptySlots() - Method in class simpledb.HeapPage
Returns the number of empty slots 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(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
 
getOperatorID() - Method in class simpledb.parallel.BloomFilterConsumer
 
getOperatorID() - Method in class simpledb.parallel.Exchange
 
getOperatorID() - Method in class simpledb.parallel.ExchangeMessage
Get the ParallelOperatorID, to which this message is targeted
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.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
 
getPartitionFunction() - Method in class simpledb.parallel.ShuffleProducer
 
getPhysicalPlan() - Method in class simpledb.Query
 
getPort() - Method in class simpledb.parallel.SocketInfo
 
getPredicate() - Method in class simpledb.Filter
 
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).
getQueryPlanTree(DbIterator) - Method in class simpledb.QueryPlanVisualizer
 
getRecordId() - Method in class simpledb.Tuple
 
getServerPlan() - Method in class simpledb.parallel.ParallelQueryPlan
 
getSize() - Method in class simpledb.TupleDesc
 
getSlaveWorkerPlan() - Method in class simpledb.parallel.ParallelQueryPlan
 
getStatsMap() - Static method in class simpledb.TableStats
 
getStrings(int, String) - Static method in class simpledb.Utility
 
getTableAliasToIdMapping() - Method in class simpledb.LogicalPlan
 
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.getDbFile(int)).
getTableId() - Method in interface simpledb.PageId
 
getTableName(int) - Method in class simpledb.Catalog
 
getTableName() - Method in class simpledb.SeqScan
 
getTableStats(String) - Static method in class simpledb.TableStats
 
getThisWorker() - Method in class simpledb.parallel.Producer
 
getTotalRecords() - Method in class simpledb.LogFile
 
getTotalTuples(int) - Static method in class simpledb.HeapFileSplitter
 
getTransaction() - Method in class simpledb.Parser
 
getTransactionId() - Method in class simpledb.Query
 
getTuple(int[], int) - Static method in class simpledb.Utility
 
getTupleDesc() - Method in class simpledb.Aggregate
Returns the TupleDesc of this Aggregate.
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.HashEquiJoin
 
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.parallel.BloomFilterConsumer
 
getTupleDesc() - Method in class simpledb.parallel.BloomFilterProducer
 
getTupleDesc() - Method in class simpledb.parallel.CollectConsumer
 
getTupleDesc() - Method in class simpledb.parallel.CollectProducer
 
getTupleDesc() - Method in class simpledb.parallel.ShuffleConsumer
 
getTupleDesc() - Method in class simpledb.parallel.ShuffleProducer
 
getTupleDesc() - Method in class simpledb.parallel.TupleBag
 
getTupleDesc() - Method in class simpledb.Project
 
getTupleDesc() - Method in class simpledb.Rename
 
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
 
getTuples() - Method in class simpledb.parallel.CollectConsumer
 
getTuples() - Method in class simpledb.parallel.ShuffleConsumer
Retrieve a batch of tuples from the buffer of ExchangeMessages.
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
 
getWorkerID() - Method in class simpledb.parallel.ExchangeMessage
Get the worker id from which the message was sent
getWorkers() - Method in class simpledb.parallel.Server
 
getWorkers() - Method in class simpledb.parallel.ShuffleProducer
 
GROUPBY - Static variable in class simpledb.QueryPlanVisualizer
 
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
 
handleQueryStatement(ZQuery, TransactionId) - Method in class simpledb.Parser
 
handleTransactStatement(ZTransactStmt) - Method in class simpledb.Parser
 
hasAgg - Variable in class simpledb.LogicalPlan
 
HASH_JOIN - Static variable in class simpledb.QueryPlanVisualizer
 
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.parallel.Exchange.ParallelOperatorID
 
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
 
HashEquiJoin - Class in simpledb
The Join operator implements the relational join operation.
HashEquiJoin(JoinPredicate, DbIterator, DbIterator) - Constructor for class simpledb.HashEquiJoin
Constructor.
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.parallel.TupleBag.TupleBagIterator
 
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.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
 
HeapFileSplitter - Class in simpledb
Split all the heapfiles within a database to #worker parts.
HeapFileSplitter() - Constructor for class simpledb.HeapFileSplitter
 
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.
height - Variable in class simpledb.QueryPlanVisualizer.SubTreeDescriptor
 
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
host - Variable in class simpledb.parallel.SocketInfo
 
host - Variable in class simpledb.parallel.Worker
 

I

i - Variable in class simpledb.TupleIterator
 
id - Variable in class simpledb.parallel.SocketInfo
 
idGenerator - Static variable in class simpledb.parallel.Exchange.ParallelOperatorID
 
inBuffer - Variable in class simpledb.parallel.Server
The I/O buffer, all the ExchangeMessages sent to the server are buffered here.
inBuffer - Variable in class simpledb.parallel.Worker
The I/O buffer, all the ExchangeMessages sent to this worker are buffered here.
index - Variable in class simpledb.parallel.TupleBag.TupleBagIterator
 
inField - Variable in class simpledb.Rename
 
init() - Method in class simpledb.parallel.Server
 
init() - Method in class simpledb.parallel.Worker
Initiallize
innerBuffer - Variable in class simpledb.parallel.CollectConsumer
 
innerBufferIndex - Variable in class simpledb.parallel.CollectConsumer
innerBufferIndex and innerBuffer are used to buffer all the TupleBags this operator has received.
inRun - Variable in class simpledb.parallel.Worker.WorkerLivenessController
 
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.
insertBloomFilter(TransactionId, ParallelQueryPlan) - Method in class simpledb.parallel.BloomFilterOptimizer
add bloom filters
insertTuple(TransactionId, int, Tuple) - Method in class simpledb.BufferPool
Add a tuple to the specified table 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
 
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
 
isASC() - Method in class simpledb.OrderBy
 
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
 
isEos() - Method in class simpledb.parallel.TupleBag
 
isGUI - Static variable in class simpledb.parallel.Server
check if currently the system is under gui mode.
isPkey(String, String) - Method in class simpledb.JoinOptimizer
Return true if field is a primary key of the specified table, false otherwise
isRunning() - Method in class simpledb.parallel.Worker
Return true if the worker is now executing a query.
isSlotUsed(int) - Method in class simpledb.HeapPage
Returns true if associated slot on this page is filled.
it - Variable in class simpledb.OrderBy
 
it - Variable in class simpledb.TupleArrayIterator
 
iterator() - Method in interface simpledb.Aggregator
Create a DbIterator over group aggregate results.
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.parallel.TupleBag
 
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.
JOIN - Static variable in class simpledb.QueryPlanVisualizer
 
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
 

L

leftChild - Variable in class simpledb.QueryPlanVisualizer.SubTreeDescriptor
 
listIt - Variable in class simpledb.HashEquiJoin
 
listToString(ArrayList<Integer>) - Static method in class simpledb.Utility
 
loadMap() - Method in class simpledb.HashEquiJoin
 
loadSchema(String) - Method in class simpledb.Catalog
Reads the schema from a file and creates the appropriate tables in the database.
loadServer(String) - Static method in class simpledb.parallel.Server
 
loadWorkers(String) - Static method in class simpledb.parallel.ParallelUtility
 
localizeQueryPlan(DbIterator) - Method in class simpledb.parallel.Worker
localize the received query plan.
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.HeapFileSplitter
 
main(String[]) - Static method in class simpledb.LogicalPlan
 
main(String[]) - Static method in class simpledb.parallel.Server
 
main(String[]) - Static method in class simpledb.parallel.Worker
 
main(String[]) - Static method in class simpledb.Parser
 
main(String[]) - Static method in class simpledb.SimpleDb
 
mainThread - Variable in class simpledb.parallel.Server.ServerHandler
 
map - Variable in class simpledb.HashEquiJoin
 
MAP_SIZE - Static variable in class simpledb.HashEquiJoin
 
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.HeapPage
Abstraction to fill or clear a slot on this page.
masterWorkerPlan - Variable in class simpledb.parallel.ParallelQueryPlan
 
MAX_MS - Static variable in class simpledb.parallel.TupleBag
The max duration between two data transmissions Unit: milliseconds
MAX_SIZE - Static variable in class simpledb.parallel.TupleBag
Each Producer operator will accumulate tuples and then send the tuples to a corresponding producer operator.
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.
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
messageReceived(IoSession, Object) - Method in class simpledb.parallel.Server.ServerHandler
 
messageReceived(IoSession, Object) - Method in class simpledb.parallel.Worker.WorkerHandler
Got called everytime a message is received.
MIN_SIZE - Static variable in class simpledb.parallel.TupleBag
The min number of tuples in a tuple bag.
minaHandler - Variable in class simpledb.parallel.Server
 
minaHandler - Variable in class simpledb.parallel.Worker
The IoHandler for network communication.
minVal() - Method in class simpledb.StringHistogram
 
myid - Variable in class simpledb.TransactionId
 

N

nameOfAggregatorOp(Aggregator.Op) - Static method in class simpledb.Aggregate
 
needMaster - Variable in class simpledb.parallel.ParallelQueryPlan
 
newID(TransactionId) - Static method in class simpledb.parallel.Exchange.ParallelOperatorID
The only way to create a ParallelOperatorID.
newName - Variable in class simpledb.Rename
 
newName() - Method in class simpledb.Rename
 
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 - Variable in class simpledb.parallel.ParallelQueryPlanOptimizer
 
next() - Method in class simpledb.parallel.TupleBag.TupleBagIterator
 
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
 
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.HeapFile
Returns the number of pages in this HeapFile.
numPartition - Variable in class simpledb.parallel.PartitionFunction
 
numPartition() - Method in class simpledb.parallel.PartitionFunction
 
numReceived - Variable in class simpledb.parallel.BloomFilterConsumer
 
numSlots - Variable in class simpledb.HeapPage
 
numTuples() - Method in class simpledb.parallel.TupleBag
 

O

oByAsc - Variable in class simpledb.LogicalPlan
 
oByField - Variable in class simpledb.LogicalPlan
 
oId - Variable in class simpledb.parallel.Exchange.ParallelOperatorID
The id
oldData - Variable in class simpledb.HeapPage
 
oldDataLock - Variable in class simpledb.HeapPage
 
op - Variable in class simpledb.Query
 
open() - Method in class simpledb.Aggregate
 
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() - Method in class simpledb.HashEquiJoin
 
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.parallel.BloomFilterConsumer
 
open() - Method in class simpledb.parallel.BloomFilterProducer
 
open() - Method in class simpledb.parallel.CollectConsumer
 
open() - Method in class simpledb.parallel.CollectProducer
 
open() - Method in class simpledb.parallel.ShuffleConsumer
 
open() - Method in class simpledb.parallel.ShuffleProducer
 
open() - Method in class simpledb.Project
 
open() - Method in class simpledb.Rename
 
open() - Method in class simpledb.SeqScan
 
open() - Method in class simpledb.TupleArrayIterator
 
open() - Method in class simpledb.TupleIterator
 
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
 
OperatorCardinality - Class in simpledb
A utility class, which computes the estimated cardinalities of an operator tree.
OperatorCardinality() - Constructor for class simpledb.OperatorCardinality
 
operatorID - Variable in class simpledb.parallel.BloomFilterConsumer
 
operatorID - Variable in class simpledb.parallel.Exchange
 
operatorID - Variable in class simpledb.parallel.ExchangeMessage
 
optimize(TransactionId, ParallelQueryPlan, ParallelQueryPlanOptimizer) - Static method in class simpledb.parallel.ParallelQueryPlan
 
optimize(TransactionId, ParallelQueryPlan) - Method in class simpledb.parallel.ParallelQueryPlanOptimizer
Do the optimization
optimizedBy - Variable in class simpledb.parallel.ParallelQueryPlan
An optimizer should be conducted only once on a query
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.
ORDERBY - Static variable in class simpledb.QueryPlanVisualizer
 
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.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.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.HeapPageId
 
pageNumber() - Method in interface simpledb.PageId
 
parallelizeAggregate(DbIterator) - Method in class simpledb.parallel.AggregateOptimizer
Replace the aggregate operators in the local query plan with parallelized aggregate
parallelizeQueryPlan(TransactionId, DbIterator, SocketInfo[], SocketInfo, SocketInfo, Class<? extends PartitionFunction<?, ?>>) - Static method in class simpledb.parallel.ParallelQueryPlan
Insert shuffle producer/consumer and collect producer/consumer operators into the local query plan.
ParallelQueryPlan - Class in simpledb.parallel
A wrapper class which wraps the parallel plans of a local query plan.
ParallelQueryPlan() - Constructor for class simpledb.parallel.ParallelQueryPlan
 
ParallelQueryPlan.QueryPlanWrapper - Class in simpledb.parallel
 
ParallelQueryPlan.QueryPlanWrapper(DbIterator, DbIterator) - Constructor for class simpledb.parallel.ParallelQueryPlan.QueryPlanWrapper
 
ParallelQueryPlan.QueryPlanWrapper(DbIterator) - Constructor for class simpledb.parallel.ParallelQueryPlan.QueryPlanWrapper
 
ParallelQueryPlanOptimizer - Class in simpledb.parallel
Parallel query plan optimizer super class.
ParallelQueryPlanOptimizer() - Constructor for class simpledb.parallel.ParallelQueryPlanOptimizer
 
ParallelQueryPlanOptimizer(ParallelQueryPlanOptimizer) - Constructor for class simpledb.parallel.ParallelQueryPlanOptimizer
 
ParallelUtility - Class in simpledb.parallel
Utility methods
ParallelUtility() - Constructor for class simpledb.parallel.ParallelUtility
 
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
 
partition(Tuple, TupleDesc) - Method in class simpledb.parallel.PartitionFunction
Given an input tuple t, determine which partition to route it to.
partition(Tuple, TupleDesc) - Method in class simpledb.parallel.SingleFieldHashPartitionFunction
 
PartitionFunction<K,V> - Class in simpledb.parallel
The ShuffleProducer class uses an instance of the PartitionFunction class to decide which worker a tuple should be routed to.
PartitionFunction(int) - Constructor for class simpledb.parallel.PartitionFunction
Each partition function implementation must has a Class(int) style constructor
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
 
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.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
 
port - Variable in class simpledb.parallel.SocketInfo
 
port - Variable in class simpledb.parallel.Worker
 
preAppend() - Method in class simpledb.LogFile
 
pred - Variable in class simpledb.HashEquiJoin
 
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
 
primeNumbers - Static variable in class simpledb.parallel.BloomFilterProducer
 
primesUsed - Variable in class simpledb.parallel.BloomFilterConsumer
 
primesUsed - Variable in class simpledb.parallel.BloomFilterProducer
 
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.
printQueryPlanTree(DbIterator, PrintStream) - Method in class simpledb.QueryPlanVisualizer
 
printTree(QueryPlanVisualizer.SubTreeDescriptor, char[], int) - Method in class simpledb.QueryPlanVisualizer
 
processExpression(TransactionId, ZExpression, LogicalPlan) - Method in class simpledb.Parser
 
processList() - Method in class simpledb.HashEquiJoin
Returns the next tuple generated by the join, or null if there are no more tuples.
processNextStatement(InputStream) - Method in class simpledb.parallel.Server
 
processNextStatement(String) - Method in class simpledb.Parser
 
processNextStatement(InputStream) - Method in class simpledb.Parser
 
processQuery(Query) - Method in class simpledb.parallel.Server
 
Producer - Class in simpledb.parallel
 
Producer(Exchange.ParallelOperatorID) - Constructor for class simpledb.parallel.Producer
 
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
 
PROJECT - Static variable in class simpledb.QueryPlanVisualizer
 
ProjectOptimizer - Class in simpledb.parallel
Push down projects to minimize data transmission.
ProjectOptimizer() - Constructor for class simpledb.parallel.ProjectOptimizer
 
ProjectOptimizer(ParallelQueryPlanOptimizer) - Constructor for class simpledb.parallel.ProjectOptimizer
 
pushDownProject(DbIterator, HashSet<String>) - Method in class simpledb.parallel.ProjectOptimizer
 

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
 
queryPlan - Variable in class simpledb.parallel.ParallelQueryPlan.QueryPlanWrapper
 
queryPlan - Variable in class simpledb.parallel.Worker
The current query plan
QueryPlanVisualizer - Class in simpledb
 
QueryPlanVisualizer() - Constructor for class simpledb.QueryPlanVisualizer
 
QueryPlanVisualizer.SubTreeDescriptor - Class in simpledb
 
QueryPlanVisualizer.SubTreeDescriptor(QueryPlanVisualizer.SubTreeDescriptor, QueryPlanVisualizer.SubTreeDescriptor) - Constructor for class simpledb.QueryPlanVisualizer.SubTreeDescriptor
 
queryReceivedByWorker(int) - Method in class simpledb.parallel.Server
 

R

raf - Variable in class simpledb.LogFile
 
READ_ONLY - Static variable in class simpledb.Permissions
 
READ_WRITE - Static variable in class simpledb.Permissions
 
readNextTuple(DataInputStream, int) - Method in class simpledb.HeapPage
Suck up tuples from the source file.
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
 
receiveData(ExchangeMessage) - Method in class simpledb.parallel.Worker
This method should be called when a data item is received
receiveQuery(DbIterator) - Method in class simpledb.parallel.Worker
this method should be called when a query is received from the server.
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.parallel.TupleBag.TupleBagIterator
 
removeArg(String[], int) - Static method in class simpledb.parallel.ParallelUtility
 
RENAME - Static variable in class simpledb.QueryPlanVisualizer
 
Rename - Class in simpledb
Only used in lab6.
Rename(int, String, DbIterator) - Constructor for class simpledb.Rename
 
renamedField() - Method in class simpledb.Rename
 
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 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() - Method in class simpledb.HashEquiJoin
 
rewind() - Method in class simpledb.Insert
 
rewind() - Method in class simpledb.Join
 
rewind() - Method in class simpledb.OrderBy
 
rewind() - Method in class simpledb.parallel.BloomFilterConsumer
 
rewind() - Method in class simpledb.parallel.BloomFilterProducer
 
rewind() - Method in class simpledb.parallel.CollectConsumer
 
rewind() - Method in class simpledb.parallel.CollectProducer
 
rewind() - Method in class simpledb.parallel.ShuffleConsumer
 
rewind() - Method in class simpledb.parallel.ShuffleProducer
 
rewind() - Method in class simpledb.Project
 
rewind() - Method in class simpledb.Rename
 
rewind() - Method in class simpledb.SeqScan
 
rewind() - Method in class simpledb.TupleArrayIterator
Resets the iterator to the start.
rewind() - Method in class simpledb.TupleIterator
 
rightChild - Variable in class simpledb.QueryPlanVisualizer.SubTreeDescriptor
 
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.
run() - Method in class simpledb.parallel.BloomFilterConsumer.BloomFilterCollector
 
run() - Method in class simpledb.parallel.CollectProducer.WorkingThread
 
run() - Method in class simpledb.parallel.ShuffleProducer.WorkingThread
 
run() - Method in class simpledb.parallel.Worker.WorkerLivenessController
 
runningThread - Variable in class simpledb.parallel.CollectProducer
 

S

sampleSubsetPrime(int) - Static method in class simpledb.parallel.BloomFilterProducer
 
SCAN - Static variable in class simpledb.QueryPlanVisualizer
 
SELECT - Static variable in class simpledb.QueryPlanVisualizer
 
selectList - Variable in class simpledb.LogicalPlan
 
selectMasterWorker() - Method in class simpledb.parallel.Server
Select the master worker for the coming query
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(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 exception simpledb.DbException
 
serialVersionUID - Static variable in class simpledb.Delete
 
serialVersionUID - Static variable in class simpledb.Filter
 
serialVersionUID - Static variable in class simpledb.HashEquiJoin
 
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 class simpledb.parallel.BloomFilterBitSet
 
serialVersionUID - Static variable in class simpledb.parallel.BloomFilterConsumer
 
serialVersionUID - Static variable in class simpledb.parallel.BloomFilterProducer
 
serialVersionUID - Static variable in class simpledb.parallel.CollectConsumer
 
serialVersionUID - Static variable in class simpledb.parallel.CollectProducer
 
serialVersionUID - Static variable in class simpledb.parallel.Consumer
 
serialVersionUID - Static variable in class simpledb.parallel.Exchange.ParallelOperatorID
 
serialVersionUID - Static variable in class simpledb.parallel.Exchange
 
serialVersionUID - Static variable in class simpledb.parallel.ExchangeMessage
 
serialVersionUID - Static variable in class simpledb.parallel.PartitionFunction
 
serialVersionUID - Static variable in class simpledb.parallel.Producer
 
serialVersionUID - Static variable in class simpledb.parallel.ShuffleConsumer
 
serialVersionUID - Static variable in class simpledb.parallel.ShuffleProducer
 
serialVersionUID - Static variable in class simpledb.parallel.SingleFieldHashPartitionFunction
 
serialVersionUID - Static variable in class simpledb.parallel.SocketInfo
 
serialVersionUID - Static variable in class simpledb.parallel.TupleBag
 
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.Rename
 
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
 
Server - Class in simpledb.parallel
The parallel SimpleDB is consisted of one server and a bunch of workers.
Server(String, int, SocketInfo[]) - Constructor for class simpledb.parallel.Server
 
server - Variable in class simpledb.parallel.Server
 
server - Variable in class simpledb.parallel.Worker
The server address
Server.ServerHandler - Class in simpledb.parallel
 
Server.ServerHandler(Thread) - Constructor for class simpledb.parallel.Server.ServerHandler
 
serverPlan - Variable in class simpledb.parallel.ParallelQueryPlan
 
sessionIdle(IoSession, IdleStatus) - Method in class simpledb.parallel.Server.ServerHandler
 
setAttribute(K, V) - Method in class simpledb.parallel.PartitionFunction
A concrete implementation of a partition function may need some information to help it decide the tuple partitions.
setAttribute(String, String) - Method in class simpledb.parallel.SingleFieldHashPartitionFunction
This partition function only needs the index of the partition field in deciding the tuple partitions
setBeforeImage() - Method in class simpledb.HeapPage
 
setBeforeImage() - Method in interface simpledb.Page
 
setBuffer(LinkedBlockingQueue<ExchangeMessage>) - Method in class simpledb.parallel.Consumer
 
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.HashEquiJoin
 
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.parallel.BloomFilterConsumer
 
setChildren(DbIterator[]) - Method in class simpledb.parallel.BloomFilterProducer
 
setChildren(DbIterator[]) - Method in class simpledb.parallel.CollectConsumer
 
setChildren(DbIterator[]) - Method in class simpledb.parallel.CollectProducer
 
setChildren(DbIterator[]) - Method in class simpledb.parallel.ShuffleConsumer
 
setChildren(DbIterator[]) - Method in class simpledb.parallel.ShuffleProducer
 
setChildren(DbIterator[]) - Method in class simpledb.Project
 
setChildren(DbIterator[]) - Method in class simpledb.Rename
 
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.
setLogicalPlan(LogicalPlan) - Method in class simpledb.Query
 
setMasterWorkerPlan(CollectProducer) - Method in class simpledb.parallel.ParallelQueryPlan
 
setOperatorID(Exchange.ParallelOperatorID) - Method in class simpledb.parallel.ExchangeMessage
 
setPartitionFunction(PartitionFunction<?, ?>) - Method in class simpledb.parallel.ShuffleProducer
 
setPhysicalPlan(DbIterator) - Method in class simpledb.Query
 
setQuery(String) - Method in class simpledb.LogicalPlan
Set the text of the query representing this logical plan.
setRecordId(RecordId) - Method in class simpledb.Tuple
Set the RecordId information for this tuple.
setStatsMap(HashMap<String, TableStats>) - Static method in class simpledb.TableStats
 
setTableStats(String, TableStats) - Static method in class simpledb.TableStats
 
setThisWorker(Worker) - Method in class simpledb.parallel.Producer
 
setTransaction(Transaction) - Method in class simpledb.Parser
 
setWorkerID(String) - Method in class simpledb.parallel.ExchangeMessage
 
ShuffleConsumer - Class in simpledb.parallel
The consumer part of the Shuffle Exchange operator.
ShuffleConsumer(Exchange.ParallelOperatorID, SocketInfo[]) - Constructor for class simpledb.parallel.ShuffleConsumer
 
ShuffleConsumer(ShuffleProducer, Exchange.ParallelOperatorID, SocketInfo[]) - Constructor for class simpledb.parallel.ShuffleConsumer
 
ShuffleProducer - Class in simpledb.parallel
The producer part of the Shuffle Exchange operator.
ShuffleProducer(DbIterator, Exchange.ParallelOperatorID, SocketInfo[], PartitionFunction<?, ?>) - Constructor for class simpledb.parallel.ShuffleProducer
 
ShuffleProducer.WorkingThread - Class in simpledb.parallel
 
ShuffleProducer.WorkingThread() - Constructor for class simpledb.parallel.ShuffleProducer.WorkingThread
 
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.parallel.Server
 
shutdown() - Method in class simpledb.parallel.Worker
This method should be called whenever the system is going to shutdown
shutdown() - Method in class simpledb.Parser
 
shutdownVM() - Static method in class simpledb.parallel.ParallelUtility
Shutdown the java virtual machine
simpledb - package simpledb
 
SimpleDb - Class in simpledb
 
SimpleDb() - Constructor for class simpledb.SimpleDb
 
simpledb.parallel - package simpledb.parallel
 
SingleFieldHashPartitionFunction - Class in simpledb.parallel
The default implementation of the partition function.
SingleFieldHashPartitionFunction(int) - Constructor for class simpledb.parallel.SingleFieldHashPartitionFunction
 
size - Variable in class simpledb.parallel.BloomFilterConsumer
 
size - Variable in class simpledb.parallel.BloomFilterProducer
 
SocketInfo - Class in simpledb.parallel
A simple wrapper, cusotmized for SimpleDB, that wraps the socket information of both workers and the server (coordinator).
SocketInfo(String, int) - Constructor for class simpledb.parallel.SocketInfo
 
sourceWorkers - Variable in class simpledb.parallel.BloomFilterConsumer
 
sourceWorkers - Variable in class simpledb.parallel.CollectConsumer
 
SPACE - Static variable in class simpledb.QueryPlanVisualizer
 
spreadJoinKeySelection(ParallelQueryPlan) - Method in class simpledb.parallel.FilterOptimizer
Spread filters
SQL_COMMANDS - Static variable in class simpledb.Parser
 
start() - Method in class simpledb.parallel.Worker
 
start() - Method in class simpledb.parallel.Worker.WorkerLivenessController
 
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
 
startQuery(ParallelQueryPlan, SocketInfo) - Method in class simpledb.parallel.Server
 
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
 
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.getDbFile(int)) to retrieve a DbFile
t1 - Variable in class simpledb.HashEquiJoin
 
t1Alias - Variable in class simpledb.LogicalJoinNode
The first table to join (may be null).
t2 - Variable in class simpledb.HashEquiJoin
 
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
tableIdIterator() - Method in class simpledb.Catalog
 
tableMap - Variable in class simpledb.LogicalPlan
 
tables - Variable in class simpledb.LogicalPlan
 
tableStats - Variable in class simpledb.parallel.BloomFilterOptimizer
 
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
take(int) - Method in class simpledb.parallel.Consumer
Read a single ExchangeMessage from the queue that buffers incoming ExchangeMessages.
td - Variable in class simpledb.HeapPage
 
td - Variable in class simpledb.OrderBy
 
td - Variable in class simpledb.parallel.CollectConsumer
 
td - Variable in class simpledb.Project
 
td - Variable in class simpledb.Rename
 
td - Variable in class simpledb.TupleIterator
 
text - Variable in class simpledb.QueryPlanVisualizer.SubTreeDescriptor
 
textStartPosition - Variable in class simpledb.QueryPlanVisualizer.SubTreeDescriptor
 
thisWorker - Variable in class simpledb.parallel.Producer
The worker this operator is located at.
thisWorker - Variable in class simpledb.parallel.Worker.WorkerLivenessController
 
tId - Variable in class simpledb.parallel.Exchange.ParallelOperatorID
The transaction, to which the operator belongs
tid - Variable in class simpledb.Query
 
tid - Variable in class simpledb.Transaction
 
tidToFirstLogRecord - Variable in class simpledb.LogFile
 
timer - Variable in class simpledb.parallel.Worker.WorkerLivenessController
 
toShutdown - Variable in class simpledb.parallel.Worker
A indicator of shutting down the worker
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.parallel.Exchange.ParallelOperatorID
 
toString() - Method in class simpledb.parallel.SocketInfo
 
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
 
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
 
TupleBag - Class in simpledb.parallel
This class wraps a set of tuples.
TupleBag(Exchange.ParallelOperatorID, String) - Constructor for class simpledb.parallel.TupleBag
An empty tuple bag means the EOS of the operator
TupleBag(Exchange.ParallelOperatorID, String, Tuple[], TupleDesc) - Constructor for class simpledb.parallel.TupleBag
 
TupleBag.TupleBagIterator - Class in simpledb.parallel
 
TupleBag.TupleBagIterator() - Constructor for class simpledb.parallel.TupleBag.TupleBagIterator
 
TupleComparator - Class in simpledb
 
TupleComparator(int, boolean) - Constructor for class simpledb.TupleComparator
 
tupleDesc - Variable in class simpledb.parallel.TupleBag
 
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.HeapPage
 
tuples - Variable in class simpledb.parallel.CollectConsumer
 
tuples - Variable in class simpledb.parallel.TupleBag
The tuple data wrapped in the tuplebag.
tuples - Variable in class simpledb.TupleIterator
 
tups - Variable in class simpledb.TupleArrayIterator
 
Type - Enum in simpledb
Class representing a type in SimpleDB.
Type() - Constructor for enum simpledb.Type
 

U

unbind(NioSocketAcceptor) - Static method in class simpledb.parallel.ParallelUtility
unbind the acceptor from the binded port and close all the connections
upBarPosition - Variable in class simpledb.QueryPlanVisualizer.SubTreeDescriptor
 
UPDATE_RECORD - Static variable in class simpledb.LogFile
 
updateAggregateCardinality(Aggregate, Map<String, Integer>, Map<String, TableStats>) - Static method in class simpledb.OperatorCardinality
 
updateFilterCardinality(Filter, Map<String, Integer>, Map<String, TableStats>) - Static method in class simpledb.OperatorCardinality
 
updateHashEquiJoinCardinality(HashEquiJoin, Map<String, Integer>, Map<String, TableStats>) - Static method in class simpledb.OperatorCardinality
 
updateJoinCardinality(Join, Map<String, Integer>, Map<String, TableStats>) - Static method in class simpledb.OperatorCardinality
 
updateOperatorCardinality(Operator, Map<String, Integer>, Map<String, TableStats>) - Static method in class simpledb.OperatorCardinality
 
updateTD() - Method in class simpledb.Rename
 
usage - Static variable in class simpledb.HeapFileSplitter
 
usage - Static variable in class simpledb.parallel.Server
 
usage - Static variable in class simpledb.parallel.Worker
 
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

width - Variable in class simpledb.QueryPlanVisualizer.SubTreeDescriptor
 
Worker - Class in simpledb.parallel
Workers do the real query execution.
Worker(String, String) - Constructor for class simpledb.parallel.Worker
 
Worker.WorkerHandler - Class in simpledb.parallel
Mina acceptor handler.
Worker.WorkerHandler() - Constructor for class simpledb.parallel.Worker.WorkerHandler
 
Worker.WorkerLivenessController - Class in simpledb.parallel
The controller class which decides whether this worker should shutdown or not.
Worker.WorkerLivenessController(Worker) - Constructor for class simpledb.parallel.Worker.WorkerLivenessController
 
workerEOS - Variable in class simpledb.parallel.CollectConsumer
 
workerID - Variable in class simpledb.parallel.Worker
The ID of this worker, it's simply the address of this worker: host:port
workerIdToIndex - Variable in class simpledb.parallel.CollectConsumer
 
workerIdToIndex - Variable in class simpledb.parallel.Server
 
workers - Variable in class simpledb.parallel.BloomFilterOptimizer
 
workers - Variable in class simpledb.parallel.BloomFilterProducer
 
workers - Variable in class simpledb.parallel.Server
 
workersReceivedQuery - Variable in class simpledb.parallel.Server
 
writeFile(File, String) - Static method in class simpledb.parallel.ParallelUtility
 
writeHeapFile(ArrayList<Tuple>, File, int, Type[]) - Static method in class simpledb.HeapFileSplitter
 
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 L M N O P Q R S T U V W _