Python bindings for RocksDB
Project description
rocksdb-py
Python bindings for RocksDB written in Rust.
Note: This package is under active development.
Features
- Get, set, delete, multi get
- Destroy
- Batch write
Usage
Open database
Open a database with default options.
import rocksdbpy
db = rocksdbpy.open_default('/tmp/rocksdb')
Open a database with the specified options.
opts = Option()
opts.create_if_missing(True)
db = rocksdbpy.open('/tmp/rocksdb', opts)
Open a database with TTL compaction filter.
opts = Option()
opts.create_if_missing(True)
db = rocksdbpy.open_with_ttl('/tmp/rocksdb', 5, opts)
Destroy the database and it's files.
rocksdbpy.destroy('/tmp/rocksdb')
Close active database and release lock.
del db
Simple read, set and delete
Set records by key and value.
db.set(b'key', b'value')
Get a value associated with a key.
value = db.get(b'key')
Remove existing records by key.
db.delete(b'key')
Batch write, database iterator and flush
Set database entries for list of key and values as a batch.
from rocksdbpy import WriteBatch
batch = WriteBatch()
batch.add(b'first', b'1')
batch.add(b'second', b'2')
db.write(batch)
Extra operations for the batch.
batch.delete(b'first')
batch.clear()
size = batch.len()
Return a heap-allocated iterator over the contents of the database.
iterator = db.iterator()
iterator = db.iterator(mode='end')
iterator = db.iterator(mode='from', key=b'test')
iterator = db.iterator(mode='from', key=b'test', direction=-1)
for key, value in iterator:
print(key, value)
Flush database memtables to SST files on the disk using default options.
db.flush()
Read options
Set database read options.
opts = Option()
opts.create_if_missing(True)
opts.set_max_open_files(10)
opts.set_use_fsync(True)
opts.set_bytes_per_sync(1024 * 1024)
# and more
Build
You can build PIP package by using maturin
. The example below is created for MacOS,
$ git clone https://github.com/trk54ylmz/rocksdb-py.git
$ cd rocksdb-py
$ maturin build
$ pip3 install ./target/wheels/rocksdb_py-0.0.1-cp39-cp39-macosx_11_0_arm64.whl
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for rocksdb_py-0.0.1-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | faef254f9a02121d2f08268ad7649ddb77fc92becaca77953b2a67b6058a6a90 |
|
MD5 | d0ac6542abc8ea2ccf9341354f19db81 |
|
BLAKE2b-256 | 345354d8c2eb8439d77b5f5901936bb67a65b249ae0e57fea5ecbbe4619ecab0 |
Hashes for rocksdb_py-0.0.1-cp310-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c2050bce36fe03770e006d0ae244460a8c0c6e02399a8e31b59f47148a51d899 |
|
MD5 | 12c3626bfdc9675071207043b2babb6c |
|
BLAKE2b-256 | 1cdda40b92491a586ef876387f45815283e822379cc145c6858cd672a4abe212 |
Hashes for rocksdb_py-0.0.1-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 41a819700c55547c79247b66a4a58ea8c7b877196c40de349effe0236853e826 |
|
MD5 | 2c86b8be241143ea400a5a2a0057cd5f |
|
BLAKE2b-256 | eee0586ff48734cf058b8a70874a697d3a165426da86ac0f4997d6893bdc07f4 |
Hashes for rocksdb_py-0.0.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4ba933e30422040f705b3b5c5e79e3046ba213d66af6bb3115baea124a483f17 |
|
MD5 | a496425b6fb82ac59503c35712920d4e |
|
BLAKE2b-256 | f9539743bca96b9f0cffe0fc29f6e2618ed356b29877dff5ce61e077be33f4a6 |
Hashes for rocksdb_py-0.0.1-cp310-cp310-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1ca828b6b25789be3c09604c162acad16c0e6256c07d7898d82307bd07e7a329 |
|
MD5 | 5611659aa2070a6534ff80d50dda4c1b |
|
BLAKE2b-256 | 38b087a959db7897e662fce0667986c2797d792b454ad4346ca4ed25de70208c |
Hashes for rocksdb_py-0.0.1-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bd0ebd6dc7be718205614cc9cde14d0364baf05d81ee5359959308c8da96f2dc |
|
MD5 | b271bc02c1d8449dbfc7e8d715e3c47e |
|
BLAKE2b-256 | e9b15ae28c96782513f1809a6ee75af2cf5fed1e177113b21f251e50ca9f9c81 |
Hashes for rocksdb_py-0.0.1-cp39-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1ae41912ca2257bf83c0820d4f0455fc4fe1a0c86ca24eeefb9c390aae2e7bd1 |
|
MD5 | 3ffc3e9a6ce7cd306ab38f05d86a3990 |
|
BLAKE2b-256 | ae8b359149ba9f0ef95133034cde2eefc6fe91e0ac88c33c8beebc330b6c9762 |
Hashes for rocksdb_py-0.0.1-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a2c7918074c6ce4491713724677430c2863184d6eda6d52e22b302db12f66e3f |
|
MD5 | 2c3f611d6604b617666357be904c60f4 |
|
BLAKE2b-256 | 46802d67221d7a785d2d0563f48188e40c905ea9fe4e347210ffbf38be61f78b |
Hashes for rocksdb_py-0.0.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | be5a9a30739f63cc5e476437540435e6cf3b64d8b19c3c951463d8f2eb0159e0 |
|
MD5 | 5dec59daf916e2e0413ef20dc1b562cc |
|
BLAKE2b-256 | 13d1f7bc00063090f8805c7f744842c250334bc144f47b5c96f222ac8a7b0d87 |
Hashes for rocksdb_py-0.0.1-cp39-cp39-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c45e661bc8a9947d90a6d962b76a092ae9d5a9d582ac6e06208d10f028c6dadf |
|
MD5 | 7fc413dc89a021ec773a0cbd5627e9fb |
|
BLAKE2b-256 | f5b5e0eea836d0d1c6c66390836ca0409ecb2f7dba020f967d0309c7d8579120 |
Hashes for rocksdb_py-0.0.1-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 335f7e7bc0357fd2dd4df06d92c1f66ed619b554883742553a78cad542e6de79 |
|
MD5 | 31bdf8f13f1c32de4ddc6e75197dab56 |
|
BLAKE2b-256 | d5087762174bd047aa29130aec010820d1177a901b8bfeb5ee2bec319fffd8cb |
Hashes for rocksdb_py-0.0.1-cp38-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3e564fda7f437af5cce0b03e09e3dffe9d32706d90c1a78b8c620f93dc065566 |
|
MD5 | 379b104181218ad5308265dfed0c8258 |
|
BLAKE2b-256 | bdac045be49341c67015d2d7ee318cf81e881ce39455d63b7117a5f4ac7c11c4 |
Hashes for rocksdb_py-0.0.1-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5095efb05c82afb65759f02fc287b3ab7c2f605fc950dccb48c964570a7ec41b |
|
MD5 | 156cbee75f20a869331de7684a5d78c5 |
|
BLAKE2b-256 | 49c0ded68827f3ac8a73afdcbd9b9a7256f455f5ef584bfb2f9c8170a2b9c27c |
Hashes for rocksdb_py-0.0.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 87cabe333ab343e29aaae0f634d272d84e1ebf0a90b1590e29b28587008db5e3 |
|
MD5 | 21c7c02a273a35897271f3f0d73006c5 |
|
BLAKE2b-256 | f4269263e5805fb34e2f6b2e3966bb297da60c4d4a47cc8873e94fa144ac7c9b |
Hashes for rocksdb_py-0.0.1-cp38-cp38-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7566ad6fb72ff1383e23b75171a60209ad4098b382df6f85c10c25e67652db73 |
|
MD5 | 170ef7d91b77a5caf2330ef74fe39790 |
|
BLAKE2b-256 | b175afe91d711d0d067708fa5eb248d63691fa34cccd28c1befe99411c8d9652 |
Hashes for rocksdb_py-0.0.1-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c04fa97905ac5a305a54811b7ad06d71ac7fe64f8b75db2cefe6625a42823b23 |
|
MD5 | f2b5ed5afe72ee3857dc1b77eb97dfa2 |
|
BLAKE2b-256 | 320fbc8009477bdba7d490f792fda707fcaa24772bba537154fbd833a9a41688 |
Hashes for rocksdb_py-0.0.1-cp37-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 28eae37cf5cd09309cf7ca32e5acaf291e55ee3a8621eaf31c352aa3982de1fe |
|
MD5 | 4f2f5c699da4aa6eef104192d16b5565 |
|
BLAKE2b-256 | cba4c98992c1b61570deeff01d1e569de5f6f594598b037dea64152b2619d80a |
Hashes for rocksdb_py-0.0.1-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5bb47661d24aa4fdffeeeaecf6c7ebcd648d64c2bdf8f3650a1075118d077386 |
|
MD5 | 00eb3fdd6b583b568529dcfa2ce8c69c |
|
BLAKE2b-256 | 092801f026c5d09e1a20aa70acf31ee9605b9590e290e09fe7e1d416ffc480e4 |
Hashes for rocksdb_py-0.0.1-cp37-cp37m-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 60ad39368be1bd238803f4cee5dcd3285a4d8abc763c356dfe098271fef89d8d |
|
MD5 | 78a509b20edee675d852d771187f7c42 |
|
BLAKE2b-256 | 77869da8fe2dca080a99cd0f1d515b50463236ce56b73eb8a2b304c92dc38b81 |
Hashes for rocksdb_py-0.0.1-cp37-cp37m-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a9412be0ea917e7826645bd337269f561348e6d7dafa6eb83466f88e79d6a418 |
|
MD5 | 3aa2a4fdf3b843702499d273e325573f |
|
BLAKE2b-256 | 4e02cbb6bbab568286211cbc7f9185c47dcfff238059d30fcbb5ce39ea894572 |