Google Cloud Dataflow
数据实时生成于网站、便携式应用程序、物联网设备和作业。捕获、处理和分析这些数据对所有组织都至关重要。但是,这些框架中的数据有时仅对下游框架的检查或有效使用有所帮助。这就是 Dataflow 的用武之地!Dataflow 用于处理和改进集群或流数据,以用于分析、AI 或数据仓库等用例。
Dataflow 是一种无服务器、快速、实用的帮助工具,支持流和批处理。它使用开源 Apache Beam 库编写处理作业,从而提供可移植性。它通过自动化基础设施配置和集群管理,消除了数据工程团队的操作负担。
Google Cloud Dataflow
Google Cloud Dataflow 是一种基于云的数据处理服务,适用于批处理和实时数据流应用程序。它使开发人员能够建立用于协调、准备和分析大型数据集(例如在 Web 分析或大数据分析应用程序中发现的数据集)的处理管道。
Cloud Dataflow 旨在将 MapReduce 带给单一类型的批处理作业计算类型的快速并行执行风格应用于整个分析管道。它部分基于 MillWheel 和 FlumeJava,这是 Google 创建的两个专注于大规模数据摄取和低延迟处理的编程系统。
使用 Dataflow 的分步说明
您可以使用云控制台 UI、gcloud CLI 或应用程序编程接口创建 Dataflow 作业。有很多方法可以完成工作。
Dataflow 模板提供各种预构建模板,并可以选择创建自定义模板!然后,您可以轻松地与组织中的其他人共享它们。
Dataflow SQL 允许您使用您的 SQL 技能从 BigQuery Web UI 开发流管道。您可以将来自 Pub/Sub 的流数据与云存储中的文件或 BigQuery 中的表连接起来,将结果写入 BigQuery,并构建实时仪表板以进行可视化。
使用 Dataflow 接口中的 Vertex AI 笔记本,您可以使用最新的数据科学和 AI 系统构建和部署数据管道。
Dataflow 内联监控允许您直接访问作业指标,以帮助在步骤和工作程序级别上调试管道。
特性
垂直自动缩放
根据使用情况逐步更改分配给每个工作程序的计算资源限制。垂直自动缩放与水平自动缩放紧密协作,以无缝地缩放工作程序,以最佳地满足管道的需求。
私有 IP
关闭公共 IP 地址使您可以更好地保护您的数据处理基础设施。通过不对 Dataflow 工作程序使用公共 IP 地址,您还可以减少针对 Google Cloud 项目配额消耗的公共 IP 地址数量。
智能诊断
一系列功能包括:
基于 SLO 的数据管道管理。
作业可视化功能为用户提供了一种可视化方法来检查其作业图并识别瓶颈。
自动建议可识别和调整性能和可用性问题。
Dataflow VPC 服务控制
Dataflow 与 VPC 服务控制的集成通过增强您减轻数据泄露风险的能力,为您的数据处理环境提供额外的安全性。
流引擎
流引擎将计算与状态存储分开,并将管道执行的部分从工作程序 VM 移动到 Dataflow 服务后端,从而极大地提高了自动缩放和数据延迟。
内联监控
Dataflow 内联监控允许您直接访问作业指标,以帮助调试批处理和流管道。您可以查看步骤和工作程序级别的图形可见性,并为旧数据和高系统延迟等情况设置警报。
水平自动缩放
水平自动缩放允许 Dataflow 自动选择运行作业所需的适当数量的工作程序实例。Dataflow 服务还可以在运行时逐步重新分配更多或更少的工作程序,以反映作业的特性。
实时变更数据捕获
可靠且低延迟地同步或复制跨异构数据源的数据,以支持流分析。可扩展的 Dataflow 模板与 Datastream 集成,以将数据从云存储复制到 BigQuery、PostgreSQL 或 Cloud Spanner。Apache Beam 的 Debezium 连接器提供了一个开源选项,用于从 MySQL、PostgreSQL、SQL Server 和 Db2 摄取数据更改。
Dataflow SQL
Dataflow SQL 允许您使用您的技能从 BigQuery Web UI 开发流 Dataflow 管道。您可以将来自 Pub/Sub 的流数据与云存储中的文件或 BigQuery 中的表连接起来,将结果写入 BigQuery,并使用 Google Sheets 或其他 BI 工具构建实时仪表板。
Notebook 集成
从 Vertex AI 笔记本开始迭代地开发管道,并使用 Dataflow 运行器进行部署。通过在 read-eval-print-loop (REPL) 工作流程中检查管道图,逐步编写 Apache Beam 管道。通过 Google 的 Vertex AI 提供的 Notebooks,允许您在具有最新数据科学和 ML 功能的自然环境中编写管道。
灵活资源调度 (FlexRS)
Dataflow FlexRS 通过使用高级调度策略、Dataflow Mix 服务以及抢占式虚拟机 (VM) 实例和常规 VM 的组合来降低批处理成本。
Dataflow 模板
Dataflow 模板允许您轻松地与同事和整个组织共享您的管道,或者利用许多 Google 提供的模板来执行简单但有用的数据处理任务。这包括用于流分析用例的变更数据捕获模板。使用 Flex 模板,您可以根据任何 Dataflow 管道创建模板。
优势
高速流数据分析
Dataflow 支持快速改进的流数据管道开发,并降低数据延迟。
简化操作和管理
允许团队专注于编程而不是管理服务器集群,因为 Dataflow 的无服务器方法消除了数据工程角色的操作负担。
降低总拥有成本
资源自动缩放与成本优化的批处理能力相结合,这意味着 Dataflow 提供了几乎无限的能力来处理您的周期性和峰值作业,而不会过度支出。
结论
对于需要处理和改进以用于下游系统(如分析、AI 或数据仓库)的批处理或流数据,Dataflow 是一个极佳的选择。例如:Dataflow 将流事件传递给 Google Cloud 的 Vertex AI 和 TensorFlow Extended (TFX),以支持预测分析、欺诈检测、实时个性化和其他高级分析用例。
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP