
Cloudera DataFlow Designer 使开发人员能够使用支持敏捷开发的可视化无代码界面,为其所有数据分发要求创建数据流。

01
构建数据管道的关键需求
每个数据管道都开始于业务需求。例如,要求开发人员在将新获取的应用程序数据交付给企业分析系统之前,对其进行解析和转换,以便进入系统时与现有数据集结合。通常这数据传输管道不仅仅是一次性的,而是需要持续运行并可靠地从源应用程序传输新数据。负责构建这些数据管道的开发人员正在寻找:
4、为生产数据管道提供监控、警报和故障排除。
02
CDF-PC的数据流生命周期
Cloudera DataFlow for the Public Cloud (CDF-PC) 中的数据流遵循定制的生命周期,该生命周期可以从从头开始创建新草稿或者从目录打开现有流定义开始。新用户可以通过打开ReadyFlows快速入门,也就是针对常见用例开箱即用的模板。

图 1:DataFlow Designer、Catalog、Deployments 和 Functions 在 CDF-PC 中提供完整的定制流生命周期
03
从头开始创建数据流
开发人员通过 Cloudera DataFlow中新的Flow Design菜单项访问Flow Designer(图 2),显示用户有权访问的跨工作区的所有草稿的概览。从这里可以轻松地继续处理现有草稿。只需单击草稿名称,或创建新草稿从头开始构建流程。

图 2:Flow Design页面提供了您有权访问的跨工作区的所有草稿的概览
04
从ReadyFlows创建草稿
ReadyFlows快速启动流开发,允许开发人员更快地载入新数据源或目标,同时可以灵活地根据其用例调整模板。
如何从Kafka获取数据并将其写入Iceberg?只需创建一个从Kafka到Iceberg ReadyFlow的新草稿,然后在Designer中探索。

新草稿从ReadyFlow创建后,立即在Designer中打开。用户可以通过标签了解流程中每个组件的功能用途。Designer提供了灵活修改ReadyFlow的功能。用户可以添加新的数据处理逻辑、更多数据源或目标,以及参数和控制器服务。也可以从最佳实践库中学习,并将其打造成自己的最佳实践。

05
使用测试会话进行敏捷迭代和交互式开发

测试会话现在还支持入站连接,从而可以轻松开发和验证使用TCP、UDP或 HTTP侦听和接收来自外部应用程序的数据流程。作为测试会话创建的一部分,CDF-PC会创建一个负载均衡器并为客户端生成所需的证书,以便与数据流建立安全连接。
06
使用内置数据查看器检查数据
连接允许您列出其内容,并探索所有排队的事件及其属性。属性包含关键元数据,如文件的源目录或Kafka消息的源主题。为了更容易在队列中浏览数百个事件,Flow Designer引入了新的属性固定功能,允许用户将关键属性集中在焦点上,以便轻松地对事件进行比较。

图 6:在列出队列内容时,可以固定属性以便于访问
查看元数据和pin属性的功能对于找到想要进一步探索的正确事件非常有用。一旦确定了要探索的事件,就可以一键打开新的Data Viewer,查看其中包含的实际数据。Data Viewer根据数据的MIME类型自动解析数据,并能够格式化CSV、JSON、AVRO和YAML数据,以及以原始格式或二进制数据的HEX表示形式显示数据。

图 7:内置的数据查看器允许您探索数据并验证您的转换逻辑
通过一步一步地在处理器中运行数据,并根据需要使用数据查看器,您可以在开发过程中以迭代的方式验证处理逻辑,而不必将整个数据流视为一个可部署的单元。这为快速而敏捷的流程开发过程提供了条件。
07
将草稿发布到目录
在Flow Designer中开发数据流时,可以随时将工作发布到Catalog以创建版本化的流定义。可以将流程发布为新的流程定义,也可以发布为现有流程定义的新版本。

图 8:将数据流作为新流定义或新版本发布到目录
DataFlow Designer提供一流的版本控制支持,开发人员需要这些支持来掌握不断变化的业务需求或源/目标配置更改。
除了将新版本发布到Catalog之外,还可以在Flow Designer中将Catalog中的任何版本化流程定义作为草稿打开,并将其用作下一次迭代的基础。新草稿与目录中的相应流程定义相关联,发布更改将自动在目录中创建一个新版本。

图 9:您可以从目录中发布的任何版本的流定义创建新草稿
08
将数据流作为自动扩展部署或无服务器运行
DataFlow
Deployments提供有状态的自动缩放运行时,非常适合具有低延迟处理要求的高吞吐量用例。DataFlow
Deployments通常是长时间运行的处理流式或批处理数据,并在定义的最小和最大节点数之间自动向上和向下扩展。可以使用部署向导创建DataFlow部署,或使用CDP CLI自动执行。
DataFlow Functions提供了一种高效、成本优化、可扩展的方式,完全无服务器运行数据流。DataFlow Functions通常是短暂的,在触发后执行,例如文件到达对象存储位置或事件发布到消息传递系统。要将数据流作为函数运行,可以使用用户自己最喜欢的云提供商的工具来创建和配置函数,并将其链接到已发布在DataFlow Catalog的任何数据流。DataFlow Functions在AWS Lambda、Azure Functions和Google Cloud Functions上都支持。
09
展望未来
DataFlow
Designer的普遍可用性代表了实现云原生服务愿景的重要一步。组织可以使用该服务来实现通用数据分发,任何开发人员,无论他们的技术背景如何,都可以轻松使用。Cloudera DataFlow for the Public Cloud (CDF-PC) 现在涵盖了整个数据流生命周期,从使用Designer开发新流,到使用DataFlow Deployments或DataFlow Functions在生产中测试和运行。

从今天开始,所有CDP公共云客户都可以使用DataFlow Designer。我们很高兴听到您的反馈,希望您会喜欢使用新的Designer构建数据流。
作者:Michael Kohs
原文链接:https://blog.cloudera.com/cloudera-dataflow-designer-the-key-to-agile-data-pipeline-development/




