In this webinar, Aravind covered the following topics step by step in a Github branch.
- Building a basic Python Flask application. (1-basic-flask-app)
- TailwindCSS to build a beautiful search experience (2-add-tailwindcss)
- Working with elasticsearch-py and elasticsearch-dsl libraries (3-add-elasticsearch)
- Working with Elastic App Search client library (4-add-appsearch)
- Shipping logs, traces from the flask app (5-apm-logs)
- Building a Docker container (6-deploy)
The entire code is available under this repository.
Questions from the session:
- What are the ways to build a search experience using Elasticsearch with the existing RDBMS data?
A: There are two primary ways: Using Logstash plugin – logstash-input-jdbc or Using the client libraries.
- By using the logstash plugin (input-jdbc-plugin), you can connect to any RDBMS data and effectively sync the data to elasticsearch. You can also do incremental data fetching.
- By using the client libraries, like elasticsearch-py, Java high-level REST clients directly ship the data to elasticsearch directly from the application.
A: Yes, with some caveats. There are several organizations that use Elasticsearch as their primary data store. But, please note that you need to have a disaster recovery strategy for the data stored in the cluster. You might want to snapshot your data to an object store like S3 or GCS.