skillfed

speedict

Speedb Python Binding

speedict v0.3.12 145.8K downloads/30d#11,117 on PyPI
Permissive license DORMANT released

What it is and what it does

SpeeDict wraps RocksDB as a persistent, on-disk key-value store for Python. It operates in two modes: default mode (which serializes arbitrary Python objects like lists, dicts, NumPy arrays, and Pandas DataFrames using Pickle) and raw mode (which stores only bytes). The library provides a dictionary-like interface—you can set, get, iterate, and batch-retrieve keys—and persists data across sessions. It's built in Rust and compiled to wheels for common platforms.

The package is designed for applications that need fast, embedded key-value storage without running a separate database server. It supports column families, snapshots, batch writes, and RocksDB configuration options like write buffer size and compaction settings. However, it does not support merge operations or custom comparators, and maintenance has been dormant, meaning bug fixes and dependency updates are not expected.

Use it for:

  • Cache frequently accessed Python objects (DataFrames, arrays) on disk without serializing to JSON or CSV.
  • Build a lightweight embedded database for a single-machine application that needs persistent key-value storage.
  • Store and retrieve raw bytes efficiently in raw mode for binary data or custom serialization schemes.
  • Prototype or test database-backed logic without setting up a separate database server.
  • Batch-load or batch-write large sets of key-value pairs with transactional semantics.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

SpeeDict is a Python key-value storage library backed by RocksDB that persists arbitrary Python objects (via Pickle) or raw bytes to disk, supporting dictionary-like access with batch operations.

Yes, if you need a fast, embedded key-value store for Python objects and can tolerate dormant maintenance. The library is stable for read-heavy workloads and has no known vulnerabilities. However, avoid it for mission-critical systems requiring active support or frequent updates. Verify that prebuilt wheels exist for your Python version and platform before committing.

Install

speedict on PyPI

pip

pip install speedict

uv

uv add speedict

poetry

poetry add speedict

Installing speedict

Before you install

Medium install friction due to compiled wheels; prebuilt binaries available for Python 3.7, 3.10, 3.11, and 3.12 on macOS, Linux, and Windows, but no pure-Python fallback. Last release was 1007 days ago and maintenance status is dormant, so dependency updates and bug fixes are unlikely.

License in practice

Licensed under MIT (permissive), so you can use, modify, and distribute SpeeDict freely in commercial and private projects without restriction.

Quickstart

from speedict import Rdict

db = Rdict("./my_store")
db["key"] = [1, 2, 3]
db[b"bytes_key"] = b"value"
print(db["key"])
db.close()

Requires a compiled extension; installation relies on prebuilt wheels for your platform and Python version.

Verify before relying

  • Whether dormant maintenance status affects stability or security for production use.
  • Performance characteristics compared to other embedded key-value databases.
  • Whether Pickle serialization overhead is acceptable for your workload.

Package facts

License not declared (permissive)
Python support not specified
Install friction medium — platform-specific wheel
Runtime dependencies none
Maintenance dormant — 1,007 days since the last release
First released
Downloads 145,759/month — #11,117 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: speedict-0.3.12-cp310-cp310-macosx_10_14_x86_64.macosx_11_0_arm64.macosx_10_14_universal2.whl; speedict-0.3.12-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; speedict-0.3.12-cp310-cp310-manylinux_2_28_aarch64.whl; speedict-0.3.12-cp310-cp310-manylinux_2_28_x86_64.whl; speedict-0.3.12-cp310-none-win32.whl; speedict-0.3.12-cp310-none-win_amd64.whl; speedict-0.3.12-cp311-cp311-macosx_10_14_x86_64.macosx_11_0_arm64.macosx_10_14_universal2.whl; speedict-0.3.12-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; speedict-0.3.12-cp311-cp311-manylinux_2_28_aarch64.whl; speedict-0.3.12-cp311-cp311-manylinux_2_28_x86_64.whl; speedict-0.3.12-cp311-none-win32.whl; speedict-0.3.12-cp311-none-win_amd64.whl; speedict-0.3.12-cp312-cp312-macosx_10_14_x86_64.macosx_11_0_arm64.macosx_10_14_universal2.whl; speedict-0.3.12-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; speedict-0.3.12-cp312-cp312-manylinux_2_28_aarch64.whl; speedict-0.3.12-cp312-cp312-manylinux_2_28_x86_64.whl; speedict-0.3.12-cp312-none-win32.whl; speedict-0.3.12-cp312-none-win_amd64.whl; speedict-0.3.12-cp37-cp37m-macosx_10_14_x86_64.macosx_11_0_arm64.macosx_10_14_universal2.whl; speedict-0.3.12-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Keywords: speedb, dbm, dict, key-value

License :: OSI Approved :: MIT LicenseOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: RustTopic :: DatabaseTopic :: Software Development :: Embedded Systems

Tags

key-value store pythonpersistent dictionaryrocksdb python bindingon-disk key-value storagepython object serialization databaseembedded database pythonfast key-value storage
embedded-databaserocksdb-bindingpersistence

More Database packages