设为首页
收藏本站
开启辅助访问
全部
问与答
创意
技术
酷工作
生活
交易
资源
节点
飞墙
Follow
明白贴
影视
报酬
登录
注册
飞社-令人惊奇的创意工作者社区-
›
首页
›
程序员
›
大佬们,来寻求个方案,对比查询怎么才能最快 ...
FSHEX=FIND+SHARE+EXPRESS
飞社-令人惊奇的创意工作者社区- 是一个关于发现分享表达的地方
现在登录
没有账号?
立即注册
推荐主题
›
WiFi 感知技术解决校园霸凌问题
›
一天背 30 个单词感觉受不了,正常吗
›
请教一下硕 1 后端开发从北京大厂跳回杭州
›
请求推荐便宜耐用机械键盘
›
前同事被庞氏骗局洗脑,要帮他报警吗?
今日热议主题
K3 路由器 咸鱼挂了几次都被下架了 刷了梅
西部数据的 P50 移动硬盘是不是和猛禽峡谷
疯狂从播客小宇宙看别人到底在赚啥钱
前同事被庞氏骗局洗脑,要帮他报警吗?
各种云盘还是那么不靠谱
有没有什么体积小、免费无广告的 Windows
[急/求推荐]实时翻译软件, 英文面试,最好带
利用 WiFi CSI WiFi CSI(Channel State In
win11 ubuntu 双系统后, win11 无法更新
Only Apple can do 苹果的傻 X 逻辑,自己
大佬们,来寻求个方案,对比查询怎么才能最快
V392920
· 2024-9-4 09:49:54 · 160 次点击
有这样一个需求,首先是有 100 万个 md5 值(不重复,提前录入)
然后每隔 10 秒会产生 300 个新的 md5 值
现在的要求是拿这 300 个去与 100 万个对比,查询出这 300 个里面哪些是包含在那 100 万个里面的,需要极致的速度,越快完成越好。
之前同事用 redis 集合处理,据说好像是 30-40 毫秒(我不确定这个时间是否准确),依旧说还没达到要求,还能不能再极限一点
对了,还有个要求,就是那 100 万个 md5 值,不能丢,需要持久化保存,系统重启之后依旧要在。
求大佬们指点一下思路,主要是速度要快,快,快。
先提前感谢各位大佬的思路。
举报
·
160 次点击
登录
注册
站外分享
微信扫一扫
QQ分享
微博分享
豆瓣分享
复制链接
显示全部
|
最新评论
13 条回复
沙发
tool2dx
初学
2024-9-4 10:06:35
md5 是 16 个字节,100 万也才 16,000,000 字节,约合 16M 内存。
redis 已经很快了,再快怕只有手搓一个 hash 查找表了。
板凳
sky497134710
小成
2024-9-4 10:10:05
md5 -> 二进制 -> redis 位图
地板
MoYi123
小成
2024-9-4 10:12:39
速度 30-40 毫秒的话, 我觉得很有可能是用 for 循环查了 300 次 redis, 或者是连 redis 的网络不行. 想个办法写成一句查询, 一次性返回 300 个结果.
如果新 md5 大概率不在这 100 万个里面, 可以外面套一层 bloomfilter, 减少查询量.
5#
Kaiv2
小成
2024-9-4 10:14:58
直接预加载到机器内存中,消耗时间 0 毫秒
6#
sagaxu
初学
2024-9-4 10:15:23
redis pipeline 了解一下
7#
aflow
小成
2024-9-4 10:15:46
查询的时候和布隆过滤器组合使用,过滤下应该可以快不少
8#
PTLin
小成
2024-9-4 10:23:10
那就加载到本机然后前缀树匹配不行吗,我试了下 6800h 单线程匹配也就 1 毫秒
9#
fruitmonster
小成
2024-9-4 10:26:59
布隆不行么?
10#
yagamil
小成
2024-9-4 10:40:14
我觉得 mysql 都够用了,索引+ in 语句
下一页 »
1
2
/ 2 页
下一页
返回顶部