I have an application that needs to filter the data based on more than 7+ fields. 2+ of these fields are array and currently stored on MongoDB (each of them individually stores almost thousands of hexadecimal id). In MongoDB it’s not possible to create parallel indexes (for very understandable reasons) Therefore, I’m just able to index based on one single field. In the following thread, a similar issue has been already discussed.
elasticsearch v.s. MongoDB for filtering application
The answer provides some good insights into how Elasticsearch differs from NoSQL databases. But I’m still confused about, will Elasticsearch be performant if I just create the nested mappings for two array fields.
Will the described " Vector Space Model " help me with filtering based on multiple array fields with a good performance when I do exact match/range searches?
I’ve also asked the theoretical aspect of the subject in here: data structures - How does inverted indexes differs from B-tree indexes - Computer Science Stack Exchange