我有一个dynamo db表,其中包含Date,City和其他属性作为列。我已经用Date作为哈希键配置了GSI。该表包含每天记录的350个城市的27个属性。
| Date | City | Attribute1 | Attribute27|
+------------+------------+-------------+------------+
| 25-06-2020 | Boston | someValue | someValue |
| 25-06-2020 | NY | someValue | someValue |
| 25-06-2020 | Chicago | someValue | someValue |
+------------+------------+-------------+------------+
我在API Gateway中有一个Lambda代理集成设置。 lambda函数接收7天的日期范围作为请求。在此范围内的每个日期都用于查询dynamodb(使用查询输入)以获取给定日期的所有项目。每天的结果将合并一周,然后作为JSON响应发送回去。 将lambda内存增加到1024MB(即使仅消耗了76MB)后,POSTMAN中的延迟约为1.5s。
有什么方法可以改善效果?发电机数据库已经按需运行。
答案 0 :(得分:0)
您没有说是否正在使用并行查询。
如果不这样做。
您也没有说Cloudwatch针对查询延迟显示了什么,正如Marcin所说,DAX可以帮助减少这种情况。
您也没有提到针对lambda执行而显示的cloudwatch。关于优化lambda的文章很多。
剩下的就是网络...对此您无能为力。.要考虑的一项是重用Db connections in your lambda