我目前正在使用Datastream将数据中的实时更改从PostgreSQL无缝复制到BigQuery,并且该过程运行顺利。然而,我发现自己需要一个解决方案,以便在从PostgreSQL到BigQuery的任何更新或插入之后立即触发Cloud Function。我将非常感谢任何关于实现这一目标的最有效方法的建议。
fd3cxomn1#
您不能直接从Datastream触发Cloud Functions,但是您可以通过使用第二代Cloud Functions和Eventarc trigger(在您的google.cloud.bigquery.v2.JobService.InsertJob类型的情况下)来实现类似的行为。Eventarc事件类型的完整列表可以在这里找到
google.cloud.bigquery.v2.JobService.InsertJob
s71maibg2#
感谢您的更新。我在使用google.cloud.bigquery.v2.JobService.InsertJob时遇到了一个问题。这个问题是在使用连接查询的Cloud Function时出现的,导致连续触发器。对于每个插入,有3到5个冗余的审计日志条目,导致单个插入有多个触发器。尽管appendrow功能可以工作,但它在触发该功能之前会引入30秒到4分钟的延迟。我正在寻求关于如何确保插入作业只触发Cloud Function一次,或者如何最小化appendrow方法中的延迟的指导。
2条答案
按热度按时间fd3cxomn1#
您不能直接从Datastream触发Cloud Functions,但是您可以通过使用第二代Cloud Functions和Eventarc trigger(在您的
google.cloud.bigquery.v2.JobService.InsertJob
类型的情况下)来实现类似的行为。Eventarc事件类型的完整列表可以在这里找到s71maibg2#
感谢您的更新。我在使用google.cloud.bigquery.v2.JobService.InsertJob时遇到了一个问题。这个问题是在使用连接查询的Cloud Function时出现的,导致连续触发器。对于每个插入,有3到5个冗余的审计日志条目,导致单个插入有多个触发器。
尽管appendrow功能可以工作,但它在触发该功能之前会引入30秒到4分钟的延迟。
我正在寻求关于如何确保插入作业只触发Cloud Function一次,或者如何最小化appendrow方法中的延迟的指导。