ETL
ETL的出现是为了完成OLTP和OLAP系统之间数据的流转。
ETL
ETL的出现是为了完成OLTP和OLAP系统之间数据的流转。
企业每天会有大量数据流入数据系统,在搭建数据处理平台时,通常会将OLAP和OLTP分离在不同系统,这是由OLTP和OLAP自身特点不同所驱使:OLTP对实时性、并发性、数据一致性的要求较高,且数据量不大,所以一般选择传统关系型数据库;而OLAP处理的数据量较大,对计算能力要求高,要求多维度数据模型,所以通常选择用数据仓库或者数据集市来支持。
如果不拆分OLAP和OLTP,会有有许多弊端,例如加剧关系数据库的资源紧缺程度,无法适应多租户场景等。将OLTP和OLAP分离,往往是低成本且高效的选择。
二者分离后,需要把数据从OLTP系统流转到OLAP系统,这时就要通过ETL工具来实现,用它对数据进行抽取(Extract)、转化(Transform)、加载(Load),把关系型数据库中的源数据导入数据仓库或者数据集市,作为数据分析的材料。
为什么开发近实时的ETL
开发近实时ETL的本质目的是缩短信息流转的耗时。
越来越多的应用场景要求数据处理平台提供实时的分析结果,例如在线电商需要根据访问者的历史记录,结合TA几分钟前的页面阅览情况,实时的向不同客户投放不同的优惠券或者广告。如果ETL只能提供T+1这样的迁移速度,那么等到数据流转到计算平台时,还未等开始计算,就已经流失了广告投放机会。为了不让平台分析能力受制于数据迁移速度,实现近实时的ETL工具是当下的必由之路。
Transporter的架构
Transwarp Transporter是一种具有近实时、高吞吐、支持多源库、和事务保障的特性的ETL工具,下图是Transporter的架构:
Transporter的左侧连接数据源,例如关系型数据库,右侧连接目标数据源,例如Inceptor。
Transporter支持多种数据源类型:包括多种传统关系型数据库、多种文件格式、多类同步工具以及跨集群的数据传输。导出位置可以是传统关系型数据库、Inceptor、文件等,并支持多种文件格式和Inceptor中所有类型的表。
Transporter提供了多种常见的数据转换操作,例如集合操作、关联、聚合等,实现功能全面的数据清洗加工和转换。
此外,Transporter还提供了其他多种特性,例如拖拽实现数据流设计、事务级数据同步、数据流并行计算等方式,从而提高Transporter的用户友好性、数据可靠性和传输敏捷性。
用Transporter定义和管理数据流作业
TDH 5.0中,Transporter只支持以JSON文件的方式定义数据流作业。从TDH 5.1起,Transporter将提供可视化的操作界面,简化数据流的定义过程。下面将介绍如何用Transporter 5.1中的界面对数据流进行定义和管理。
Transporter 5.1的操作面板上提供了三种标签页:仪表盘、数据流、参数。
展现了关于Transporter中数据流的各种统计信息,包括数据流状况统计,用户最近进行了哪些操作,今日用时最长数据流top20,今日波动比数据流top20,数据流执行进度比。
设计模式
用于设计数据流作业,指定数据源的位置、数据转换方式和导出位置。下图为Transporter的数据流作业设计板块:
Transporter支持三种节点类型,Reader,Transformer、Writer,分别表示从哪里读数据,如何做转换,最终输出哪里。
Reader显示在页面的左侧,Transformer在左上方,Writer位于右侧。可以用拖拽的方式把对应控件拉到面板上,并进行相应的配置:对于Reader设置数据源地址,解析格式;对于Transformer设定采用的转换模式;对于Writer配置存放位置以及格式。
这是在Transporter中设置某JOSN文件类型的Writer节点的示例:
各个节点设置完成后,用箭头将节点按逻辑相互连接,就完成了数据流的设计。
例如,上图所设计的流程可以翻译为,当前有三个数据源:一个JSON文件,Inceptor里数据库中的一张表,一个cvs文件,取三者的并集,再进行过滤,最终将结果保存在Inceptor的某张ORC表中。
调试模式
进入调试模式后点击“开始调试”,便可以调试工作流作业。节点若显示绿色表示运行成功,同时可通过点击相关按钮查看执行日志。若无错误产生就可以准备发布工作流,若报错可根据工作流纠错。
参数标签页是设置全局参数的地方,可以在定义数据流作业时,于任意表达式中使用此处添加的参数。如图所示,字符串“My Database”被赋予给变量“db”,在定义数据流作业时就可以用${db}表示“My Database”。
总结
Transporter的出现可以将业务人员从定义ETL作业的工作中解放出来,业务员应该更注重数据的分析而不是工程的实现,所以Transporter可以让业务人员更加自治自主的实现自己的想法。同时Transporter提供近实时的响应和高吞吐、以及对事务的保障,从而能够在高效且快速的实现数据迁移的同时确保数据的可靠性。
往期原创文章
混合负载下的资源调度神器--Inceptor Scheduler
你应该知道的工作流调度平台——Transwarp Workflow
OLAP Cube可视化设计工具—Transwarp Rubik
TDH荣获TPC官方测试(TPCx-HS@10TB)最佳性能
星环的划时代版本-Transwarp Data Hub 5.0
大数据开放实验室由星环信息科技(上海)有限公司运营,专门致力于大数据技术的研究和传播。若转载请在文章开头明显注明“文章来源于微信订阅号——大数据开放实验室”,并保留作者和账号介绍。