Is my scenario a good candidate to use ElasticSearch?

I work for a real estate company that pulls MLS data from over 500 different sources. We are currently storing the listing property data as a flat jsonb document within Postgres. For example, one MLS might have the following in their data:

{
  "LIST_0": "19990901150330774572000000",
  "LIST_1": "20200729183231147169000000",
  "LIST_2": "20",
  "LIST_3": "4784",
  "LIST_4": "Y",
   ...
}

Each MLS is different and could very likely have different keys for the same type of data. For example, MLS 1 could use LIST_15 for the number of bedrooms, whereas another might use BEDROOM_COUNT.

Our goal is to build very fast search capabilities across the multitude of MLSes we connect with.

Would we be able to build effective search indexes without having to normalize the data? If we had to build an index per record, that seems like it might be overkill (or potentially inefficient).

Are there any open source apps that are doing something similar to what I'm describing?

Thanks for any help you can provide!

If you want fast responses and good results I suspect you will need to normalize the data.

Having large number of small indices and shards does not scale nor perform well so I believe at least some level of normalization will be required.

Thank you for your feedback. This was my thought as well.

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