[英]Bloom Filter usign Redis and Node.js
我正在使用@albert-team/rebloom package 使用本地 Redis 實現布隆過濾器
const { BloomFilter } = require('@albert-team/rebloom')
const main = async () => {
const filter = new BloomFilter('filtername', {
host: 'localhost',
port: 6379,
})
await filter.connect()
console.log(await filter.add('item0')) // 1
console.log(await filter.exists('item0')) // 1
console.log(await filter.exists('item1')) // 0
await filter.disconnect()
}
main().catch((err) => console.error(err))
但我得到以下錯誤。 TypeError: multi.setbit 不是 function 在 /Users/rohit/Downloads/Microservices/POC/node_modules/bloom-redis/lib/index.js:61:15
兩個問題:
節點 Redis現在支持 Redis Bloom。 像這樣工作:
import { createClient } from 'redis';
const client = createClient();
await client.connect();
await client.bf.reserve('mybloom', 0.01, 1000);
await client.bf.add('mybloom', 'foo'),
await client.bf.mAdd('mybloom', [ 'bar', 'baz' ]);
const singleExists = await client.bf.exists('mybloom', 'foo'); // true
const multiExists = await client.bf.mExists('mybloom', [ 'baz', 'qux' ]); // [ true, false ]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.