Scruby

Asynchronous library for building and managing a hybrid database,
by scheme of key-value.

Build Status Docs PyPI pyversions PyPI status PyPI version fury.io
Types: Pyrefly Code style: Ruff Format PyPI Downloads License: MIT License: GPL v3


The library uses fractal-tree addressing and
the search for documents based on the effect of a quantum loop.

The size of each collection is 16|256|4096|4294967296 branches,
each branch can store one or more keys.

The value of any key in collection can be obtained in 1-8 steps,
thereby achieving high performance.

The effectiveness of the search for documents based on a quantum loop,
requires a large number of processor threads.


Attention

Parameter `Scruby.run(hash_reduce_left = 7)`:
7 = 16 branches in collection (is default) -> Docs: ~16000+, RAM: ~2G+, CPU: ~2+ (for development).
6 = 256 branches in collection -> Docs: ~256000+, RAM: ~4G+, CPU: ~2+ (for small projects).
5 = 4096 branches in collection -> Docs: ~4096000+, RAM: ~6G+, CPU: ~4+ (for large projects).
0 = 4294967296 branches in collection -> Docs: ~4,294967296×10¹²+, RAM: ~2G+, CPU: ~2+ (access only by keys).

If you notice the production server slowing down,
you will need to add RAM and CPU.


List of plugins

Requirements

Changelog

MIT

GPL-3.0