领先一步
VMware 提供培训和认证,助您加速发展。
了解更多我很高兴代表团队宣布 Spring Cloud Data Flow 1.2 已在多种平台上正式发布。
以下是文档和快速入门指南的相关链接。
本次发布引入了*组合任务*!此功能提供了将一系列任务编排为一个内聚工作单元的能力。复杂的 ETL 管道可能包含顺序执行、并行执行、条件转换或上述所有情况的组合。组合任务功能提供了 DSL 原语和交互式图形界面,以便更轻松地快速构建此类拓扑。您可以从参考指南中了解更多信息。
例如,一个 ETL 作业可能包含多个步骤。拓扑中的每个步骤都可以构建为一个有限的短生命周期 Spring Cloud Task 应用。借助 Data Flow Task DSL,可以轻松定义将多个任务编排为步骤。
task create simple-etl --definition "extractDbToHDFS && <analysisInSpark || enrichAndLoadHawq> && <populateMgmtDashboard || runRegulatoryReport || loadAnalyticsStore>"
这将首先运行 extractDbToHDFS
,然后并行运行 analysisInSpark
和 enrichAndLoadHawq
,等待它们都完成后,再并行运行剩余的三个任务,并等待所有任务完成后再结束作业。此拓扑的图形表示如下所示。
实时指标现已成为部署流的运营视图的一部分。作为流一部分的应用会发布其 Spring Boot /metrics
actuator 端点中包含的指标。这包括发送和接收消息速率。一个新的服务器,Spring Cloud Data Flow Metrics Collector,负责收集这些指标并计算聚合消息速率。Data Flow 服务器查询 Metrics Collector 以支持在 UI 和 shell 中显示消息速率。有关架构的更多详细信息,请参阅参考指南中的监控已部署应用部分。
下面的屏幕截图显示了 time | log
流的聚合消息速率,该流包含 time
和 log
应用的三个实例。主应用框下方的每个点显示了每个独立应用的消息速率,以及一个可用于在运行平台识别应用的 guid
值。
如下所示的*运行时*选项卡也进行了改进,以显示消息速率和平台公开的任何其他指标。对于脚本娴熟的用户,shell 体验也通过 runtime apps
命令包含了这些详细信息。
1.2 M3 中引入的配套 artifact 支持有所改进。批量注册工作流现在会预先解析并下载所有开箱即用应用的元数据 artifact。这在 Shell 或 UI 中查看每个应用支持的属性时非常方便。
此项更改将为 REST API 用户提供一个额外选项。用户不再需要通过 BasicAuth 提供 username:password
组合,现在可以直接从其 OAuth2 提供者检索 OAuth2 访问令牌,然后在调用安全配置的 Spring Cloud Data Flow 的 RESTful 调用时,在 HTTP 头中提供该访问令牌。
添加基于角色的访问控制,以定义谁有权创建、部署、销毁或查看流/任务。这与支持的身份验证方法无缝协同工作。
Dashboard 中新增一个 REST 端点和“关于”页面,用于将服务器实现详情收集到剪贴板,以便进行 Bug 报告。
Stream App Starters Bacon.RELEASE 现已正式发布,为您提供了丰富的 source、processor 和 sink,以开始创建流。所有开箱即用的流应用均构建于 Spring Cloud Stream Chelsea.RELEASE 和 Spring Cloud Dalston.RELEASE 基础之上。现有应用进行了多项增强和错误修复,此版本列车还带来了新应用,例如 MongoDB-sink、Aggregator-processor、Header-Enricher-processor 和 PGCopy-sink。
为方便起见,我们生成了包含 docker 和 maven artifact 最新坐标的 bit.ly 链接。
Task App Starters Belmont.RELEASE 版本现已完成。为了支持 Spring Cloud Data Flow 中的*组合任务*功能,我们新增了一个名为 Composed Task Runner 的开箱即用应用。这是一个任务,它按照通过 --graph
命令行参数传入的 DSL 规范,在有向图中执行其他任务。
Belmont.RELEASE 构建于 Spring Cloud Task 1.2 RELEASE 和 Spring Cloud Dalston.RELEASE 基础之上。
为方便起见,我们生成了包含 docker 和 maven artifact 最新坐标的 bit.ly 链接。
一个近期目标是增加更多的自动化集成测试,并将其作为面向用户的新功能公开。您可以在此处跟踪相关工作。
在 1.2.x 版本之后,我们将开始规划 2.0 版本。一些主要主题包括支持部署单个应用以及跟踪应用部署属性和元数据(如应用版本)。此功能将有助于在应用层面支持丰富的持续交付主题,并扩展到运行时“编辑”流。此外,我们还在研究支持函数,无论是作为内联 Java 代码还是编译后的 java.util.Function
,使其成为流数据处理的一等编程模型。
反馈非常重要。如有问题和功能请求,请通过 StackOverflow 和 GitHub 与我们联系。我们也欢迎贡献!任何帮助改进 Spring Cloud Data Flow 生态系统的行为都将受到赞赏。