初识Spring Cloud系列——Data Flow

1,443 阅读2分钟

这是我参与更文挑战的第27天,活动详情查看: 更文挑战

什么是Spring Cloud Data Flow?

Spring Cloud Data Flow是一个大数据操作工具,包含了构建数据集成和实时数据处理管道的工具包,是基于原生云对 Spring XD 的重新设计

目的

简化大数据应用的开发

Spring XD(eXtreme Data,极限数据)

是Pivotal的大数据产品。它结合了Spring Boot和Grails,组成Spring IO平台的执行部分。

Spring Cloud Data Flow跟Spring XD对比

Spring XD 中基于 Zookeeper 的运行环境不见了,取而代之的是服务提供总线 image.png 它是一个混合计算模型,结合了流数据与批量数据的处理方式。是构建数据集成和实时数据处理流水线的工具包。

Spring Cloud Data Flow 特点

  • 使用DSL,REST-APIs,Dashboard,和 drag-and-drop gui开发
  • 独立的创建,单元测试,故障排除,和管理微服务程序
  • 使用开箱即用的stream和task/batch应用迅速的构建数据通道
  • 把微服务作为maven或者docker的构件
  • 在不中断数据流的情况下扩展数据通道
  • 在现代运行环境平台上编配以数据为中心的应用程序
  • 利用度量,健康检查远程管理每一个微服务程序

Spring Cloud Data Flow功能

SCDF (Spring Cloud Data Flow)的核心功能是ETL (Extract, Transform, Load )

  • Extract --> Source
  • Transform --> Processor
  • Load --> Sink image.png SCDF 使用了 Spring Cloud stream 模块。 Stream创建和运行以 Spring Boot 应用为形式的消息传递微服务,以便它们可以部署在不同的平台上,独立运行并相互交互。

在使用 Spring Cloud stream 模块创建数据管道时,SCDF 可以充当类似胶水的角色,旨在于提供一个管理服务模型,目的是用于精简数据项目的工程量,并让开发人员将精力集中在具体问题及对问题的分析上

主要组件

CDF的主要运行组件包括Data Flow Server和Skipper Server。

  • 运行数据 保存在主流关系数据库如MySQL, PostgreSQL, Oracle, DB2, SQLServer等
  • 流处理模式 需要依赖RabbitMQ或Kafka。

今日小结

接下来这几天需要往医院跑,估计学习时间不多,今天学了一个新的知识Spring Cloud Data Flow,知识点不多,只是说了个大概,还不完整,后续还会再接再厉,继续完善,有不对的地方各位道友随便指出!