As a matter of best practice, if I have an ideal configuration:
- Should queries be directed to coordinating nodes or data nodes?
- Should index writes/deletes/updates be directed to coordinating nodes or data nodes?
Thanks!
As a matter of best practice, if I have an ideal configuration:
Thanks!
Coordinating nodes
Data nodes
Thank you for the clear and definitive response. That is very helpful. Can you help me further reconcile this advice with that provided by @javanna in this answer?
I wonder if for coordinating node you mean coordinating only node. Every node is by default a data node, master eligible and coordinating node (also ingest node) at the same time. It certainly makes little sense to send indexing requests to coordinating only nodes, while it does make sense to send search requests to them if you have them.
To make it clear, I understood the original question as coordinating only nodes and my reply was referring to the same as well.
That is exactly what I meant: coordinating-only nodes. Sorry I wasn't more specific.
So, given a non-trivial index, I'd like to confirm:
Putting this all together for a non-trivial application, I should optimally use two separate REST clients in my application, one REST client for queries (that uses only the coordinating-only nodes and no data nodes), and one REST client for index writes (that uses only data nodes and no coordinating-only nodes). This would be an ideal setup, right?
Thank you.
This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
© 2020. All Rights Reserved - Elasticsearch
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant logo are trademarks of the Apache Software Foundation in the United States and/or other countries.