Python bindings for RocksDB
Project description
rocksdb-py
Python bindings for RocksDB written in Rust.
Features
- Get, set, delete, multi get
- Destroy
- Batch write
- Database iterator
- Read options
Install
To install a wheel from PyPI,
pip install --upgrade rocksdb-py
or if you want to build a wheel, see build.
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.
db.close()
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.3-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6936fa43a36c5e6031f0bf43acec7e9190e46883e31a0dccfdab29550e2da2fc |
|
MD5 | 024a32d818b5c8a1ed55e8c9b1314472 |
|
BLAKE2b-256 | ec073c735bd626671a6825482ce5bb1392a1799ab5272f01e0ddd11475c5903b |
Hashes for rocksdb_py-0.0.3-cp310-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e5693100726667565ebab30a3b3cdafa3d4ad663fc8153bdc2e8b74c9493ac4 |
|
MD5 | aad3933ea969b25432df8c1a36c68e9c |
|
BLAKE2b-256 | e5b509d092b87dc2155fac0ea98d9e7f4448073f16e60f02b21e07e3dda08b64 |
Hashes for rocksdb_py-0.0.3-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 67532186e27acf13d226d27ebfd6dc66b10c587744f3927acf169b0dfde4cb5f |
|
MD5 | 5f59c4019369711da9850a8978f7755c |
|
BLAKE2b-256 | 971538a62e85b4cacc4cde8fb5f9d34b7553bfec719e46b3d437d8f4e504ffa4 |
Hashes for rocksdb_py-0.0.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 83cea502c87ada8f86624cf4ed0f902c9a4b47358c69e355113aebd15eccb380 |
|
MD5 | 97492534eb63e39349d21356d8228aee |
|
BLAKE2b-256 | d2afdba7e23512f3ce2a53296abb5843645368f8f590f1afa0129618f179466d |
Hashes for rocksdb_py-0.0.3-cp310-cp310-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 244967be5883f7a84027acf3841416a98cf6856cfd17b8fb565f7b5b388576d2 |
|
MD5 | 17edea70cd5ebfa7f8370c6cc98a71aa |
|
BLAKE2b-256 | a14d1d7107dd1d6ac3e23e3ebfe0c0e73346f5792dbf2f288108b9cab7b79be1 |
Hashes for rocksdb_py-0.0.3-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8b98a4a18fbb8bca5d7e7a2bf2682653897609a5e30ee1f96703090d38293698 |
|
MD5 | d5fb21c6a3a26ff19328e7dd33ef1fd2 |
|
BLAKE2b-256 | b90f0cbf3fa47ee370d065c3394b9cad813c2ac353904e6e98f40209c0c0a28a |
Hashes for rocksdb_py-0.0.3-cp39-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4b9495c18cad6032c13f426d5600983ea8c8c6dfca76d964065ed696cd671187 |
|
MD5 | 5049bbdb07bc19b1c3b3da8a335e76c3 |
|
BLAKE2b-256 | 965542d9d6c39dabc38da68042864ff2547e467dd36c98a2989f2821cc03247d |
Hashes for rocksdb_py-0.0.3-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2f3cf0f0ef21da4f8bbaddf1e58e55ab2e19ca6e38d8cd7f96ecdf443d0eede3 |
|
MD5 | 4230697a17ce3b787a456c0ea9a7b421 |
|
BLAKE2b-256 | 3be25df99e19e7be75c755a2ab31fbc45a14d893423b3b13338c950ee8006e20 |
Hashes for rocksdb_py-0.0.3-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f084cd3cf5ce6bd0f348696b02cc73a028dee960334fca15b00623e31bdda029 |
|
MD5 | 9b684d882bad96bd6632dc5baee009a7 |
|
BLAKE2b-256 | ce152e17214bd4e6ee3b930d62ff23b71422dc98a8431d7e9fff56c774b29d6a |
Hashes for rocksdb_py-0.0.3-cp39-cp39-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 909c75de6a4c8adce22fbb655957805c8dc4260a355e5bdf4001548ecbc8ef35 |
|
MD5 | 473a126533d16c5307d1abe249fc9797 |
|
BLAKE2b-256 | 02b06d8fc9b2872d33baa0d9c7ad1ea264e1d19165af8f2d32271b0f9a007068 |
Hashes for rocksdb_py-0.0.3-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 73d13e3e6b6b63320406353c50dd0e45d0e4defa10c2d7f3e5543f0078bccb66 |
|
MD5 | de5762eb7cd9fdc8b0e0f4e8d344f790 |
|
BLAKE2b-256 | 1a67b00c0ce6e863fca2684e5daa84129b0e51ca1b8286058a48950df6242d00 |
Hashes for rocksdb_py-0.0.3-cp38-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9a23665f5b9a126ae6305d156b58b0f3170afb474d02e09d6acd81b86c066070 |
|
MD5 | cc2a7fdbd6877eb80064457d6a06881e |
|
BLAKE2b-256 | 834f215ce1a8597c31f4164b54c51f9a36d336131d80c5778bd8dd543e845613 |
Hashes for rocksdb_py-0.0.3-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e86d101ce57b56344c8a4b4bbcfa5311a12355aeafb21e11a74f2f1e7318c3ae |
|
MD5 | 28995d30ade5f6a9497f96e510cffe7a |
|
BLAKE2b-256 | 606c62e39e21116b02efbd0d13764376863d6daebdfc9efcce2abaadf10e8f5d |
Hashes for rocksdb_py-0.0.3-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6dbfa2df1b538a54e12a78fd69781fcc18c2cf98f6856b37f085da6365e3b32a |
|
MD5 | 38095382fc3438757fd4187b6b0bd9d1 |
|
BLAKE2b-256 | 18f7a165c4cda5fa655327684df0fa278f870ba36c0e199694eeab1ab50e7631 |
Hashes for rocksdb_py-0.0.3-cp38-cp38-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8c635e7ba506e3b05a7f7776c49a7e46c21ef9146cbfd95e3a727eac7259afb3 |
|
MD5 | f6d07a988a0f3cccae1658cd87b99525 |
|
BLAKE2b-256 | 65570aca3583605ff10516e20434f47f3337de5f7992a65f574632b50b8e754d |
Hashes for rocksdb_py-0.0.3-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b37c5adf0c4a82c2aa955d57965a6505fe87779bf9f941e921a80006daff577e |
|
MD5 | 80116e8e230fc65e83403a19c4e2260d |
|
BLAKE2b-256 | 5bf4eaeb69788165c7d7c89146e66a1fcdf9dfcbce26c22ad56a3d0e5d2c729f |
Hashes for rocksdb_py-0.0.3-cp37-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6051515f55592322f402743cb0e4d3277fd31759a2cee5e09d5926f4a2ddbc94 |
|
MD5 | 82ea47551eca7b2aeb2e45259e8bd0cf |
|
BLAKE2b-256 | 809b8e1db516743953913dd46f6a34906dd2a03890eec481a8e8dcf170acddef |
Hashes for rocksdb_py-0.0.3-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 711280eaf8625fbabc06aace9c6f8ac5412bd65871b64e637275af073209e923 |
|
MD5 | 6170630b4b92ee8597ec86dd404e5fa9 |
|
BLAKE2b-256 | c9894c5f7b365c78de639907561dc39e116df1f078660c22464ca16c13f3016f |
Hashes for rocksdb_py-0.0.3-cp37-cp37m-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 30e1fc76dbc5409e3b256df7026e65230259aae0c017b5075836974aeb74bae8 |
|
MD5 | 1efdf3049a24cef7f10dbd3b48a05967 |
|
BLAKE2b-256 | ef7bc81ba8cfd99163a1f8ae2c6a7b9a0b34ca868e4703a4b19d8cfd9a55e150 |
Hashes for rocksdb_py-0.0.3-cp37-cp37m-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab566a1e40f1459086f0777d4ddb9cc2b56be4d76b405fe68d5c6e62a55e6b00 |
|
MD5 | 22fcdc0d1d2579bf1246c60ef6a897ff |
|
BLAKE2b-256 | a612e24c732a13eccc1e032c2a59d36b39c1c9d84d62e1a19269ce88c84364e7 |