本页面介绍了为 Dataflow 构建流水线的不同方法,以及每种方法的优势。
Google 提供的模板
Google 为数十个预构建的 Dataflow 流水线提供了开源模板。您可以通过Google Cloud 控制台或命令行运行这些模板。某些模板支持添加用户定义的函数 (UDF),以便您在将数据写入输出目标之前先转换数据。
如果存在与您的场景匹配的模板,请考虑使用该模板。如需查看完整列表,请参阅 Google 提供的模板。
作业构建器
作业构建器是一个直观的界面,可用于在 Google Cloud 控制台中构建和运行 Dataflow 流水线,而无需编写任何代码。在作业构建器中,您可以通过选择来源、接收器和转换,并将它们连接起来以形成图表,从而创建流水线。作业构建器还允许您将流水线保存并加载为 YAML 文件。
在以下场景中,请考虑使用作业构建器:
- 如果 Google 提供的模板不符合您的场景,请创建自定义流水线。
- 无需编码即可构建流水线。
- 创建具有多个来源或接收器的流水线。
- 快速创建原型。
如需了解详情,请参阅作业构建器界面概览。
作业构建器支持 Apache Beam 中提供的部分来源和接收器。如果作业构建器不支持您需要的模板,请尝试使用 Google 提供的模板或 Apache Beam SDK。
Apache Beam SDK
Dataflow 流水线基于开源 Apache Beam SDK 构建。通过使用 SDK 编写流水线,您可以充分利用 Apache Beam 来处理工作负载。流水线可以使用 Java、Python 或 Go 编写。
如果您无法使用 Google 提供的模板或作业构建器来实现您的方案,请考虑使用 Apache Beam SDK。例如:
- 需要使用完整 Apache Beam 特征集的更复杂的流水线。
- 需要更复杂的策略来处理延迟数据的流处理流水线,例如重新处理。
如需了解详情,请参阅使用 Apache Beam 构建流水线。
笔记本
您可以在 JupyterLab 笔记本中运行 Apache Beam Python 代码。这些笔记本通过 Vertex AI Workbench 提供,后者是一项服务,用于托管预装了最新数据科学和机器学习框架的笔记本虚拟机。使用笔记本,您无需设置开发环境,即可快速迭代流水线代码。笔记本在测试环境中运行,但您可以导出代码以供生产使用。
如需了解详情,请参阅开发 Apache Beam 笔记本。