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.4-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 43fa28cd8653b7518033385d5143c816a7e8b36365dc6af741e4f0537db8e590 |
|
MD5 | 1c2b0ed7ff36718e54c433d63527402b |
|
BLAKE2b-256 | 28df478bd34c634bc41242a50e0ed9752f24280fe749da9433b8926d2c77882e |
Hashes for rocksdb_py-0.0.4-cp310-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8cff742cef2a931818fb1390097bccce0d332b4f4c9455b25e2febe7a08c4161 |
|
MD5 | a54d07523983d7af43fbfe790b9f53bb |
|
BLAKE2b-256 | eecac419cc1a80196cb85ed84ba9f26206f2592f6d54de638f556e16517e1cfa |
Hashes for rocksdb_py-0.0.4-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b268717faf70af3fdf1586175b12409dbdb7720e3e76e62a821ced0318523958 |
|
MD5 | 25281b1f477330f5aef9d70e9aeefd5a |
|
BLAKE2b-256 | ca13a8432d501b08ce7dca7c3b886ef0c2f1a2fb5892786a5c8e34e0f7ffb34a |
Hashes for rocksdb_py-0.0.4-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9dcfe1b93fe8b40347d6b481e515f1ed1fce557fbaf5a68cf5de207b8bdb8f3e |
|
MD5 | ed1d5afe7fc6abd03c6e26cb054983e7 |
|
BLAKE2b-256 | 8d7e2b3365a61e049d2e9305473e092020bcb6838cedf066c0c7f0f66912a9ff |
Hashes for rocksdb_py-0.0.4-cp310-cp310-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 76983140420d393171e105cc4f14e6d7c7794fc0e7ee9dd7c0faa9306347a26a |
|
MD5 | 68914d5d5cec9ecbe04511e1d484b5a3 |
|
BLAKE2b-256 | 182b40881d75e9bc3292ab8db68d9d71c27b6025d1c8f3fef3e29fe8c0786172 |
Hashes for rocksdb_py-0.0.4-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7c3441b9f550b02b5f86131a6731773921d4e0b1ecafdef0bee4abaefd14dc36 |
|
MD5 | 952620f17784892cb86bd1107c0add05 |
|
BLAKE2b-256 | 18790f383a3217c40cce43dcae82aa19ee643b4dd890e448bbd5a5a44608c60a |
Hashes for rocksdb_py-0.0.4-cp39-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eb53b2e4f20da968f532fd557ac45de57853fdfdc6147ced9ab4e8fd873428e7 |
|
MD5 | bd790bf1bb593147f224ea64664353af |
|
BLAKE2b-256 | 74726a6b1a9d55add057664878764ada6c81d3add77321788c8fdb11c2c0c47a |
Hashes for rocksdb_py-0.0.4-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c54c69fb53a0d20cacaeb77697a091c52805d4a478658f121897971150a7aed8 |
|
MD5 | d9fd84aeff2db025d2b5306b4281c377 |
|
BLAKE2b-256 | 820c00052a783616ca16ecd96f63ae6a613ed5baa031be26c8bc1812a47e84fa |
Hashes for rocksdb_py-0.0.4-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a3a46a8682a87e39df6cad2d9090b4c7ca1274007f2ea68c3b75691d146e6534 |
|
MD5 | b54f18428f56c72f08cb2a9b782f8a48 |
|
BLAKE2b-256 | 040f511b401b4d2de568a3ad78c4b9afafaa87b6ae6bf9150adde299f5e7283f |
Hashes for rocksdb_py-0.0.4-cp39-cp39-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 441e22aebad0f4b4eb3b1703519f18537a860a76bac6f7fb657c4c6a81b70092 |
|
MD5 | 5f52c9510af91c0711e73e5869d74ad9 |
|
BLAKE2b-256 | 865833d7ec632d76d3a4ada1e2423720fd05ebfa058384d0ae930cf21be644ae |
Hashes for rocksdb_py-0.0.4-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a68572f2f31bfb1d63da593ef151719b26b58ffd720dae0ec312bdef45681bfe |
|
MD5 | ecc3249d26dc588084acab0bced5a956 |
|
BLAKE2b-256 | 536e68134bf99fb78c96d0250471440a10fc0347405a60df2120770cea185d91 |
Hashes for rocksdb_py-0.0.4-cp38-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f6bc1d9b9c50050589c1910b2ee31a4566d01dc59bef2d6fec12170cc5dfc06e |
|
MD5 | 6eeac86b731ea62adafab57848c1d052 |
|
BLAKE2b-256 | 4c51d3d0a0d1fa0d3f3550d603145144ffb0053d591cf2c6ef32084bd02dac73 |
Hashes for rocksdb_py-0.0.4-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0b50d68182873ab0897b66e036c5d8df53e86efd5c5018771bb946d82aa46e39 |
|
MD5 | 6a40aecde625054b96c8fc8bdab51627 |
|
BLAKE2b-256 | bc43d9e7310095cb6c61bff8d0430f1471b15d45adfe2accb8e5801b40339b6a |
Hashes for rocksdb_py-0.0.4-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dfa4fda64010577ddf30b142dd147d4d3b8a86018f642d8193283ef0981f7934 |
|
MD5 | ca8ba60adefb5af9913d67a02a2eeb70 |
|
BLAKE2b-256 | 370c89e503f91259323e5d6ae440ce1669b955cbb777bdabfb15dd4e8def21d0 |
Hashes for rocksdb_py-0.0.4-cp38-cp38-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d808b2bb4f086857b06e3be427bd95ce6a1931365c1be19ecde9a63568183d34 |
|
MD5 | bc4d288037e064bc0a508ffaedce7bdf |
|
BLAKE2b-256 | a4427f3c55c74ec9ac06e89b73f2307baf0177b19dff8575cd6796b205b5df6d |
Hashes for rocksdb_py-0.0.4-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a380724444e2c487f0bd77773142a2d41ec281624271b5cdfe99a30b1cbc04c2 |
|
MD5 | 484ec158bf6ec63050c800e1be60b03a |
|
BLAKE2b-256 | a40bd2778a521f08983b2201232132d22555a8c5fcb6f976efa1acab91f191ae |
Hashes for rocksdb_py-0.0.4-cp37-none-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6b49e2fb8d6df93f12c42d06cd02c338c37e8ddf5a99dd816597049b179808c5 |
|
MD5 | 18c94571c899d0ad409a087dbf7a162b |
|
BLAKE2b-256 | c58aed09cf325dcf59d1cb2180a0d646f35d26340a8493eaf32fb3abf4776c09 |
Hashes for rocksdb_py-0.0.4-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f845753d5b9d0211d98b10f9cf37764d1898352b7ec872168369be8a75fc0d2b |
|
MD5 | b83fc21c9d6d01dacf5f68987821a1cd |
|
BLAKE2b-256 | ccd4710f55445484d54188d3d2ec8a6a2de145c4b746c2f60934ead769a50596 |
Hashes for rocksdb_py-0.0.4-cp37-cp37m-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 83455613e256c768a72e08ad333e4b5ccba3f6e3107821b56336b8c42869f235 |
|
MD5 | 775d3ed593a722e889e9118fd3724fa7 |
|
BLAKE2b-256 | 4538299212e19d472fc94615f1c9d0fff91d38bc839716e92aab445402acaf1c |
Hashes for rocksdb_py-0.0.4-cp37-cp37m-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 03f1d4f3140a23e6491fcd901bd11939763344f6926d7d1eb10fb1982f4d24b4 |
|
MD5 | c8f04648991bd14503bc017c4d1f80ca |
|
BLAKE2b-256 | e33f6f9cefa5461173846e58b1ad8fbf2c8899c8cd459b7c22e0bf17895a8741 |