跳转到主要内容

Rust rocksdb crate的Python绑定

项目描述

rocksdb的Python绑定

Rocksdb3是基于rust包装器rocksdbrust-rocksdb以及PyO3的Python绑定。

这是一个非常早期的概念验证版本。请不要在生产环境中使用它。

Actions Status Latest version Support python versions License

为什么需要新的包装器

已经存在python-rocksdb,为什么还要为rocksdb创建一个新的包装器?

  • 很有趣
  • 我在学习Rust,这是我的经验
  • PyO3也很有趣
  • python-rocksdb没有积极维护
  • python-rocksdb没有发布支持静态链接的多个操作系统兼容的wheel二进制文件
  • 调试越界指针很无聊

状态

  • 预编译的Linux、Windows、macOS的wheel二进制文件,支持python 3.5、3.6、3.7、3.8、3.9、3.10
  • 基本的打开/写入/读取/删除/关闭
  • 作为次要实例打开
  • 销毁/修复
  • 迭代器
    • 具有特定前缀的迭代器
  • 写入批处理
  • 选项
    • 打开选项
    • 读取选项
    • 写入选项

安装

pip install rocksdb3

示例

import rocksdb3

path = './db_path'
db = rocksdb3.open_default(path)
assert db.get(b'my key') is None
db.put(b'my key', b'my value')
assert db.get(b'my key') == b'my value'
assert list(db.get_iter()) == [(b'my key', b'my value')]
db.delete(b'my key')
assert db.get(b'my key') is None
del db  # auto close db
rocksdb3.destroy(path)

构建

pip install maturin
maturin build

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分发

rocksdb3-0.1.0.tar.gz (14.9 kB 查看哈希值)

上传时间

构建分发

rocksdb3-0.1.0-cp310-none-win_amd64.whl (1.7 MB 查看哈希值)

上传时间 CPython 3.10 Windows x86-64

rocksdb3-0.1.0-cp310-none-win32.whl (1.6 MB 查看哈希值)

上传时间 CPython 3.10 Windows x86

rocksdb3-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB 查看哈希值)

上传时间 CPython 3.10 manylinux: glibc 2.17+ x86-64

rocksdb3-0.1.0-cp310-cp310-macosx_10_7_x86_64.whl (2.2 MB 查看哈希值)

上传时间 CPython 3.10 macOS 10.7+ x86-64

rocksdb3-0.1.0-cp39-none-win_amd64.whl (1.7 MB 查看哈希值)

上传时间 CPython 3.9 Windows x86-64

rocksdb3-0.1.0-cp39-none-win32.whl (1.6 MB 查看哈希值)

上传时间 CPython 3.9 Windows x86

rocksdb3-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB 查看哈希值)

上传时间 CPython 3.9 manylinux: glibc 2.17+ x86-64

rocksdb3-0.1.0-cp39-cp39-macosx_10_7_x86_64.whl (2.2 MB 查看哈希值)

上传时间 CPython 3.9 macOS 10.7+ x86-64

rocksdb3-0.1.0-cp38-none-win_amd64.whl (1.7 MB 查看哈希值)

上传时间 CPython 3.8 Windows x86-64

rocksdb3-0.1.0-cp38-none-win32.whl (1.6 MB 查看哈希值)

上传时间 CPython 3.8 Windows x86

rocksdb3-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB 查看哈希值)

上传于 CPython 3.8 manylinux: glibc 2.17+ x86-64

rocksdb3-0.1.0-cp38-cp38-macosx_10_7_x86_64.whl (2.2 MB 查看哈希值)

上传于 CPython 3.8 macOS 10.7+ x86-64

rocksdb3-0.1.0-cp37-none-win_amd64.whl (1.7 MB 查看哈希值)

上传于 CPython 3.7 Windows x86-64

rocksdb3-0.1.0-cp37-none-win32.whl (1.6 MB 查看哈希值)

上传于 CPython 3.7 Windows x86

rocksdb3-0.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB 查看哈希值)

上传于 CPython 3.7m manylinux: glibc 2.17+ x86-64

rocksdb3-0.1.0-cp37-cp37m-macosx_10_7_x86_64.whl (2.2 MB 查看哈希值)

上传于 CPython 3.7m macOS 10.7+ x86-64

rocksdb3-0.1.0-cp36-none-win_amd64.whl (1.7 MB 查看哈希值)

上传于 CPython 3.6 Windows x86-64

rocksdb3-0.1.0-cp36-none-win32.whl (1.6 MB 查看哈希值)

上传于 CPython 3.6 Windows x86

rocksdb3-0.1.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB 查看哈希值)

上传于 CPython 3.6m manylinux: glibc 2.17+ x86-64

rocksdb3-0.1.0-cp36-cp36m-macosx_10_7_x86_64.whl (2.2 MB 查看哈希值)

上传于 CPython 3.6m macOS 10.7+ x86-64

rocksdb3-0.1.0-cp35-none-win_amd64.whl (1.7 MB 查看哈希值)

上传于 CPython 3.5 Windows x86-64

rocksdb3-0.1.0-cp35-none-win32.whl (1.6 MB 查看散列)

上传时间 CPython 3.5 Windows x86

rocksdb3-0.1.0-cp35-cp35m-manylinux2014_x86_64.whl (3.4 MB 查看散列)

上传时间 CPython 3.5m

rocksdb3-0.1.0-cp35-cp35m-macosx_10_7_x86_64.whl (2.2 MB 查看散列)

上传时间 CPython 3.5m macOS 10.7+ x86-64

支持