Uses of Interface
io.permazen.kv.KVStore
Package
Description
Abstraction layer allowing access to a
Database
using normal Java objects.Core classes for the Permazen Java persistence layer.
Classes associated with
Jsck
, the Permazen key/value database consistency checker.byte[]
array key/value store API and related utility classes.A simple
KVStore
implementation based on a sorted array of key/value pairs.KVDatabase
implementation based on Oracle's Berkeley DB Java Edition.Caching
KVStore
and KVDatabase
layers.KVDatabase
implementation based on FoundationDB.KVDatabase
implementation based on LevelDB.KVDatabase
implementation based on LMDB.Utility classes for MVCC type operations using a
KVStore
.AtomicKVStore
and KVDatabase
implementations based
on H2 MVStore.A distributed
KVDatabase
based on the Raft consensus algorithm.A partition-tolerant
KVDatabase
that automatically migrates between a clustered
RaftKVDatabase
and a private non-clustered "standalone mode"
KVDatabase
, based on availability of the Raft cluster.A simple in-memory implementation of the
KVDatabase
interface.KVDatabase
implementation based on Google Cloud Spanner.KVDatabase
implementations based on SQL connections.Permazen key/value unit test support classes.
Utility classes relating to the
KVDatabase
interface.KVDatabase
implementation based on Xodus.Spring Framework integration classes.
-
Uses of KVStore in io.permazen
Modifier and TypeMethodDescriptionPermazen.createDetachedTransaction
(KVStore kvstore, ValidationMode validationMode) Create a newDetachedPermazenTransaction
based on the provided key/value store. -
Uses of KVStore in io.permazen.core
Modifier and TypeMethodDescriptionDetachedTransaction.getKVStore()
Get the underlyingKVStore
that holds this detached transaction's state.Modifier and TypeMethodDescriptionstatic void
Layout.copyMetaData
(KVStore src, KVStore dst) Copy non-object meta-data from oneKVStore
to another.Database.createDetachedTransaction
(KVStore kvstore, TransactionConfig txConfig) Create a detached transaction based on the provided key/value store.static void
Layout.deleteObjectData
(KVStore kv) Delete all object and index data from the givenKVStore
.static CoreIndex1<Integer,
ObjId> Layout.getSchemaIndex
(KVStore kv) Get aCoreIndex1
view of the object schema index in a key/value database.static SchemaBundle.Encoded
Read encodedSchemaBundle
data from the given key/value store.void
Rewrite the schema and storage ID tables in the given key/value store with the contents of this instance. -
Uses of KVStore in io.permazen.jsck
-
Uses of KVStore in io.permazen.kv
Modifier and TypeInterfaceDescriptioninterface
Implemented byKVStore
s that must beCloseableKVStore.close()
ed when no longer in use.interface
KVDatabase
transaction API.Modifier and TypeMethodDescriptionKVPairIterator.getKVStore()
Get theKVStore
associated with this instance.ModifierConstructorDescriptionKVPairIterator
(KVStore kv, byte[] prefix) Convenience constructor for forward iteration over all keys having a given prefix.KVPairIterator
(KVStore kv, byte[] prefix, boolean reverse) Convenience constructor for iteration over all keys having a given prefix.KVPairIterator
(KVStore kv, KeyRange keyRange) Convenience constructor for forward iteration over a specified range.KVPairIterator
(KVStore kv, KeyRange keyRange, KeyFilter keyFilter, boolean reverse) Primary constructor. -
Uses of KVStore in io.permazen.kv.array
Modifier and TypeClassDescriptionclass
A simple read-onlyKVStore
based on a sorted array of key/value pairs.class
ArrayKVDatabase
transaction.class
AtomicKVStore
based onArrayKVStore
plus a write-ahead log and background compaction.Modifier and TypeMethodDescriptionvoid
ArrayKVWriter.writeMerged
(KVStore kvstore, Iterator<KVPair> kvIterator, Mutations mutations) Merge the given key/value pair iteration with the specified mutations and write out the merged combination. -
Uses of KVStore in io.permazen.kv.bdb
Modifier and TypeClassDescriptionclass
Oracle Berkeley DB Java EditionKVTransaction
implementation. -
Uses of KVStore in io.permazen.kv.caching
Modifier and TypeClassDescriptionclass
A caching layer for read-onlyKVStore
's that have high latency for individual reads but low latency for consecutive key/value pairs in aKVStore.getRange()
range read.class
A transaction associated with aCachingKVDatabase
.ModifierConstructorDescriptionCachingKVStore
(KVStore kvstore, ExecutorService executor, long rttEstimate) Constructor. -
Uses of KVStore in io.permazen.kv.fdb
Modifier and TypeClassDescriptionclass
AKVStore
view of a FoundationDBTransaction
.class
FoundationDB transaction. -
Uses of KVStore in io.permazen.kv.leveldb
Modifier and TypeClassDescriptionclass
AnAtomicKVStore
view of a LevelDB database.class
StraightforwardKVStore
view of a LevelDB database.class
LevelDBKVDatabase
transaction.class
Read-onlyKVStore
view of a LevelDBSnapshot
. -
Uses of KVStore in io.permazen.kv.lmdb
Modifier and TypeClassDescriptionclass
KVStore
view of a LMDB transaction usingbyte[]
array buffers.class
LMDBKVTransaction
usingbyte[]
arrays buffers.class
LMDBKVStore<T>
StraightforwardKVStore
view of a LMDB transaction.class
LMDB transaction viewed as aKVTransaction
. -
Uses of KVStore in io.permazen.kv.mvcc
Modifier and TypeInterfaceDescriptioninterface
Extension of theKVStore
interface for implementations that support atomic, batched reads and writes.interface
Presents a mutable view of an underlying read-onlyKVStore
and records the mutations in memory.Modifier and TypeClassDescriptionclass
Wrapper class that presents anAtomicKVStore
view of aKVDatabase
, using individual transactions for each operation.class
AKVTransaction
that is based on a snapshot from an originalKVTransaction
and that can, at some arbitrary later time, be merged back into a newKVTransaction
from the same database, assuming no conflicting changes have occurred in the meantime.class
Provides aKVStore
view of an underlyingConcurrentNavigableMap<byte[], byte[]>
whose keys are sorted lexicographically as unsigned bytes.class
Straightforward implementation of theDeltaKVStore
interface.class
SnapshotKVDatabase
transaction.Modifier and TypeMethodDescriptionprotected KVStore
SnapshotKVTransaction.delegate()
Get the underlyingKVStore
.DeltaKVStore.getBaseKVStore()
Get theKVStore
that underlies this instance.MutableView.getBaseKVStore()
Modifier and TypeMethodDescriptionstatic void
Deprecated.void
Apply all mutations contained in this instance to the givenKVStore
.void
MutableView.setKVStore
(KVStore kv) Swap out the underlyingKVStore
associated with this instance.ModifierConstructorDescriptionMutableView
(KVStore kv) Constructor.MutableView
(KVStore kv, boolean trackReads) Constructor with optional read tracking.MutableView
(KVStore kv, Reads reads, Writes writes) MutableView
(KVStore kv, Writes writes) Constructor with no read tracking and caller-providedWrites
. -
Uses of KVStore in io.permazen.kv.mvstore
Modifier and TypeClassDescriptionclass
StraightforwardKVStore
view of anMVMap
.class
A read-only snapshot anMVMap
.class
class
MVStoreKVDatabase
transaction. -
Uses of KVStore in io.permazen.kv.raft
-
Uses of KVStore in io.permazen.kv.raft.fallback
-
Uses of KVStore in io.permazen.kv.simple
Modifier and TypeClassDescriptionclass
KVTransaction
implementation forSimpleKVDatabase
.class
Transaction associated with aXMLKVDatabase
. -
Uses of KVStore in io.permazen.kv.spanner
Modifier and TypeClassDescriptionclass
Provides a (read-only)KVStore
view of aReadContext
.class
Provides a mutableKVStore
view of aReadContext
.class
SpannerKVDatabase
transaction. -
Uses of KVStore in io.permazen.kv.sql
-
Uses of KVStore in io.permazen.kv.test
Modifier and TypeMethodDescriptionvoid
KVDatabaseTest.RandomTask.performRandomAccess
(KVStore tx) void
KVDatabaseTest.RandomTask.runRandomAccess
(KVStore tx) protected RuntimeException
Dump KV contents to the log.protected RuntimeException
Dump KV portion to the log.protected String
KVTestSupport.toXmlString
(KVStore kv) protected String
KVTestSupport.toXmlString
(KVStore kv, byte[] minKey, byte[] maxKey) -
Uses of KVStore in io.permazen.kv.util
Modifier and TypeClassDescriptionclass
AForwardingKVStore
also implementingCloseableKVStore
, with some associated underlyingCloseable
resource to close whenCloseableForwardingKVStore.close()
'd.class
class
Provides aKVStore
view of an underlyingConcurrentNavigableMap<byte[], byte[]>
whose keys are sorted lexicographically as unsigned bytes.class
class
class
Provides a read-only view of an underlyingKVStore
.Modifier and TypeFieldDescriptionprotected final KVStore
AbstractKVIterator.kv
The underlyingKVStore
.protected final KVStore
AbstractKVNavigableMap.kv
The underlyingKVStore
.protected final KVStore
AbstractKVNavigableSet.kv
The underlyingKVStore
.Modifier and TypeMethodDescriptionprotected KVStore
CloseableForwardingKVStore.delegate()
protected abstract KVStore
ForwardingKVStore.delegate()
Get the underlyingKVStore
.protected KVStore
UnmodifiableKVStore.delegate()
Modifier and TypeMethodDescriptionstatic PrefixKVStore
Create aPrefixKVStore
instance using the specified prefix and underlyingKVStore
.ModifierConstructorDescriptionprotected
AbstractKVIterator
(KVStore kv, boolean prefixMode, boolean reversed) Convenience constructor for when there are no range restrictions.protected
AbstractKVIterator
(KVStore kv, boolean prefixMode, boolean reversed, byte[] prefix) Convenience constructor for when the range of visibleKVStore
keys is all keys sharing a givenbyte[]
prefix.protected
AbstractKVIterator
(KVStore kv, boolean prefixMode, boolean reversed, KeyRange keyRange, KeyFilter keyFilter) Primary constructor.protected
AbstractKVNavigableMap
(KVStore kv, boolean prefixMode) Convenience constructor for when there are no range restrictions.protected
AbstractKVNavigableMap
(KVStore kv, boolean prefixMode, boolean reversed, KeyRange keyRange, KeyFilter keyFilter, Bounds<K> bounds) Internal constructor.protected
AbstractKVNavigableMap
(KVStore kv, boolean prefixMode, byte[] prefix) Convenience constructor for when the range of visibleKVStore
keys is all keys sharing a givenbyte[]
prefix.protected
AbstractKVNavigableMap
(KVStore kv, boolean prefixMode, KeyRange keyRange) Primary constructor.protected
AbstractKVNavigableSet
(KVStore kv, boolean prefixMode) Convenience constructor for when there are no range restrictions.protected
AbstractKVNavigableSet
(KVStore kv, boolean prefixMode, boolean reversed, KeyRange keyRange, KeyFilter keyFilter, Bounds<E> bounds) Internal constructor.protected
AbstractKVNavigableSet
(KVStore kv, boolean prefixMode, byte[] prefix) Convenience constructor for when the range of visibleKVStore
keys is all keys sharing a givenbyte[]
prefix.protected
AbstractKVNavigableSet
(KVStore kv, boolean prefixMode, KeyRange keyRange) Primary constructor.CloseableForwardingKVStore
(KVStore kvstore, Runnable closeAction) Constructor.Constructor for when there are no range restrictions.protected
KVNavigableMap
(KVStore kv, boolean reversed, KeyRange keyRange, KeyFilter keyFilter) Primary constructor.KVNavigableMap
(KVStore kv, byte[] prefix) Constructor for when the range of visibleKVStore
keys is all keys sharing a givenbyte[]
prefix.Constructor for when there are no range restrictions.protected
KVNavigableSet
(KVStore kv, boolean reversed, KeyRange keyRange, KeyFilter keyFilter) Primary constructor.KVNavigableSet
(KVStore kv, byte[] prefix) Constructor for when the range of visibleKVStore
keys is all keys sharing a givenbyte[]
prefix.UnmodifiableKVStore
(KVStore kvstore) Constructor.XMLSerializer
(KVStore kv) Constructor. -
Uses of KVStore in io.permazen.kv.xodus
-
Uses of KVStore in io.permazen.spring
Modifier and TypeMethodDescriptionprotected KVStore
KVStoreHttpMessageConverter.readInternal
(Class<? extends KVStore> clazz, HttpInputMessage input) Modifier and TypeMethodDescriptionprotected Long
KVStoreHttpMessageConverter.getContentLength
(KVStore kvstore, MediaType mediaType) static Long
KVStoreHttpMessageConverter.getKVStoreContentLength
(KVStore kvstore) Determine the content length of the given key/value store when encoded as payload.static void
KVStoreHttpMessageConverter.readKVStore
(KVStore kvstore, HttpInputMessage input) Decode a key/value store HTTP payload.protected void
KVStoreHttpMessageConverter.writeInternal
(KVStore kvstore, HttpOutputMessage output) static void
KVStoreHttpMessageConverter.writeKVStore
(KVStore kvstore, HttpOutputMessage output) Encode a key/value store HTTP payload.Modifier and TypeMethodDescriptionprotected KVStore
KVStoreHttpMessageConverter.readInternal
(Class<? extends KVStore> clazz, HttpInputMessage input)
apply(io.permazen.kv.mvcc.Mutations)
instead