StreamSets是国外一家致力于数据处理与分析的大数据解决方案的公司。公司主要选择DataOps发展路线,解决将数据转化为业务价值的重大挑战。至于为什么选择DataOps这条路子,有兴趣的同学可以查看https://streamsets.com/why-dataops/what-is-dataops/。
自公司成立以来,成功研制了多款用于数据处理的软件及平台。下图是该公司主要的产品:
Streamsets推出的产品主要包含:Data Collector、Transformer和Control Hub。Data Collector和Transformer主要用于数据收集、处理、分析等,Control Hub作为一个平台管理软件提供设计、发布、监控、智能数据流管理等。
Data Collector:是一种轻量级,功能强大的设计和执行引擎,可实时传输数据。使用该软件来路由和处理数据流中的数据。目前为开源产品。
Transformer:是一个执行引擎,可在Apache Spark(一种开放源代码群集计算框架)上运行数据处理管道。由于Transformer管道在群集上部署的Spark上运行,因此管道可以执行转换,这些转换需要以批处理或流模式对整个数据集进行大量处理。暂未开源。
Control Hub:是所有数据流管道的中央控制点。Control Hub允许团队大规模构建和执行大量复杂的数据流。收费产品,可申请试用。
三款产品提供方便用户操作的用户界面,设计及管理业务数据流只需要通过拖拽组件的方式进行,设计数据处理流程中基本上不需要开发多余的代码,并且在设计过程中随时可以验证数据处理的结果与输入的结果进行对比,最终可以验证整个数据处理流程正确性。
Data Collector和Transformer都可以脱离Control Hub单独使用,另外Data Collector和Transformer都提供数据流设计、校验、预览、发布以及数据流监控功能,并提供功能完善的RESTful接口、各类组件的实现接口。
本实践课程主要是针对Data Collector产品的讲解与设计,当然在课程的可能会提到或讲解其他产品。
那么问题来了?Data Collector到底是啥软件,到底什么时候用到它呢,它给我数据开发为会带来什么样的影响呢?下面一一道来。
介绍Data Collector之前我们先介绍它的子软件Data Collector Edge:
StreamSets Data Collector Edge( SDC Edge)是一种轻量级的执行代理,可在资源有限的边缘设备上运行数据流,支持多种操作系统及硬件(包括linux、win、mac、Arm等),没有UI界面,但可借助Data Collector设计、发布工作流。可以使用 SDC Edge从边缘设备读取数据或从另一个管道接收数据,然后对该数据进行简单加工处理以及可控制边缘设备。
Data Collector简单的来说就是一款功能强大操作简单的数据ETL软件,但有不仅仅是ETL软件,它还可以通过它的子工具SDC Edge收集边缘设备的数据,自身还可以实现数据爬虫、数据迁移、微服务、流式处理、集群处理等等,提供几十种或上百种组件(并具有完备API,用户可根据业务需求扩充组件)满足各种数据处理业务需求,并拥有面向各种第三方数据系统(像hadoop、spark、hive、mysql、Cassandra、aws、ElasticSearch等等)的组件与之交互,
面临数据业务的复杂性、数据的多源化,面对不同的业务需要,当前的做法主要是不断的造轮子,但是懂业务的不一定董开发,董开发的不一定懂业务,另外加上企业发展需求人才的匮乏,逼迫我们不得不加班熬夜甚至996。作为企业自身,业务扩展十分迅速,线上产品迭代很快,需要迅速实现数据流。StreamSets Data Collector将是你们最佳的选择。
将StreamSets Data Collector像管道一样用于数据流。在整个企业数据拓扑中,您拥有在流向目的地的过程中需要移动,收集和处理的数据流。Data Collector提供了流中跃点之间的关键连接。
为了解决您的提取需求,您可以使用单个Data Collector运行一个或多个管道。或者,您可以安装一系列Data Collector来跨企业数据拓扑流式传输数据
不多说,先来看看它StreamSets Data Collector真身:
Streamsets实战之路正在更新中,尽情期待!!!