请教一下 mongodb 千万级数据量查询优化问题

2019-03-06 20:38:50 +08:00
 nicking

现公司有个日志系统,记录了很多用户的行为日志,后面会根据时间对日志进行统计,比如统计网站的哪个功能最活跃,进的人最多,才开服七天,数据已经达到了一千三百多万条了,然后统计的时候查询特别的卡,该怎么优化呢,v 友给点建议鸭,我已经在时间戳上面添加了一个索引了,但是还是很卡

18015 次点击
所在节点    MongoDB
15 条回复
hxt
2019-03-06 21:00:17 +08:00
只加了一个索引不够,功能字段也要加索引吧。
BBCCBB
2019-03-06 21:01:17 +08:00
用 es 记录日志,然后统计。
sunnyadamm
2019-03-06 21:12:14 +08:00
索引加的不到位
jingniao
2019-03-06 22:39:15 +08:00
查询条件字段加索引
日志类还是 ES 吧……
hilbertz
2019-03-06 22:50:57 +08:00
1. 减少统计时读取的数据量,分段统计
2. 构建同步数据库,在其上进行统计
DsuineGP
2019-03-07 00:16:02 +08:00
反正我们的日志从 mongo 迁到 es 了,一个是 mongo 数据量大了增加索引不方便,另一个是没找到好的办法释放空间
tony601818
2019-03-07 03:27:00 +08:00
换时间序列数据库,比如 InfluxDB
kiddingU
2019-03-07 09:25:24 +08:00
业务场景,mongodb 不适合把,换 es 存储把
mineqiqi
2019-03-07 09:26:52 +08:00
上 es 吧,mongo 性能这么差么,mysql 千万级别的数据索引和查询写得好的话没有很慢
nicking
2019-03-07 10:37:00 +08:00
@jingniao
@BBCCBB
好的,我去了解下这个
nicking
2019-03-07 10:39:35 +08:00
@hilbertz 我这样想过,按天数进行查询,开发成多线程可以不呢
janxin
2019-03-07 10:53:13 +08:00
我猜是索引有问题?你要么 explain 看一下?
hhhzccc
2019-03-07 11:46:17 +08:00
explain 看看索引生效没。
nicking
2019-03-07 12:01:01 +08:00
@janxin springboot 里面怎么看
nicking
2019-03-07 12:01:31 +08:00
@hhhzccc 官方提供的工具里面生效了的,但是 springboot 里面我不知道怎么看

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

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

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

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

© 2021 V2EX