How to store real estate data in an elastic search?

I have Real Estate data. I am looking into storing it into elastic search to allow users to search the database real time.

I want to be able to let my users search by key fields like price, lot size, year-built, total bedrooms, etc. However, I also want to be able to let the user filter by keywords or amenities like "Has Pool", "Has Spa", "Parking Space", "Community"..

Additionally, I need to keep a distinct list of property type, property status, schools, community, etc so I can create drop down menu for my user to select from.

What should the stored data structure look like? How can I maintain a list of the distinct schools, community, type to use that to create drop down menu for the user to pick from?

The current data I have is basically a key/value pairs. I can clean it up and standardize it before storing it into Elastic Search but puzzled on what is considered a good approach to store this data?

I would start with Elastic App Search it will simplify almost all that , in short you are describing a catalog which happens to be real estate.

Here is a great quickstart
Here is a good webinar coming soon.

App Search supports facets (the category) filters, fuzzy search of the description, pinning certain results , geo-search etc, relevance tuning through a GUI etc.

It is also super easy to ingest / test data.

And if you just want to try it out real quick you could launch a trial on cloud.elastic.co then if you like it you could download and run basic for free.