Using ElasticSearch Transport Client with Amazon ElasticSearch Service ( AES )

一笑奈何 提交于 2019-12-08 10:56:25

问题


We are planning to move our Elasticsearch cluster to Amazon ElasticSearch Service ( AES ). Our current code base use native Java transport client to interact with ElasticSearch cluster but as per the AES documentation, it does not support the TCP transport.

The service supports HTTP on port 80, but does not support TCP transport.

Wanted to know couple of things :

  1. Wanted to know if this is still the case. I am asking this because the developer guide version looks a bit old, versioned "Developer Guide (API Version 2015-01-01)".

  2. If the answer is yes for Item 1, what kind of effort would be required to port the current logic to start using REST API's instead of transport client.

  3. Will there be a significant difference in the performance of native transport client vs REST API's. I assume using native client is more efficient.


回答1:


  1. Yes, this is still the case

  2. The migration from the Transport client to the High-Level REST client is supposed to be straightforward as stated in their objectives.

  3. The TCP level is three levels below the HTTP one in the OSI stack, so there will necessarily be an added overhead. It might be negligible, but you'll need to test it thoroughly to make sure.

  4. There was no 4, but I'm adding one: You might want to read this first: https://code972.com/blog/2017/12/111-why-you-shouldnt-use-aws-elasticsearch-service You should consider going to Elastic Cloud instead, which is much more powerful, flexible and less restrictive than AES.



来源:https://stackoverflow.com/questions/49274624/using-elasticsearch-transport-client-with-amazon-elasticsearch-service-aes

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!