|
|||||||||
PREV NEXT | FRAMES NO FRAMES |
BPlusTreeNode
interface.Database
interface that can be used as
a starting point for database implementation.DatabaseBackend
implementation.DatabaseBackend
:s.ShadowCopyTxnDatabaseFileManager
implementations.Lock
adapter.String
Hasher
:s that use a
MessageDigest
to produce the hash.RecordMoveListener
on the proxied backend.
IllegalStateException
if
the database backend is closed.
IllegalStateException
if the transaction has been
finished.
Iterator
that iterates backwards through the database
records starting with the currently referenced record.
Serializer
for Boolean
values.Comparable
keys.
Iterator
over the B+ Tree's leaf nodes.DatabaseBackend
provides a B+ Tree index for
the keys of another, proxied DatabaseBackend
.BPlusTreeIndexBackend
objects.DatabaseBackendFactory
for building
BPlusTreeIndexBackend
objects.FileBackedNodeRepositoryBuilder
with a default
value for the value serializer.ShadowCopyTxnDatabaseFileManager
that can be used
specifically for the
BPlusTreeIndexBackend
.Serializer
for Byte
values.Serializer
for Character
values that may be
null
.Serializer
for Character
values.Character
hasher.ConcurrentModificationException
if the contents of the tree
has changed in a way that invalidates the iterator.
super.close()
.
super.close()
is called.
close
method to acquire a
write lock on the database before calling super.close()
.
close
on the backend.
AbstractTransactionalDatabase.close()
when it has acquired an
exclusive write lock on the database.
compact
on the proxied backend.
Comparator
compares Comparable
objects.Comparable.compareTo(Object)
method
of o1
.
Serializer
serializes Integer
values to a
big-endian byte
array of configurable size.Serializer
that uses the default value to represent
null
.
Serializer
with a custom value to represent null
.
Serializer
serializes Integer
values to a
big-endian byte
array of configurable size.Serializer
.
Serializer
serializes Long
values to a
big-endian byte
array of configurable size.Serializer
that uses the default value to represent
null
.
Serializer
.
Serializer
serializes Long
values to a
big-endian byte
array of configurable size.Serializer
.
DatabaseBackend
uses a B+ Tree for storing
its records.DatabaseBackendFactory
for creating
ConstantRecordSizeBPlusTreeBackend
backends.ConstantRecordSizeHeapBackend
objects.DatabaseBackendFactory
for creating
ConstantRecordSizeHeapBackend
objects.ConstantRecordSizeHeapBackend
objects.
ConstantSizeStringSerializer
that can handle
null
values.null
value
"[null]"
.
null
values.
Serializer
serializes strings into constant size byte arrays.Hasher
.HeapBackend
object.
BPlusTreeIndexBackend
TransactionCollaborator
for a read only transaction.
TransactionCollaborator
for a read/write transaction.
DatabaseBackend
is responsible for how keys and values are stored
and laid out in the underlying storage.FileBackedNodeRepository.writeContentsTo(OutputStream)
is 65535
bytes.
FileBackedNodeRepository.writeContentsTo(java.io.OutputStream)
is
65536 bytes.
NodeSizeStrategy
is a
FixedSizeNodeSizeStrategy
with a node size of 4096 bytes.
null
value.
null
value.
Serializer
for Double
values.long
value to an eight bytes long, big-endian byte
array.
Map.Entry
.
Map
.
Map
since
that would require a transaction.
Database.insert(Object, Object)
that does not
check if the key already exists in the database.
NodeRepository
stores data in a file.FileBackedNodeRepository
objects.super.finalize()
.
Comparable
) keys
(i.e.
Comparator
is equal to the Comparator
used by the B+ Tree, the tree's fast find method is used.
Hasher
and the natural
ordering of its (Comparable
) keys (i.e., not a custom key
Comparator
), use the tree's fast find method.
Hasher
and a key
Comparator
that is equal to the supplied Comparator
, use
the tree's efficient find method.
Cursor
at the found record.
SearchMode
.
SearchMode
.
Cursor
at the first record in the database.
Serializer
serializes BigInteger
values to a
big-endian byte
array of configurable size using BigInteger
's
constructor and toByteArray
methods.Serializer
.
Serializer
.
Serializer
for BigInteger
values to byte
arrays of a fixed size.Serializer
.
ByteArrayOutputStream
that writes to a
preallocated byte array.Serializer
for Float
values.forEachKey
method.
DatabaseBackend.forEachKey(ForEachKeyCallback)
method.DatabaseBackend
object.
noOfBits
least significant
bits in a byte.
char
value encoded in the big-endian, byte array.
getContentsVersion
on the proxied backend.
getFirstPosition
on the proxied backend.
int
value encoded in the big-endian, byte array.
Comparator
used for establishing the ordering of the keys
in the B+ Tree.
Set
containing all keys in the database.
getLastPosition
on the proxied backend.
UnsupportedOperationException
.
ReadWriteLock
.
long
value encoded in the byte array.
BigInteger
data.
getNextPosition
on the proxied backend.
getPreviousPosition
on the proxied backend.
UnsupportedOperationException
.
DatabaseFiles
object.
Set
containing all database records (keys and
values).
short
value encoded in the byte array.
Collection
containing all values in the
database.
Hasher.fromBytes(byte[])
method to create a byte array to return.
Map.Entry
.
Map
.
Map
since
that would require a transaction.
Hasher
is used for converting values into a hash.Hasher
implementations.0
in the supplied file and the buffer size
set to 8192 bytes.
HeapBackend
objects.DatabaseBackendFactory
for creating HeapBackend
objects.ShadowCopyTxnDatabaseFileManager
that can be used
specifically for the HeapBackend
.null
value.
Serializer
for Integer
values that may be null
.Serializer
for Integer
values.Integer
hasher.byte
array to an object of the type
handled by the Serializer
implementation.
byte
array to an object of the type
handled by the Serializer
implementation.
isClosed
method to acquire a
read lock on the database before calling super.isClosed()
.
true
if this B+ Tree supports iteration.
null
values?
true
if v.equals(hasher.hash(v))
for all values v
accepted by the hasher.
Database
participate in the
transaction read only?
Iterator
for iterating over the tree's Record
:s.
Iterator
for iterating over the tree's keys.
Cursor
at the last record in the database.
Database
implementation keeps a rollback log for
read/write transactions.LoggingTransactionalDatabase
objects.Serializer
for Long
values that may be null
.Serializer
for Long
values.Long
hasher.LRUCacheBackend
is a proxy for another DatabaseBackend
object and caches results from searches and updates.DatabaseBackendFactory
for building LruCacheBackend
objects.NodeRepositoryBuilder
for building
LruCacheNodeRepository
objects.DatabaseBackend
implementation
that stores the data in a Map
implementation.MapBackend
that will use a standard HashMap
for storing the data.
MapBackend
that will use the supplied Map
for storing the data.
Map.Entry
that can be used by
classes implementing the Map
interface.BPlusTree
uses a NodeRepository
to store and retrieve
tree nodes.NodeRepository
builder objects.FileBackedNodeRepository
.NotEnoughDataException
.
NotEnoughDataException
.
NodeSizeStrategy
uses a fixed number of records per node.Database
interface.Database
implementations.DatabaseBackend
and DatabaseBackendFactory
interfaces.ConstantRecordSizeBPlusTreeBackend
database backend.LruCacheBackend
and LruCacheBackendFactory
.HeapBackend
and HeapBackendFactory
.ConstantRecordSizeHeapBackend
and ConstantRecordSizeHeapBackendFactory
.MapBackend
.BPlusTreeIndexBackend
and BPlusTreeIndexBackendFactory
.AbstractDatabase
.SimpleDatabase
.AbstractTransactionalDatabase
.LoggingTransactionalDatabase
.ShadowCopyTransactionalDatabase
.java.io
package if they
had been a part of Java.Hasher
interface used by the BPlusTree
and some implementations of it.Serializer
interface and implementations.BPlusTree
class and support classes and interfaces.java.util.concurrent
package if they
had been a part of Java.NodeSizeStrategy
gives node sizes that depend on where in the
file they are stored.RandomAccess
' current position.
InputStream
.
BigInteger
value from the current position of the RandomAccess
.
BigInteger
value from the current position of the InputStream
.
Boolean
value from the current position of the RandomAccess
.
Boolean
value from the current position of the InputStream
.
Byte
value from the current position of the RandomAccess
.
Byte
value from the current position of the InputStream
.
Character
value from the current position of the RandomAccess
.
Character
value from the current position of the InputStream
.
Double
value from the current position of the RandomAccess
.
Double
value from the current position of the InputStream
.
Float
value from the current position of the RandomAccess
.
Float
value from the current position of the InputStream
.
Integer
value from the current position of the RandomAccess
.
Integer
value from the current position of the InputStream
.
Integer
value from the current position of the RandomAccess
.
Integer
value from the current position of the InputStream
.
Long
value from the current position of the RandomAccess
.
Long
value from the current position of the InputStream
.
Long
value from the current position of the RandomAccess
.
Long
value from the current position of the InputStream
.
Short
value from the current position of the RandomAccess
.
Short
value from the current position of the InputStream
.
RandomAccess
.
InputStream
.
DatabaseBackend
.RecordMoveListener
from the proxied backend.
RandomAccess
.
InputStream
.
Serializer
for generic Serializable
objects.Serializer
implementations.byte
array.
byte
array.
DatabaseBackend
:s to
serialize data when writing it to disk, and to interpret serialized data when
reading it again.FileBackedNodeRepository.writeContentsTo(java.io.OutputStream)
.
Comparator
used for comparing keys.
Serializer
.
NodeSizeStrategy
.
false
.
Serializer
.
ShadowCopyTransactionalDatabase
.TransactionCollaborator
for read
only transactions.Serializer
for Short
values that may be null
.Serializer
for Short
values.Short
hasher.Database
.DatabaseFiles
implementation contains a single
ReadWritableFile
and a proxied DatabaseFiles
object.SingleAndProxiedDatabaseFile
object.
DatabaseFiles
implementation contains a single
ReadWritableFile
.SingleDatabaseFile
.
ShadowCopyTxnDatabaseFileManager
contains a
SingleAndProxiedDatabaseFile
and a proxied file manager for managing
the proxied file.ShadowCopyTxnDatabaseFileManager
manages a
SingleDatabaseFile
.String
serializer that can handle null
values.Serializer
for String
values.Hasher
uses a MessageDigest
object with a configurable
hash algorithm to produce a hash of a configurable length from a
String
.Hasher
uses a MessageDigest
object with a configurable
hash algorithm to produce an eight bytes long hash from a String
.Database
interface with a method for
joining a transaction manually.Transaction.commit()
method if the
current transaction is unable to commit.Serializer
for unsigned byte values (between 0 and 255).Iterator
for iterating over the tree's values.
writeContentsTo
on the proxied backend.
RandomAccess
.
OutputStream
.
|
|||||||||
PREV NEXT | FRAMES NO FRAMES |