prolly-trees

1.0.4 • Public • Published

Prolly Trees

Implementation of peer-to-peer search trees (probabalistic b-trees trees) as used in dolt and noms.

While this library has 100% test coverage and is relatively stable, it's not recommended for broad use. The implementation internals are all very exposed and have not been properly documented. Without thorough documentation there's a lot of mistakes consumers will make regarding caching and block storage.

Some time in the near future I will fully document the library.

Notes

This is just an implementation of the trees. It does not have an opinion about how blocks are encoded and hashed. The tests use a dag-cbor IPLD encoder, and the library is typically encoded into IPLD in other libraries.

ranges

Range queries match >= the start key and < the end key.

In other words, ranges do not include matches against the end key but do match against the start key. This is so that more advanced range queries can be built with only appending to keys rather than needing to do more advanced key modifications to reduce the closing match.

Dependents (5)

Package Sidebar

Install

npm i prolly-trees

Weekly Downloads

113

Version

1.0.4

License

(Apache-2.0 AND MIT)

Unpacked Size

407 kB

Total Files

55

Last publish

Collaborators

  • mikeal