随着之家业务的快速发展以及大数据平台技术框架支持的开发语言多种多样,开发人员的背景差异也很大,这就产生出很多不同类型的程序(任务)运行在大数据平台之上,如:MapReduce、Hive、Java、Shell、Python等。这些任务需要不同的运行环境,并且除了定时运行,各种类型之间的任务存在依赖关系。同时各业务部门内部及部门之家都有各种各样异构数据源之间的数据流转需求。
之家数据接入治理平台因此而诞生。其主要包括数据直通车,数据交换、分布式任务调度几个模块。下面将分别介绍。
数据接入治理平台主要包括数据直通车,数据交换、分布式任务调度三个部分。下面将分别介绍。
数据直通车为之家大数据部门业务数据入仓的入口,其主要作用是根据业务表的元数据信息调用调度平台接口自动生成数据交换任务配置和调度任务。同时负责自动完成hive建表和生成数据仓库fdm加工脚本。
统一调度平台作为整个大数据数据部门的中枢贯穿于整条数据线。从数据接入、数据加工、再到数据交换,其按照依赖关系有序自动调度各作业,提高整条数据线的自动化程度及保证大数据平台海量数据吞吐能力。负责确保数几十万任务能够在正确的时间正确的环境下有序执行的同时保证集群的资源合理使用让数据以最快的方式处理完成,
日志查看
支持多种灵活的任务依赖触发方式,支持依赖触发,定时触发,手工触发临时运行、手工触发恢复下游、支持任务自依赖(依赖当前任务上一数据周期执行结果)
高可用分布式集群实时监控执行节点cpu、内存负载状态。故障节点任务自动转移其他节点。集群可以方便进行水平扩容。集群分组管理、资源调度深度隔离。
监控服务数据指标统计、智能分析、报警。统计计算结果数据。作业执行成功、失败、超时报警。报警(支持钉钉,电话,邮件,短信等多种)、sla任务看板
为了解决异构数据源同步问题,DataX将复杂的网状的同步链路变成了星型数据链路,DataX作为中间传输载体负责连接各种数据源。当需要接入一个新的数据源的时候,只需要将此数据源对接到DataX,便能跟已有的数据源做到无缝数据同步。
DataX本身作为离线数据同步框架,采用Framework + plugin架构构建。将数据源读取和写入抽象成为Reader/Writer插件,纳入到整个同步框架中。
Writer: Writer为数据写入模块,负责不断向Framework取数据,并将数据写入到目的端。
Framework:Framework用于连接reader和writer,作为两者的数据传输通道,并处理缓冲,流控,并发,数据转换等核心技术问题。