Bloom filters provide a probablistic way to test for membership in a set using a fixed amount of space. This is useful for reducing work when the test definitively rules out the existence of a record.
Bloom filters provide a probablistic way to test for membership in a set using a fixed amount of space. This is useful for reducing work when the test definitively rules out the existence of a record.
Connections are stateful components which manage database identity and versioning. A connection is generally backed by a merkledag node store and a ref tracker.
More advanced connection implementations may optionally implement additional logic controlling updates, such as locking, conflict resolution, and authorization rules.
Connections are stateful components which manage database identity and versioning. A connection is generally backed by a merkledag node store and a ref tracker. More advanced connection implementations may optionally implement additional logic controlling updates, such as locking, conflict resolution, and authorization rules.
Core database functions.
Core database functions.
Common code and utilities for working with MerkleDAG graphs.
Common code and utilities for working with MerkleDAG graphs.
The data tree in a table is a B+ tree variant which orders the partitions into a sorted branching structure.
The branching factor determines the maximum number of children an index node
in the data tree can have. Internal (non-root) index nodes with branching
factor b
will have between ceil(b/2)
and b
children.
An empty data tree is represented by a nil link from the table root. A data tree with fewer records than the partition limit is represented directly by a single partition node.
The data tree in a table is a B+ tree variant which orders the partitions into a sorted branching structure. The branching factor determines the maximum number of children an index node in the data tree can have. Internal (non-root) index nodes with branching factor `b` will have between `ceil(b/2)` and `b` children. An empty data tree is represented by a nil link from the table root. A data tree with fewer records than the partition limit is represented directly by a single partition node.
Record keys are immutable byte sequences which uniquely identify a record within a table. Keys are stored in sorted order by comparing them lexicographically.
The first byte that differs between two keys determines their sort order, with the lower byte value ranking first. If the prefix of the longer key matches all the bytes in the shorter key, the shorter key ranks first.
Record keys are immutable byte sequences which uniquely identify a record within a table. Keys are stored in sorted order by comparing them lexicographically. The first byte that differs between two keys determines their sort order, with the lower byte value ranking first. If the prefix of the longer key matches all the bytes in the shorter key, the shorter key ranks first.
Partitions contain non-overlapping ranges of the records witin a table. Partition nodes contain metadata about the contained records and links to the tablets where the data for each field family is stored.
Partitions contain non-overlapping ranges of the records witin a table. Partition nodes contain metadata about the contained records and links to the tablets where the data for each field family is stored.
Patches are applied on top of tables in order to efficiently store changes while re-using old indexed data.
Patches are applied on top of tables in order to efficiently store changes while re-using old indexed data.
Core record specs and functions.
Core record specs and functions.
Tables are collections of records which specify how the records are
identified and stored. A table is presented as an immutable value; functions
in this namespace return a new version of the table argument, keeping the
original unchanged. Modifications are kept in memory until flush!
is
called.
Tables are collections of records which specify how the records are identified and stored. A table is presented as an immutable value; functions in this namespace return a new version of the table argument, keeping the original unchanged. Modifications are kept in memory until `flush!` is called.
Functions for working with tablet data.
Functions for working with tablet data.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close