Search Workload

This lab highlights a migration from self-managed Open Distro for Elasticsearch (ODFE) cluster, to an Amazon Elasticsearch Service domain. The front end application is a movie browser that supports searching a small library of movies, perhaps for purchase or streaming.

web-app

You can try the front end application to see what it does:

  • Start typing in the search box at the top of the window and see results changing as you type. The words you enter, or related words will be highlighted in the results.

  • You can also filter by genre, actor or director from the left menu, or filter with rating from the top-left histogram.

To support this front end, we employ several AWS components. The client web browser connects through Amazon CloudFront to an Amazon API Gateway that forwards search requests, via Lambda, to the Open Distro for Elasticsearch cluster. ODFE provides the search capability that powers the front end.

archi-before

To perform the migration, you will employ Logstash, open source ETL software, to send data from the source cluster to Amazon ES. You will use Amazon Cognito to provide a secure means of transferring the data.

The simplified migration architecture diagram is the following:

archi-during

and the simplified final architecture diagram is:

archi-after

Lab deployment

Provisioning cloud applications can be a challenging process that requires you to perform manual actions, write custom scripts, maintain templates, or learn domain-specific languages. The AWS Cloud Development Kit (CDK) uses the familiarity and expressive power of programming languages for modeling your applications. It provides you with high-level components called constructs that preconfigure cloud resources with proven defaults, so you can build cloud applications without needing to be an expert. AWS CDK provisions your resources in a safe, repeatable manner through AWS CloudFormation.

You will use the CDK to deploy all of the components in the lab.