# Recommendation for multi index/node/cluster setup

**URL:** <https://discuss.elastic.co/t/recommendation-for-multi-index-node-cluster-setup/175241>\
**Category:** Elasticsearch\
**Created:** [April 3, 2019, 3:56pm UTC](https://discuss.elastic.co/t/recommendation-for-multi-index-node-cluster-setup/175241 "2019-04-03T15:56:55Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![elitzur\_e](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/elitzur_e/32/48445_2.png) [@elitzur\_e](https://discuss.elastic.co/u/elitzur_e)\
**Post date:** [April 3, 2019, 3:56pm UTC](https://discuss.elastic.co/t/recommendation-for-multi-index-node-cluster-setup/175241/1 "2019-04-03T15:56:55Z")

</div>

Hi. Recommendation for multi index/node/cluster setup

We are looking for the best way to approach this search scenario:

1 huge erp/crm with 100M~ documents.

Each document (word/pdf/img) belongs to a different customer

The request is to build an application that after authentication of a customer will allow that customer to search HIS documents.

Now, i believe that elasticsearch is the way to go here.

Though i am not sure what would be best strategy here.

i will replicate all the documents from the existing DB to be indexed to elastic.

Should i try to build 1 index per customer?(each customer has about 100k docs)

or have it separated in the node level? Would i need to have more than one cluster to have best results?

thanks for any direction or answer form your own experience.

Thanks 🙂

---

<div class="post-metadata">

**Author:** ![DavidTurner](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/davidturner/32/22453_2.png) [@DavidTurner](https://discuss.elastic.co/u/DavidTurner)\
**Post date:** [April 3, 2019, 4:27pm UTC](https://discuss.elastic.co/t/recommendation-for-multi-index-node-cluster-setup/175241/2 "2019-04-03T16:27:59Z")

</div>

> [@elitzur\_e](#):
>
> Should i try to build 1 index per customer?(each customer has about 100k docs)

An index-per-customer design is normally a bad decision in the long run, because you will get more customers over time and eventually Elasticsearch will start to struggle with the number of indices that this entails. Also 100k documents is very small for an index. Here is an article with advice for shard sizing:

> **[How many shards should I have in my Elasticsearch cluster?](https://www.elastic.co/blog/how-many-shards-should-i-have-in-my-elasticsearch-cluster)**

> [@elitzur\_e](#):
>
> or have it separated in the node level? Would i need to have more than one cluster to have best results?

I think you might be overthinking things. The simplest possible approach would be to have a single index for all the data, restricting each customer to their own documents using a [bool query](https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-bool-query.html) to add a [term query](https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-term-query.html) to each search. Have you tried this? If yes, and it didn't work, where did it fall down?

---

<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:** [May 1, 2019, 4:28pm UTC](https://discuss.elastic.co/t/recommendation-for-multi-index-node-cluster-setup/175241/3 "2019-05-01T16:28:01Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
