Google Cloud Dataflow - 是否可以定义从 BigQuery 读取数据并写入本地数据库的管道?
Google Cloud Dataflow - is it possible to define a pipeline that reads data from BigQuery and writes to an on-premise database?
我的组织计划在 BigQuery 中存储一组数据,并希望定期提取其中一些数据并将其带回本地数据库。在回顾我在网上找到的有关 Dataflow 的内容时,最常见的示例涉及将数据从另一个方向移动 - 从内部部署数据库到云端。是否可以使用 Dataflow 将数据从云端带回我们的系统?如果没有,是否有其他工具更适合此任务?
抽象地说,是的。如果你有一组源和同步,并且你想通过一些转换在它们之间移动数据,那么 Beam/Dataflow 应该非常适合这项任务。听起来您正在讨论基于批处理的周期性工作流,而不是连续的流式工作流。
在实施工作方面,需要考虑的问题更多。是否存在适合您预期的本地数据库的 Beam 连接器?您可以在此处查看内置连接器:https://beam.apache.org/documentation/io/built-in/(注意页面顶部的每种语言 SDK 切换)
您需要自定义转换吗?您是否合并来自 BigQuery 以外的系统的数据?对我来说,这两种方式都意味着您在使用 Beam 的道路上是正确的。
另一方面,如果您的提取过程相对简单(例如,每周 运行 查询一次并提取它),您可能会发现有更简单的解决方案,特别是如果您不动很多数据,您的数据库可以在 BigQuery export formats.
之一中提取数据
我的组织计划在 BigQuery 中存储一组数据,并希望定期提取其中一些数据并将其带回本地数据库。在回顾我在网上找到的有关 Dataflow 的内容时,最常见的示例涉及将数据从另一个方向移动 - 从内部部署数据库到云端。是否可以使用 Dataflow 将数据从云端带回我们的系统?如果没有,是否有其他工具更适合此任务?
抽象地说,是的。如果你有一组源和同步,并且你想通过一些转换在它们之间移动数据,那么 Beam/Dataflow 应该非常适合这项任务。听起来您正在讨论基于批处理的周期性工作流,而不是连续的流式工作流。
在实施工作方面,需要考虑的问题更多。是否存在适合您预期的本地数据库的 Beam 连接器?您可以在此处查看内置连接器:https://beam.apache.org/documentation/io/built-in/(注意页面顶部的每种语言 SDK 切换)
您需要自定义转换吗?您是否合并来自 BigQuery 以外的系统的数据?对我来说,这两种方式都意味着您在使用 Beam 的道路上是正确的。
另一方面,如果您的提取过程相对简单(例如,每周 运行 查询一次并提取它),您可能会发现有更简单的解决方案,特别是如果您不动很多数据,您的数据库可以在 BigQuery export formats.
之一中提取数据