google-cloud-dataflow - 从数据流管道将任务排入 Google TaskQueue / Cloud Tasks 队列
问题描述
我需要读取 750K 记录的 GCS 文件。
对于每条记录,我需要将其与 Google Datastore 中的相应记录进行比较。如果文件中的记录与 Datastore 中的记录不匹配,我需要更新 Datastore 记录并将 Taskqueue 任务排入队列。
我坚持的部分是启动这个任务队列任务。
唯一的方法似乎是通过 Google Cloud Task 的 HTTP api ( https://cloud.google.com/tasks/docs/creating-http-target-tasks ) 但从 DoFn 内发出 HTTP 调用感觉效率低下。
我考虑使用 pubsub 来完成任务,因为 dataflow 有一个适配器,但你只能在流管道上使用 pubsub。
解决方案
是的,Beam 似乎没有用于 Cloud Task 的特殊 IO 连接器。所以我猜你只能从 Beam DoFn 内部发出 HTTP 请求。
推荐阅读
- tcl - 如何交叉编译工作的 Windows Tk dll?
- oracle - Oracle SQL 开发人员崩溃
- javascript - 如何在 for 循环中构建数组数组?
- python - 使用 Matplotlib 在 X 轴上绘制日期时间间隔图 - Python
- c# - 在应用程序卸载时运行代码
- reactjs - 反应模块构建失败
- visual-studio-2017 - 清理冗余
来自 .csproj 文件 - python - 如何在odoo中获得总年,月和日
- android - 无法将 Firestore 添加到我的项目
- selenium - Firefox 的 Selenium IDE 中没有出现工具栏