I need advice regarding how to model data in ES:
we have multiple hundreds of customers(tenants), each tenant has aggregated data for some time range(one month, one year, one week etc). Tenants are of different sizes starting from almost 0 documents and reaching 100Mil and event more documents(there are ~10 big ones), so we are setting number of shards for each index starting from 1 and reaching 20 at max)
We build index per time range because it contains documents that show aggregated view of this time range(i.e. ES can't do this type of aggregation on the fly, so we prepare data to be aggregated already)
The question is - how to setup indexes for all customer x time-range.
Currently we have 1 index per customer per time range, which gives us flexibility to maintain each index separately.
However, reading the forum I came to the conclusion that ES doesn't like many indexes? What are common-solution for such scenario?
e.g I can think about 1 index per 1 time range with some routing strategy
we have rather small cluster(under 20), so shards of each index are distributed among them
Any advice will be appreciated!