java - AWS Lambda 每天向 Redshift 查询一次
问题描述
我对 AWS 生态系统相当陌生,尤其是在数据方面。
我有一个项目要求我每 24 小时自动对 Redshift 中的一个表运行一次查询,并且可能会删除该查询结果中的一些列,并使用 RESTful API 在第 3 方站点上访问一些端点以进行进一步检查。
我对此有几个问题。
- 将 AWS Lambda (Python) 和 Redshift 用于此类任务是否是一种很好的使用模式?
- 我应该为 AWS Lambda 选择 Java、Python 还是 NodeJS?哪一个对查询 Redshift 有更好的支持?
- Lambda 和 Redshift 都在同一个 VPC 中,并且为出口 NAT 网关使用相同的私有子网,这是安全设置吗?
- 在此设置上共享任何示例代码吗?
- AWS Lambda 是否有一个每 24 小时触发一次的定期调度程序?还是仅仅基于事件?
- 由于应用程序数据库位于 DynamoDB 中,是否更高效、更轻松地设置 AWS Lambda 来查询 DynamoDB 以获取类似数据?
谢谢,山姆。
解决方案
我将尝试以最好的意图回答您的问题:
- 是的,没有理由不这样做。
- 这完全取决于您的偏好。所有语言都为您的用例提供支持。
- 这很好。当您使用 IAM 管理进一步的访问权限时,您只需要查看您的 lambda 函数的出口流量是否得到正确监控。
- 那里有很多。看看吧。
- 您可以使用 CRON 字符串设置 CloudWatch 规则,该规则将根据需要调用您的函数。此外,您可以为您的函数设置许多其他触发器,例如 DynamoDB 流、CloudWatch 日志事件……有无限可能。
- 如果您只想定期查询以收集一些数据,那么您的数据实际存储在哪里没有区别。
推荐阅读
- html - Html img srcset,不显示移动设备的小图像
- java - 如何确定从(Java)发生了哪一侧冲突
- javascript - javascript 在您键入时显示多个搜索结果
- bash - 我可以返回并更改我之前在 Bash 中回显的一行吗?
- sql - ExecutedScalar() - ASP.NET Web 应用程序
- jquery - 如果 "li" 有这个 id,不要添加活动类
- python - Odoo 错误,合作伙伴不能跟随同一对象两次
- java - 将可执行 jar 包到 .exe 中,以便在未安装 jre 的情况下使用
- apache-spark - PySpark SQL TRY_CAST?
- javascript - JavaScript 在 IE11 上不起作用/触发 - 我在脚本中使用 onclick=function() - SCRIPT5 控制台错误