I need to create a Data Dashboard like this from the image, Dashboard data web app
I have to get the data from my tables from dynamodb, which I'm already doing. But I'm doing it using table_name.query() with python using lambdas aws. But from what I see it is not the best way because my lambda is giving timeout after 0.6 seconds when trying to list all my table of registered users that has more than 3000 users, I know that I could increase this lambda execution time, but it would become an experience bad to wait so long. Because of the timeout I believe I'm doing it the wrong way. Is there any aws technology that is made for these massive data searches? Thanks for the answer.
CodePudding user response:
A good AWS native solution is to use CloudWatch. CW is a suite of applications bundled together. You can push logs there as data. Create metrics from those logs or alarms. Create Dashboards from data which can be ingested from anywhere.
So your flow could be like Data Source -> CloudWatch Logs -> CloudWatch Dashboards.
How to create Dashboard from Logs is shown here: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_ExportQueryResults.html
If your data source can't push the data, then you can schedule Lambda (every x seconds) to PULL the data and push to cloudwatch logs.