Simple and easy rocksdb client for python
Project description
rocksdb-python
Simple and easy rocksdb client for python.
NOTE: This client dosen't fully support rocksdb. Only the basic usage of rocksdb is supported.
Requirements
- python3.8+
- rocksdb
Installation
We need to install and build rocksdb alongside rocksdb-python.
Build rocksdb
From source:
apt-get install build-essential libgflags-dev libsnappy-dev zlib1g-dev libbz2-dev liblz4-dev libzstd-dev
git clone https://github.com/facebook/rocksdb.git
cd rocksdb
mkdir build
cd build
make shared_lib
Choose where to install rocksdb after building
-
You can install rocksdb shared library in
/usr/lib/
(systemwide) using:make install-shared INSTALL_PATH=/usr
- If you wish to uninstall it use:
make uninstall INSTALL_PATH=/usr
- If you wish to uninstall it use:
-
If you don't like to install it systemwide you can set the following environment variables which will help the compiler to find rocksdb:
export CPLUS_INCLUDE_PATH=${CPLUS_INCLUDE_PATH}:`pwd`/../include export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:`pwd` export LIBRARY_PATH=${LIBRARY_PATH}:`pwd`
Install rocksdb-python
Using pip:
pip install rocksdb-python
From source (development version):
pip install git+https://github.com/AYMENJD/rocksdb-python
Usage
import rocksdb, asyncio
async def main():
db = rocksdb.RocksDB(db_path="myrocksdb/", options=rocksdb.Options(create_if_missing=True))
key = "123-456-789"
response = await db.put(rocksdb.WriteOptions(), key, "Hello world. Bye!")
if response.status.ok: # You always need to check if the request success.
get_value = await db.get(rocksdb.ReadOptions(), key)
print(get_value.value) # Hello world. Bye!
await db.delete(rocksdb.WriteOptions(), key)
else:
print(get_value.status.to_dict())
await db.close()
asyncio.run(main())
Check Documentation for more.
Contributing
Pull requests are always welcome!!
License
MIT License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file Rocksdb-python-0.1.2.tar.gz
.
File metadata
- Download URL: Rocksdb-python-0.1.2.tar.gz
- Upload date:
- Size: 759.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5c644ec17cf19eed9627d478cb2e0c0ba35bd72a3425a2fb0e7e6f44397d7ed9 |
|
MD5 | a9df790ed7c65f5f0c6278b6ed6cd915 |
|
BLAKE2b-256 | 324d4d1163d3adf164fa2ec9ec9ae6c5dc8b55a56e92f8486be612df1606430c |