构建 Dataflow 流水线

本页面介绍了为 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 笔记本