【问题标题】:Performance issue with Elastic search cluster弹性搜索集群的性能问题
【发布时间】:2017-09-17 04:46:30
【问题描述】:

我们使用 elastic 进行非常有效的搜索,但一次简单的搜索似乎需要大约 800 毫秒。这是我们直接使用弹性 API 命中的时候。。

我们有自己的集群,有 3 个节点,其中一个作为主节点,另外两个作为数据节点。我们只有一种数据类型的索引,因为所有项目都是相同的。我们有大约 800 万条记录。我们有 5 个主分片和 2 个副本分片。

我的查询是:

  1. 在一个索引/类型中有 800 万可能会导致这种情况?我应该考虑拆分它吗?
  2. 我们总是打主节点读写,是否应该考虑调用数据节点进行读取?
  3. 为了获得更好的性能,我还应该考虑做些什么不同的事情?

提前非常感谢。

【问题讨论】:

  • 能否请您添加您的意见,以便社区获得帮助

标签: elasticsearch


【解决方案1】:
  1. 单个索引中的 800 万个文档并不多,但这取决于您机器的硬件规格(请随时更新您的问题)
  2. 您应该永远不要点击主节点来搜索您的文档,而应该直接点击其中一个数据节点。主节点仅用于管理您的集群,但绝不应充当处理您的查询的客户端/协调节点
  3. 只有两个数据节点,不需要2个副本分片,一个就足够了

【讨论】:

  • 非常感谢...我们应该点击主节点进行写作,还是不应该发生这种情况?另外,应该有什么硬件规格?
  • 永远不要点击主节点,它不应该处理客户端请求。通常主节点是规格较低的较小节点(更少的磁盘空间、更少的 RAM、更少的 CPU)。硬件规格是指 CPU、RAM 和 HDD(大小/类型)
  • 您是否看到了一些改进?
  • 谢谢,最后一件事..我有主节点设置,例如 master.node =true 和 data.node=false,我仍然看到在此主机上创建索引...什么是主节点的最佳配置?
  • 如果你有node.data=false,你不可能在那个节点上有数据。运行curl -XGET localhost:9200/_cat/allocation?v 会得到什么?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-03
相关资源
最近更新 更多