RedisBloom Python客户端
项目描述
RedisBloom的Python客户端
redisbloom-py是一个包,它为开发者提供了对几个概率数据结构的轻松访问。该包通过RedisBloom的API扩展了redis-py的接口。
安装
$ pip install redisbloom
使用示例
# Using Bloom Filter
from redisbloom.client import Client
rb = Client()
rb.bfCreate('bloom', 0.01, 1000)
rb.bfAdd('bloom', 'foo') # returns 1
rb.bfAdd('bloom', 'foo') # returns 0
rb.bfExists('bloom', 'foo') # returns 1
rb.bfExists('bloom', 'noexist') # returns 0
# Using Cuckoo Filter
from redisbloom.client import Client
rb = Client()
rb.cfCreate('cuckoo', 1000)
rb.cfAdd('cuckoo', 'filter') # returns 1
rb.cfAddNX('cuckoo', 'filter') # returns 0
rb.cfExists('cuckoo', 'filter') # returns 1
rb.cfExists('cuckoo', 'noexist') # returns 0
# Using Count-Min Sketch
from redisbloom.client import Client
rb = Client()
rb.cmsInitByDim('dim', 1000, 5)
rb.cmsIncrBy('dim', ['foo'], [5])
rb.cmsIncrBy('dim', ['foo', 'bar'], [5, 15])
rb.cmsQuery('dim', 'foo', 'bar') # returns [10, 15]
# Using Top-K
from redisbloom.client import Client
rb = Client()
rb.topkReserve('topk', 3, 20, 3, 0.9)
rb.topkAdd('topk', 'A', 'B', 'C', 'D', 'E', 'A', 'A', 'B',
'C', 'G', 'D', 'B', 'D', 'A', 'E', 'E')
rb.topkQuery('topk', 'A', 'B', 'C', 'D') # returns [1, 1, 0, 1]
rb.topkCount('topk', 'A', 'B', 'C', 'D') # returns [4, 3, 2, 3]
rb.topkList('topk') # returns ['A', 'B', 'E']
rb.topkListWithCount('topk') # returns ['A', 4, 'B', 3, 'E', 3]
API
有关RedisBloom命令的完整文档,请参阅RedisBloom网站。
许可证
开发
- 创建一个虚拟环境来管理Python依赖项,并确保它是激活的。
virtualenv -v venv
- 安装pypoetry以管理依赖项。
pip install poetry
- 安装依赖项。
poetry install
tox默认情况下会运行所有测试。运行tox将运行单元测试。请确保Redis正在运行,并且已加载模块。
项目详情
关闭
redisbloom-py-0.4.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 38dbbe949e767116a34d556b1e3a6d10800cdcc087a0fba1eb77d4c793966e74 |
|
MD5 | 2ff2504b0ee605044f8621f1b689a7f3 |
|
BLAKE2b-256 | 1199c3bfe9afdc15382feb2e2e6cc38d5dff77167153767ef17b9a442c5df5cf |
关闭
redisbloom_py-0.4.1-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ab84f568a39ea6ee116db193e93b800bbecaf00501d7648e8c70466d72f2b938 |
|
MD5 | 579905c81de0cfff3428a35f9076a49f |
|
BLAKE2b-256 | c214b1e850bfc08a53b14c58e1f9026c1456ebc63f7923485e08d42dcb8211b8 |