# Routing & Nodes

**URL:** <https://discuss.elastic.co/t/routing-nodes/10365>\
**Category:** Elasticsearch\
**Created:** [January 16, 2013, 4:08am UTC](https://discuss.elastic.co/t/routing-nodes/10365 "2013-01-16T04:08:05Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![ryanogle](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ryanogle/32/2404_2.png) [@ryanogle](https://discuss.elastic.co/u/ryanogle)\
**Post date:** [January 16, 2013, 4:08am UTC](https://discuss.elastic.co/t/routing-nodes/10365/1 "2013-01-16T04:08:05Z")

</div>

This is a very basic question, but I can't seem to find the answer in the  
documentation (I'm sure I'm missing it somewhere). But regarding nodes &  
request routing. If we have an index that is split up between several  
nodes (lets say 10) each containing a shard, and now I want to make a  
query, do I point my query to a master node which then sends the request to  
each of the 10 nodes, compiles the result, and then sends the response back  
to me? Or can I send the request to any of the 10 nodes, and it will do  
the same (forward the request to the other 9 peers, compile and send back  
the response)? Or is it some other flow entirely?

Thanks for your help,  
-Ryan

--

---

<div class="post-metadata">

**Author:** ![TheKnto](https://avatars.discourse-cdn.com/v4/letter/t/b9bd4f/32.png) [@TheKnto](https://discuss.elastic.co/u/TheKnto)\
**Post date:** [January 16, 2013, 6:33am UTC](https://discuss.elastic.co/t/routing-nodes/10365/2 "2013-01-16T06:33:49Z")

</div>

Hello, send to master node : as es is a distributed system, master node  
will do the job for you.  
Le 16 janv. 2013 05:08, "ryano" [ryanogle79@gmail.com](mailto:ryanogle79@gmail.com) a écrit :

> This is a very basic question, but I can't seem to find the answer in the  
> documentation (I'm sure I'm missing it somewhere). But regarding nodes &  
> request routing. If we have an index that is split up between several  
> nodes (lets say 10) each containing a shard, and now I want to make a  
> query, do I point my query to a master node which then sends the request to  
> each of the 10 nodes, compiles the result, and then sends the response back  
> to me? Or can I send the request to any of the 10 nodes, and it will do  
> the same (forward the request to the other 9 peers, compile and send back  
> the response)? Or is it some other flow entirely?
> 
> Thanks for your help,  
> -Ryan
> 
> --

--

---

<div class="post-metadata">

**Author:** ![ryanogle](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ryanogle/32/2404_2.png) [@ryanogle](https://discuss.elastic.co/u/ryanogle)\
**Post date:** [January 16, 2013, 7:25am UTC](https://discuss.elastic.co/t/routing-nodes/10365/3 "2013-01-16T07:25:48Z")

</div>

Thanks for your answer. A follow up question - if all queries are going  
through a single master node, then no matter how much I shard to additional  
worker nodes, there is a theoretical limit based upon how much throughput  
the master can take, correct? What happens when my throughput exceeds what  
the master can take?

--

---

<div class="post-metadata">

**Author:** ![Clinton\_Gormley](https://avatars.discourse-cdn.com/v4/letter/c/50afbb/32.png) [@Clinton\_Gormley](https://discuss.elastic.co/u/Clinton_Gormley)\
**Post date:** [January 16, 2013, 9:40am UTC](https://discuss.elastic.co/t/routing-nodes/10365/4 "2013-01-16T09:40:04Z")

</div>

On Wed, 2013-01-16 at 07:33 +0100, TheKnto wrote:

> Hello, send to master node : as es is a distributed system, master  
> node will do the job for you.

No. You can send the request to any node. In fact you should round robin  
through all the nodes to spread the load. Each node has the full  
cluster info and knows how to scatter the request to the appropriate  
shards, and to gather the result.

clint

> 

--

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 6, 2017, 2:56am UTC](https://discuss.elastic.co/t/routing-nodes/10365/5 "2017-07-06T02:56:10Z")

</div>


