ES查询速度慢
集群18T数据,138亿条,994个索引,全索引全字段下搜索某名字,查询时间为4-10S,可以从哪些角度去优化
Elasticsearch • zqc0512 回复了问题 • 5 人关注 • 3 个回复 • 3446 次浏览 • 2018-10-26 09:41
听起来像是将数据库里的表作为索引一对一导入到了ES,才会需要同时查询这么多的索引和字段。 这样做是快不了的,因为一次搜索,同时查询的shard数量太多,会有非常多的随机磁盘IO产生。 问题根源是数据模型缺乏设计, 应该根据查询的需要,对数据做抽取,转换... 显示全部 »
听起来像是将数据库里的表作为索引一对一导入到了ES,才会需要同时查询这么多的索引和字段。 这样做是快不了的,因为一次搜索,同时查询的shard数量太多,会有非常多的随机磁盘IO产生。 问题根源是数据模型缺乏设计, 应该根据查询的需要,对数据做抽取,转换,然后写入到同一个索引里。 如果是全字段查询,应该利用内置的"_all"字段,将所有字段的内容合并到"_all"这个统一索引,搜索的时候直接对"_all"字段检索会快很多。
集群18T数据,138亿条,994个索引,全索引全字段下搜索某名字,查询时间为4-10S,可以从哪些角度去优化
回复Elasticsearch • zqc0512 回复了问题 • 5 人关注 • 3 个回复 • 3446 次浏览 • 2018-10-26 09:41