大数据查询
需求:有 10 亿左右的数据需要做查询,想在毫秒内返回匹配结果
存入的内容如下
id
cardno
name
short
createtime
1
Dkmy48k7afjsG9T75BtTHOdssqCIyKtt
Jack Ma
DKyKtt
nowtime
数据库存入的是这些数据,但是我匹配的话是通过 short 来匹配的,有什么好用的软件或方法吗?
付费求指导
short 没啥含义直接 kv 查询的? redis ?
单表大数据? clickhouse
10 亿上 ES 吧
不一定单表,可以多表 可以用 short 的 前后来分一两百个表
可以用分表,10 亿条,es 能干毫秒内吗 铁铁
short 是要查询的内容,要么查全部 要么查后面四位, 只有这两个查询要求
redis 10 亿级的数据 带不动吧?
是 short like 还是需要怎么查?单列查询感觉 clickhouse 的 prewehre 场景蛮合适的
like 应该不行吧,因为我的想法是 先查全部,如果不满足就只要后面 4 个
以我举例的为例,先查询 DKyKtt ,如果没查到则查询 yKtt 的数据 给返回
你可以用 ck 测下,short 一列,sub_short 后 4 位一列。理论上适合 clickhouse 单列 prewhere 应该很快,但是 ck 的 qps 支持不会特别高,qps 比较高的场景建议你试试看 doris
内存给够,有啥不行的
加一列 short_reversed 存数据 reverse(short), 分别给 short 和 short_reversed 加索引。10 亿数据洒洒水啦
不需要 qps 很高,一天可能就最多几千次请求
HAHA 是是是 内存够 啥都能干 ,哪像这种 10 亿级的数据,128g 的内存够不
用 mysql 吗
你要分表的话,如果能保证均匀分布,100 张表,单表不就 1kw 了,索引直出问题不大了吧。。如果你说 1ms 以内,感觉必须得内存了吧。。
#14 任意支持 btree 的数据库
mysql 分表,单表 1kw 的数据,100 张就够了 。但是你的意思是这种情况下最好就是数据能均匀分布到每个表里,如果想提高查询效率,我服务器的内存得拉起来吗
数据在硬盘里的话,怎么估计也不能 1ms 以内,你拉高内存加快本质上不就是从内存出。。
上云也可以,只要做到响应毫秒级内返回就行
铁铁方便 v X 吗 付费求指导 哈哈
我看看 pgsql
建议上 ES 吧 。
毫秒内还是毫秒级别啊- -,你说的 1s 以内的话,单表 1000w ,走索引应该都行,关键在于你怎么尽量保证他均匀分布,常见的列式存储和倒排查询比如 ES CH 1s 以内还是比较轻松的
1s 不是 1ms 哈哈 1 秒内
Python 官方文档( docs.python.org/3.14/whatsnew/3.14.html#a-new-type-of-interpreter) : A ne…
求教各位大神,想要 Mac Mini 直连 NAS 在线剪辑,帮忙看看网络还有办法优化嘛? 1 、Mac Mini 处于拓扑图 “多台电脑” 其中一台。 2 、所有交换机、…
一直在用电动剃须刀,不爱用传统的刀片和泡沫,嫌麻烦,以前的比较旧了双 11 了打算换个,不是广告贴。 想了想具体有几个需求 剃须干净,使用舒适,这是基本需求 全身水洗,清理方…