Is it possible to set up Elasticsearch in a way that you can take a small index (around 100MB or so) and configure a cluster so that all data in that index is available, in whole, on every node in the cluster?
Basically we're looking to leverage Elasticsearch in a way similar to an in memory cache on all of our application servers so that when an application queries against the index, the query is served locally on the same node and never leaves the machine so we avoid incurring network overhead (the network here is somewhat slow and prone to problems).
This index is high read, low write. There are maybe 50 writes a day, if that, as the data is not volatile at all (think mostly configuration type stuff, etc).
After reading quite a bit on setting up clusters I still can't suss out whether or not you can force the entirety of an index to be fully available on every node or if that is simply not possible as Elasticsearch will always try to distribute the data over separate nodes.
If this is possible - what would be the desired configuration for a 40 node cluster? One shard per node plus one replica?
Any information or ideas on this would be much appreciated.
Regards,
Craig