amazon-web-servicesamazon-dynamodbopensearchamazon-quicksight

What is the better solution to display analytics on front end from AWS Opensearch vs Quicksight vs just DynamoDB data?


My project is a platform that offers loyalty programs to business owners. A business can scan customers QR codes and give/retrieve points + many more actions.

When they scan and submit that new scan with the given points to an API, a lambda is triggered that stores multiple objects (in DynamoDB) like:

What should be the proper approach between these options? Or what else should be a better one?

  1. Every time a business owner wants to view some analytics in dashboard, make some requests to AWS Opensearch
  2. Every time a business owner wants to view some analytics in dashboard, display some embeded diagrams from AWS Quicksight
  3. Every time a business owner wants to view some analytics in dashboard, make many requests to DynamoDB (using API Gateway and Lambda) based on dates and organize the retrieved data

Solution

  • There are too many variables at play to make a recommendation. If it's very frequent use OpenSearch. Less frequent use Quicksight, where you can refresh the data daily for example. And if it's key value look ups, use DynamoDB.