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!