[发明专利]一种基于分布式的高性能数据ETL装置及控制方法在审
申请号: | 202011119302.2 | 申请日: | 2020-10-19 |
公开(公告)号: | CN112199432A | 公开(公告)日: | 2021-01-08 |
发明(设计)人: | 李真;张荣燕;杨富安;徐冬冬;赵新浪;杨章春 | 申请(专利权)人: | 天翼电子商务有限公司 |
主分类号: | G06F16/25 | 分类号: | G06F16/25;G06F16/27;G06F16/28;G06F16/2458;G06F16/2455;G06F16/215;G06F9/54 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 102200 北京市昌平*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 分布式 性能 数据 etl 装置 控制 方法 | ||
1.一种基于分布式的高性能数据ETL装置及控制方法,其特征在于,包括分布式任务配置器、分布式任务调度器、分布式任务监控器、分布式定时任务控制器、分布式任务抽取控制器、分布式任务消费控制器、分布式任务写入控制器、数据源路由控制器,控制方法具体包括以下步骤:
S11、分布式任务配置器:配置器具备加载目标表配置、任务配置、任务依赖配置、数据源配置;加载目标表配置,可以设置目标表的表名、源文件中字段和目标字段的映射关系、支持配置是否需要进行特殊转换和加工,并将该配置信息先存储至缓存中,以备后期写入操作时能按需进行精准的按配置意愿实现数据的落地;任务配置设置任务的基本信息包含了任务编号、名称类型、数据来源、优先级、加载文件数量信息,源文件信息、解压缩参数、数据处理参数配置;转换任务配置可以设置当前任务的父任务,并且可以支持可视化依赖图谱;数据源配置可以设置多种异构的持久化数据库,可以配置数据源的名称、数据源类型、数据源驱动、URL、用户名、密码信息,为数据源路由器提供基础的匹配信息;
S12、分布式任务调度器:(1)提供并发策略维护,提供并发度控制,根据环境资源、计算时段、任务体量不同维度约束来灵活控制每个任务流、计算节点的并发度和资源分配策略;(2)提供守护进程监控,在主进程之外提供守护进程服务,用于监控主进程的运行情况并在必要环节进行一定的介入,保证整体服务的健壮性;(3)提供资源动态平衡,能够根据资源池当下状况以及任务流资源需求度来动态调整资源节点的消耗情况,实现智能化调配;
S13、分布式任务监控器:(1)提供监测埋点与日志分析,针对每个策略、逻辑、必要的条件判断环节配置必要的监测埋点及日志在线分析能力;(2)提供性能监控与分析优化,提供可视化资源监控、进度监控、性能分析、异常在线跟踪能力,保证运维可控度;(3)支持告警机制与策略设定,提供灵活的API接口服务,可对接第三方监控平台,提供异常报警和自动决策能力;
S14、分布式定时任务控制器:定时任务控制器有多个监控节点,每个节点均利用elastic-job配置一个守候线程Job,Job的粒度为妙级,每个节点每秒都会执行一次任务去扫描当前时点是否有需要执行的任务,如果有这通过分布式锁将当前任务Job_clock_ip锁定,并将当前的Job信息体交由本节点的任务抽取控制器;
S15、分布式任务抽取控制器:拿到分布式节点中定时任务控制器提交的Job信息体,从配置的任务信息中查询到源文件信息,当前任务抽取控制器读取源文件到当前节点本地,按分片逐片的读取源文件并做如下处理:1)读取单片后,并发送单片信息到消息队列资源池中,并且将当前任务的分片ID存储到Redis中;2)发送成功后记录当日任务的发送总片数;3)发送完毕后得出任务源文件总条数MetaDataCount,并且将当前的Job_clock_ip锁移除,继续通过定时任务获取到下一个可执行的任务并循环执行上面的操作;
S16、分布式任务消费控制器:分布式多节点中的任务消费控制器,作为消息队列的消费中可以根据需要动态的扩充消费控制器work的成员数量;消费work监听器监听到有消息是就会主动的从消息队列资源池中任意的取空闲的消息;拿到消息后读取当前任务的清洗配置信息,使用groovy动态语音进行清洗操作,清洗后进行数据裁剪,补录、修复后得到标准化数据,再使用RPC方式调用写入服务;
S17、分布式任务写入控制器:写入服务在接受到请求后,会得到清洗后的标准化分片任务信息,按分片进行迭代逐条的将每行信息组装成目标数据源的语句或脚本,使用以下的数据路由器找到适配的数据源插入接口,并调用接口进行写入操作,1)如果单片插入成功则记录MetaDataSuccCount自增一个pagesize分片数,并且移除Redis中jobid中当前pageId的元素;2)如果写入失败则记录MetaDatUnSuccCount自增一个pagesize,将当前任务分片信息调用并发送数据至数据回放控制器;3)如果当前MetaDatauccUnSuccCountMetaDataUnSuccMaxCount即为当前任务的总错误数已经大于最大错误数阈值,则停止当前任务;4)MetaDataSuccCount+ MetaDataUnSuccMaxCount=任务源文件总条数MetaDataCount,即为当前任务成功总数据加上运行错误总数刚好等于任务源文件总数,则任务成功结束,删除本地源文件,消费器开始消费下一个消息分片;5)任务进度占比算法:(MetaDataSuccCount+ MetaDataUnSuccMaxCount)*100%/MetaDataCount;
S18、分布式数据回放控制器:分布式回放器服务接口得到回放服务请求后,将根据分片ID将重新读取源文件并将读取到分片信息重新发送到消息队列资源池中,重新执行以上S15、S16、S17步骤,实现数据重放重新对分片数据进行清洗和写入操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天翼电子商务有限公司,未经天翼电子商务有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011119302.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种变频可调式农业播种无人机
- 下一篇:一种支持多核系统异常处理的存储控制器
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置