Uses of Package
edu.caltech.nanodb.storage
-
Packages that use edu.caltech.nanodb.storage Package Description edu.caltech.nanodb.commands This package contains the classes that represent the commands that the NanoSQL database recognizes.edu.caltech.nanodb.expressions This package contains classes for representing and evaluating arithmetic and logical expressions.edu.caltech.nanodb.indexes edu.caltech.nanodb.plannodes This package contains classes for representing query execution plans, as well as analyzing their costs.edu.caltech.nanodb.queryast edu.caltech.nanodb.queryeval This package contains the query-evaluation components of the database.edu.caltech.nanodb.relations This package contains the basic data-types for representing relations in NanoDB.edu.caltech.nanodb.server edu.caltech.nanodb.storage This package contains the classes for the Storage Manager, which is responsible for how data is stored in and retrieved from database files.edu.caltech.nanodb.storage.heapfile This package provides a naive implementation of the heap file organization for NanoDB.edu.caltech.nanodb.storage.writeahead This package contains the implementation for the write-ahead log, which allows us to provide transaction atomicity, consistency and durability.edu.caltech.nanodb.transactions This package contains classes for managing transactions at the logical level, such as concurrency control and isolation, deadlock detection and aborting transactions. -
Classes in edu.caltech.nanodb.storage used by edu.caltech.nanodb.commands Class Description StorageManager The Storage Manager provides facilities for managing files of tuples, including in-memory buffering of data pages and support for transactions.TupleFile This interface defines the most basic operations that all files storing tuples must support. -
Classes in edu.caltech.nanodb.storage used by edu.caltech.nanodb.expressions Class Description FilePointer This class represents a pointer to a location within a database file.Pinnable This interface provides the basic "pin" and "unpin" operations that pinnable objects need to provide. -
Classes in edu.caltech.nanodb.storage used by edu.caltech.nanodb.indexes Class Description PageTuple StorageException This class and its subclasses represent general storage errors that can be encountered when manipulating the various data files that comprise the database.StorageManager The Storage Manager provides facilities for managing files of tuples, including in-memory buffering of data pages and support for transactions.TupleFile This interface defines the most basic operations that all files storing tuples must support. -
Classes in edu.caltech.nanodb.storage used by edu.caltech.nanodb.plannodes Class Description FilePointer This class represents a pointer to a location within a database file.TupleFile This interface defines the most basic operations that all files storing tuples must support. -
Classes in edu.caltech.nanodb.storage used by edu.caltech.nanodb.queryast Class Description TableManager This interface specifies the operations performed specifically on table files. -
Classes in edu.caltech.nanodb.storage used by edu.caltech.nanodb.queryeval Class Description StorageManager The Storage Manager provides facilities for managing files of tuples, including in-memory buffering of data pages and support for transactions. -
Classes in edu.caltech.nanodb.storage used by edu.caltech.nanodb.relations Class Description DBFile This class provides page-level access to a database file, which contains some kind of data utilized in a database system.FilePointer This class represents a pointer to a location within a database file.Pinnable This interface provides the basic "pin" and "unpin" operations that pinnable objects need to provide.TableManager This interface specifies the operations performed specifically on table files.TupleFile This interface defines the most basic operations that all files storing tuples must support. -
Classes in edu.caltech.nanodb.storage used by edu.caltech.nanodb.server Class Description StorageManager The Storage Manager provides facilities for managing files of tuples, including in-memory buffering of data pages and support for transactions. -
Classes in edu.caltech.nanodb.storage used by edu.caltech.nanodb.storage Class Description BufferManager The buffer manager reduces the number of disk IO operations by managing an in-memory cache of data pages.BufferManager.CachedPageInfo This helper class keeps track of a data page that is currently cached.BufferManager.SessionPinCount This helper class records the pin-count of a data page as imposed by a given session, so that we can forcibly release the session's pins after each command the session completes.BufferManagerObserver This interface allows other classes to respond to operations performed by theBufferManager
.DBFile This class provides page-level access to a database file, which contains some kind of data utilized in a database system.DBFileReader This class provides the basic abilty to read aDBFile
as a single sequential file, obscuring the fact that it is actually broken into pages.DBFileType This enumeration specifies the different types of data file that the database knows about.DBPage This class represents a single page in a database file.DBPageID A class representing the unique identity of aDBPage
, used as a key for tracking pages in maps.FileManager This interface specifies all operations that file managers must provide.FilePointer This class represents a pointer to a location within a database file.InvalidFilePointerException This exception class can be thrown when a file-pointer is discovered to be invalid for some reason.PageReader This class facilitates sequences of read operations against a singleDBPage
object, by providing "position" state that is also updated after each read is performed.PageWriter This class extends thePageReader
class to provide write operations as well as read operations.Pinnable This interface provides the basic "pin" and "unpin" operations that pinnable objects need to provide.StorageException This class and its subclasses represent general storage errors that can be encountered when manipulating the various data files that comprise the database.StorageManager The Storage Manager provides facilities for managing files of tuples, including in-memory buffering of data pages and support for transactions.TableManager This interface specifies the operations performed specifically on table files.TupleFile This interface defines the most basic operations that all files storing tuples must support.TupleFileManager This interface defines the operations that can be performed onTupleFile
s, but that are at a higher level of implementation than the tuple file itself. -
Classes in edu.caltech.nanodb.storage used by edu.caltech.nanodb.storage.heapfile Class Description DBFile This class provides page-level access to a database file, which contains some kind of data utilized in a database system.DBFileType This enumeration specifies the different types of data file that the database knows about.DBPage This class represents a single page in a database file.FilePointer This class represents a pointer to a location within a database file.InvalidFilePointerException This exception class can be thrown when a file-pointer is discovered to be invalid for some reason.PageTuple Pinnable This interface provides the basic "pin" and "unpin" operations that pinnable objects need to provide.StorageManager The Storage Manager provides facilities for managing files of tuples, including in-memory buffering of data pages and support for transactions.TupleFile This interface defines the most basic operations that all files storing tuples must support.TupleFileManager This interface defines the operations that can be performed onTupleFile
s, but that are at a higher level of implementation than the tuple file itself. -
Classes in edu.caltech.nanodb.storage used by edu.caltech.nanodb.storage.writeahead Class Description BufferManager The buffer manager reduces the number of disk IO operations by managing an in-memory cache of data pages.DBFile This class provides page-level access to a database file, which contains some kind of data utilized in a database system.DBFileReader This class provides the basic abilty to read aDBFile
as a single sequential file, obscuring the fact that it is actually broken into pages.DBFileWriter A subclass ofDBFileReader
, this class provides the basic ability to read and write aDBFile
as a single sequential file, obscuring the fact that it is actually broken into pages.DBPage This class represents a single page in a database file.StorageManager The Storage Manager provides facilities for managing files of tuples, including in-memory buffering of data pages and support for transactions. -
Classes in edu.caltech.nanodb.storage used by edu.caltech.nanodb.transactions Class Description BufferManagerObserver This interface allows other classes to respond to operations performed by theBufferManager
.DBPage This class represents a single page in a database file.StorageManager The Storage Manager provides facilities for managing files of tuples, including in-memory buffering of data pages and support for transactions.