Search-Backed Applications
Publication date: November 17, 2022 (Diagram history)
This architecture outlines the process to add or improve search for an existing application. It uses Amazon OpenSearch Service for indexing and retrieval, SageMaker AI for ML enrichment, and Amazon Simple Storage Service for user interaction data storage.
Search-Backed Applications
The following steps describe the architecture:
-
An application user sends a query to the web servers.
-
The web servers deliver the query to the query service. The query service can use ML models from SageMaker AI for user segmentation, concept and entity extraction, and query-to-click analysis.
-
The query service enriches or rewrites the query based on user segmentation from SageMaker AI, user preferences from Amazon RDS, and past query performance. It sends the augmented query to Amazon OpenSearch Service.
-
The user sends only searchable data to Amazon OpenSearch Service, using a relational or NoSQL system as the system of record. The query service retrieves only keys in the search results and fetches the full record from the system of record.
-
The web servers and query service send user interaction data to an Amazon S3 data lake or Amazon Redshift.
-
An offline process pulls user interaction data from the data lake.
-
The offline process takes data such as clicks to augment the records in the catalog and updates models in SageMaker AI.
-
Records are updated in Amazon OpenSearch Service as needed.
-
The web servers send catalog updates to Amazon OpenSearch Service, or a change data capture process brings those updates to Amazon OpenSearch Service.
-
Business analysts generate reporting and KPIs from the processed user interactions.
Further reading
For additional information, refer to the following resources:
Diagram history
To be notified about updates to this reference architecture diagram, subscribe to the RSS feed.
| Change | Description | Date |
|---|---|---|
Initial publication | Reference architecture diagram first published. | November 17, 2022 |
Note
To subscribe to RSS updates, you must have an RSS plugin enabled for the browser you are using.