数据交换过程详解( 六 )


4.4.3 应对大数据的挑战
传统 ETL 主要以 SQL 为主要技术手段,把数据经抽取、清洗转换之后加载到数据仓库 。但是在如今移动互联网大力发展的场景下,产生大量碎片化和不规则的数据 。这中间的数据导入和 SQL ETL 的提取的过程,大量消耗 IO 性能和计算资源,在很多场景下已经是数据处理的瓶颈所在 。

数据交换过程详解

文章插图
 
Spark通过在数据处理过程中成本更低的洗牌(Shuffle)方式,将MapReduce提升到一个更高的层次 。利用内存数据存储和接近实时的处理能力,Spark比其他的大数据处理技术的性能要快很多倍 。
新的数据交换中我们开发了 FlumeOnYarn 的架构,基于 XML 描述的可编程的函数 ETL 转换方法 。这种方式充分利用了Spark对大数据的处理能力,通过XML文件描述源和目标以及中间的转换过程就能够控制Spark对数据进行ETL过程处理,在应对Hadoop、Hive以及Hbase等任务处理时能够充分体现出大数据处理的优势 。
4.5 监控与管理
4.5.1 监控保证运行的稳定
【数据交换过程详解】交换平台的监控需要获取交换服务器的CPU、内存以及磁盘,在作业运行时首先根据负载算法将收集到的CPU、内存和磁盘信息进行负载运算,判断那台交换服务器的负载较低,将作业分发到负载较低的交换服务器上运行 。
数据交换过程详解

文章插图
 
负载均衡解决了单台作业服务器在进行多作业并发时数据ETL过程压力过大的一种多节点负载方案 。通过负载均衡将多个作业服务器节点组合,将作业通过负载算法分摊到这些节点上进行ETL过程 。使这些作业服务器能以最好的状态对外提供服务,这样系统吞吐量最大,性能更高,对于用户而言处理数据的时间也更小 。而且,负载均衡增强了系统的可靠性,最大化降低了单个节点过载、甚至宕机的概率 。
4.5.2 对各个运行环节的监控
在数据交换过程中,监控管理系统负责监控作业的运行和调度情况,统计交换的过程和数据,形成图形化的报表进行统计的数据展现 。能够清晰地体现数据交换过程的各种状态和数据量 。
数据交换过程详解

文章插图
 
数据交换平台提供了总揽全局的总体监控和明细型的计划监控以及事件监控;可视化的多维度作业运行监控以及完善的资源监控功能,对作业以及和作业相关的节点进行数据监控和统计 。可统计作业交换过程中的调度日志、作业执行日志、历史日志、交换的数据量以及统计数据交换的成功失败次数,可以保证在第一时间发现系统存在的问题,并且及时排除,保证系统的正常运行 。
5.总结随着数据交换在企业中越来越受到重视,企业不仅仅局限于只对数据进行简单的交换,更有许多企业通过数据交换打造出了自己的数据中台和数据共享平台,通过对数据的加工、分析和共享提升了数据的价值 。创建了在各个业务系统之间的数据高速公路使原先的数据孤岛,变成数据仓库、数据集市有效的对数据进行管理和应用 。
关于作者:光芒,普元项目经理,十多年的IT从业经验,一直专注于企业数据交换和数据管理的工作 。曾主持参与了Primeton DI和Primeton ESB的产品研发工作,致力于自服务的数据共享和数据交换研究,在数据治理领域不断探索和研发 。
关于EAWorld:微服务,DevOps,数据治理,移动架构原创技术分享




推荐阅读