千万级数据 10 毫秒以内的简单查询 有什么最佳实践?

146 天前
 woduzibue
千万级别的数据量,简单查询,要求响应时间 10ms 左右能做到么?或者 50ms 以内
关键字是一些汉字组合 查处相关的信息 ,目前只需要考虑查询
请教各位大佬 现在都有哪些成熟的方案
我了解下来最方便的还是 redis 加 mysql
es 不太清楚行不行

各位大佬支支招
5781 次点击
所在节点    数据库
42 条回复
dzdh
146 天前
manticoresearch

zincsearch

meilisearch (内存成本高)

sphinxsearch (已闭源能免费下载)


tantivy 使用难度高
woduzibue
146 天前
@dzdh 感谢大佬 我去查查看看
whileFalse
146 天前
你倒是说是什么样的数据啊
shimada666
146 天前
单机 clickhouse 秒了
nice2cu
146 天前
es 可以
woduzibue
146 天前
@whileFalse 数据 举个例子 就是 ,所有的地标(商店、宾馆)名称和这些地标的类型、介绍之类的信息
要求就是 输入名称 快速返回是不是一个 地标 和是什么类型的
ychost
146 天前
阿里云 TableStore ,目前 10 亿数据,大概 10ms 返回
woduzibue
146 天前
@ychost 这个看下来好贵呀 不知道是不是我看的价格不对
RandomJoke
146 天前
千万级别 ES 应该随意应付
BiChengfei
146 天前
( type ,name ),需要根据 name 全文索引。MySQL InnoDB + 固态就够了吧,千万数据真的很小,如果 name 是精确搜索,就唯一索引,模糊搜索就全文索引。不行就用 Memory 引擎
Nich0la5
146 天前
索引建的没问题的话 大部分数据库都能满足
decken
146 天前
mysql 可以了 机器好一点
woduzibue
146 天前
@BiChengfei 嗯 需要精确搜索
woduzibue
146 天前
@decken
@Nich0la5 之前知识用过 mysql 做一些业务,没有具体关注过耗时这么低的场景 感谢感谢
mark2025
146 天前
XepMCWEKZ76L695l
146 天前
mysql 足以
yjhatfdu2
146 天前
这点数据,模糊搜索直接 pg 用 bigm_gin 索引秒了
hefish
146 天前
直接存 ssd 上搞个散列表就行了。
wxf666
146 天前
这点数据,即使是在性能弱鸡的手机端,进行全文搜索,不是最简单的 1MB 的 SQLite ,都能解决的吗?


[《微信全文搜索耗时降 94%?我们用了这种方案》]( https://cloud.tencent.com/developer/article/2220615 ) 里说:

> 一个包含 100w 条中文内容、每条长度 100 汉字的 FTS5 的表查询三个词,optimize 状态下耗时 2.9ms

> 100w 条内容每次写入 100 条的情况下,按照 WCDB 的方案执行 merge ,耗时在 10s 内。
Kinnice
146 天前
ck 秒了
es 秒了
mysql 秒了
pg 秒了

总结:千万量级不算大,业务也不复杂,做好索引即可

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1061099

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX