注册 AWS Redshift 活动
Posted
技术标签:
【中文标题】注册 AWS Redshift 活动【英文标题】:Register AWS Redshift activity 【发布时间】:2016-02-17 11:35:14 【问题描述】:根据 AWS 文档,目前还没有 Redshift-Lambda 集成。 我们想做的是监控红移活动,以便在创建红移表、从 S3 复制或执行批量插入时做一些事情。 有没有办法注册这种活动,然后做类似的事情来运行 lambda 函数 ir 命令运行一个小脚本左右?
【问题讨论】:
【参考方案1】:Redshift 提供了一种事件通知机制。您可以找到完整的活动类别列表和消息here。如果这涵盖了您感兴趣的信息类型,您只需让您的 Lambda 函数添加 Redshift 用于事件通知的 SNS 主题作为事件源,并且每次 Redshift 发送事件时都会调用您的 Lambda 函数。
【讨论】:
这个事件通知机制好像和管理、配置、监控有关。我们需要检查是否已经从 S3 进行了特定查询或复制,并在此基础上做一些事情。我们正在开发一个 python 脚本,在 cron 表达式中检查 stl_query 表。【参考方案2】:您可以启用最终在 s3 中的 audit logs。
您想要的所有信息也可以在 various admin tables 中找到,前缀为 stl_
、stv_
和 pg_
。例如,来自 S3 的COPY
命令记录在stl_load_commits 中,stl_utilitytext 包含关于非选择查询(如CREATE
)的信息。
至于触发事件,您可以使用S3 trigger a lambda,当其中一个日志文件登陆或运行查询系统表并使用诸如cron作业或airflow之类的操作的偶尔作业。
【讨论】:
以上是关于注册 AWS Redshift 活动的主要内容,如果未能解决你的问题,请参考以下文章
AWS Data Pipeline RedshiftCopy 活动 没有合适的驱动程序
在 Amazon Redshift 日志上运行 AWS Glue 爬虫会创建大量表
使用 Amazon Redshift 进行维度建模是不是可行