在BigQuery中创建表时触发AWS lambda



我们的Google Analytics数据事件导出到BigQuery表中。我有一些报告需要在事件数据到达时运行,这些报告用python代码设置为AWS lambdas(由于各种原因,我无法立即将其移动为谷歌云功能等(。

有可能让表的创建触发lambda吗?目前,我有一个lambda定期检查表是否已经创建,这似乎是次优的。Eventarc看起来可能是在BigQuery端监视创建事件的方法,但似乎不太清楚如何与AWS接口。

有什么天才的想法吗?我已经反复挖掘了StackOverflow,但看不到与这个问题相匹配的

Eventarc并不是魔术,它只是一个可以做和自定义的不同事情的包装器(具有自定义目的地,而不是云运行(。

通常,Eventarc do:

  • 在特定日志过滤器上创建云日志接收器(过滤您想要获得的自定义事件(
  • 接收PubSub主题中筛选的日志条目
  • 创建调用Cloud Run HTTP端点的PubSub推送订阅

您可以逐个创建所有这些步骤。在最新的版本中,调用您的AWS Lambda而不是Cloud Run。


但困难不在这里。困难来自于创建表格的各种可能性:

  • 通过API调用(表创建API(
  • 通过加载作业(将文件加载到表中自动创建,但不调用表创建API(
  • 直接在SQL中使用CREATE TABLE语句(但也可以在脚本中使用此语句,也可以使用动态SQL…(

您可能还想捕获其他创建(视图、物化视图、过程、函数等(


最后,您当前的方法(定期调用模式元数据信息并在数据集中获取最近添加的内容(可能是最"有效"的方法;毫不费力的";有效率的

最新更新