繁体   English   中英

弹性搜索API与Spring数据与Logstash

[英]Elastic search API Vs Spring data Vs logstash

我计划使用基于Spring Boot的休息服务对我们的仪表板进行弹性搜索。 经过研究,我看到了前3个选项

选项A:

  1. 使用Elastic Search Java API (从注释中消失)
  2. 使用Elastic Search Java Rest客户端
  3. 使用spring-data-elasticsearch (计划使用es 5.6,但对于最新的es 6来说颇具挑战性,因为我现在看不到它的支持)

选项B:

还是应该使用logstash方法在postgressql和使用logstash的弹性搜索之间同步数据?

在高负载情况下,其中哪一种是从ES获得接近实时数据的长期方法?

用例:我需要从postgresql表中保存一些数据以弹性搜索我的仪表板(接近实时)

两个表和es都经常更新,以保持当前状态

负载将在几周内增加

从本质上讲,列出的选项是:应该使用现成的解决方案(logstash),还是应该实现自己的解决方案。

首先尝试使用logstash看看它是否对您有用-比实施自己的解决方案所需的时间更少,而且您可以在数分钟内获得可行的解决方案(如果不是数百张表)

如果要近乎实时,则需要弄清楚它是否允许您:

  • 处理增量更新,即,如果其“ tracking_column”配置适用于您的数据结构,并且仅在每次运行中加载更新的记录,而不是整个表。
  • 以所需的频率运行
  • 总的来说,可以满足您的延迟要求

如果您决定采用自己的解决方案,请记住,spring-data-elasticsearch是底层Elasticsearch客户端的高级包装。 如果有延迟目标,那么在较低级别上工作(elasticsearch客户端)可能会为您提供更好的控制和更多选项来调整管道。

否则,客户端的选择与数据馈送功能(卷/更新频率)和db / es集群配置无关紧要。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM