52G 的库,用什么办法检索速度最快?

2016-04-04 14:23:34 +08:00
 ifconfig

只导了 126 的数据到 mysql 已经有 10G ,做了索引, like 语法查起来还是很慢。(平均: 45s 设备: 256SSD+i5 ) 要想达到 163password.download 查询的速度,该用什么技术或架构?

9554 次点击
所在节点    MySQL
63 条回复
Bryan0Z
2016-04-04 14:43:03 +08:00
这网站为什么会返回乱码,是我的密码还没泄露?
另外参照 找密码网的源码,人家 500G 数据, 30 多个库速度也在 10 秒以内
zonghua
2016-04-04 14:43:25 +08:00
按首字母分库啊,并行查找
yeyeye
2016-04-04 14:46:05 +08:00
他的是精确查找 你的是 like 查找 不是一个道理吧。只是要精确查找的话 还可以分成很多个表,查询速度必然迅捷无比。最简单的按 2 位首字母分表就可以分至少 1296 个 查询的时候做下判断就可以精确的去相应的表里面查 性能直接提升 1296 倍 你的 45S 马上就变成了 0.0347S
dapang1221
2016-04-04 14:53:48 +08:00
Sphinx
kslr
2016-04-04 15:16:37 +08:00
话说那个 TXT 里面乱七八糟的格式,我导了 100 万就放弃了,太麻烦了。
Flygoat
2016-04-04 15:32:11 +08:00
mongodb ?
416877140
2016-04-04 15:36:35 +08:00
@Bryan0Z 改 utf8 编码就好了
ifconfig
2016-04-04 15:39:03 +08:00
@yeyeye 虽然不是太懂,感觉好牛叉的样子,我先试试用首字母分区
liyvhg
2016-04-04 15:44:22 +08:00
全部加载到内存
ifconfig
2016-04-04 15:44:23 +08:00
@kslr 我用的是 LOAD DATA INFILE 语法,秒导
ifconfig
2016-04-04 15:45:38 +08:00
@Bryan0Z 哥们你说的找密码网的源码 ,有没有链接?
ucaime
2016-04-04 15:50:09 +08:00
倒入到 ES 集群了,嗯,正在倒入,还有两个包,几个亿数据毫秒级。妈蛋这次的数据重复太多,去重略耗时间
kslr
2016-04-04 15:50:29 +08:00
@ifconfig 可是格式呢,里面有----切分的还有不定长度空格什么的
ifconfig
2016-04-04 15:52:34 +08:00
@kslr
LOAD DATA INFILE 'path/info.txt' INTO TABLE xxx FIELDS TERMINATED BY '----' LINES TERMINATED BY '\n';
多看点参数说明就好了
ifconfig
2016-04-04 15:59:46 +08:00
@ucaime 看来哥们是搞大数据专家,我准备上 sphinx 试试
slixurd
2016-04-04 16:03:42 +08:00
Elastic Search 啊,虽然 like 这种通配符匹配还是很慢,但是分词后的模糊查询超快的,我们现在一个 index 就是 80G ,速度还超快。
ifconfig
2016-04-04 16:05:51 +08:00
@slixurd 牛叉,接触 ES 试试
SlipStupig
2016-04-04 16:17:49 +08:00
mongodb+es 几十亿都没任何问题,这种杂乱数据注意一下清洗,如果要做规则或者杂乱格式转发请用 kettle ,不过话说学会都是一个月后的事情了
SlipStupig
2016-04-04 16:18:26 +08:00
求裤子分享
badcode
2016-04-04 16:23:40 +08:00

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

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

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

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

© 2021 V2EX