It seems like setting up and syncing an entire separate database for search wouldn't exactly be "trivial"...
Can they be really considered 'documents' or are they actually database fields?
https://www.chrisstucchio.com/blog/2013/postgres_external_tr...
https://www.elastic.co/guide/en/logstash/current/deploying-a...
Can you explain how you keep your Elasticsearch index consistent with your main database, in face of system failure (for example a network partition or a machine hard reboot)? This is usually the non-trivial part.