
技术摘要:
本发明属于数据处理技术领域,公开了一种基于可视化管理的分布式异源数据清洗系统,异源数据清洗系统包括多个异源数据清洗模块、数据清洗可视化管理端和正式库,多个异源数据清洗模块并行设置,每个异源数据清洗模块可并行运行在独立的服务器或异源数据清洗进程中,数 全部
背景技术:
数据清洗是政务集约化、数据仓库以及数据挖掘的核心,它是政务数据迁移的基 础,而异源数据的复杂性导致数据清洗速度慢、容易出错,且由于 ETL技术中的数据来源十 分广泛,这些数据源可能是存储在不同硬件或者是不同操作系统上的,因此这些数据源中 难免存在一些“脏数据”,数据清洗的目的就是找出并且消除那些不符合规范的数据,这对 保证数据的高质量,对数据仓库以及后续的数据挖掘、决策分析的正确性有着十分重要的 影响。 数据的异源导致数据的标准化和结构化困难,一套代码很难同步处理不同来源的 数据,例如Oracle和Mysql数据库结构上的差异导致日期等类型的数据需要不同逻辑处理 并转换成目标数据,转换中很可能会因为ETL等程序运行 bug出现脏数据写入目标库的情 况,如拼写错误、重复信息、缺失数据等,这直接导致数据质量达不到要求,另外传统清洗方 法无法大规模并行处理和管理数据处理过程,数据需要串行处理,清洗转换处理速度较慢, 这些在传统的处理方式中都是不可避免的。
技术实现要素:
为了克服现有技术的上述缺陷,本发明的提供一种基于可视化管理的分布式异源 数据清洗系统,实现分布式异源数据清洗,提高清洗转换处理速度。 为实现上述目的,本发明提供如下技术方案:一种基于可视化管理的分布式异源 数据清洗系统,所述异源数据清洗系统包括多个异源数据清洗模块、数据清洗可视化管理 端和正式库,所述多个异源数据清洗模块并行设置,每个异源数据清洗模块可并行运行在 独立的服务器或异源数据清洗进程中,所述数据清洗可视化管理端对所述异源数据清洗模 块进行统一管理调度; 所述异源数据清洗模块包括原始数据库、测试目标库、数据库读取预处理中间件、 ETL转换模块、数据检查中间件和日志模块; 所述异源数据清洗系统清洗数据的步骤包括: 第一步,在数据清洗可视化管理端中进行清洗任务的相关初始化配置,所述初始 化配置包括任务名、任务并行处理线程数、任务定时开始时间,在所述数据清洗可视化管理 端填写原始数据库和正式数据库的账号密码以及库名和表名,以确保数据库读取预处理中 间件可以正确的连接原始数据库,将每次数据清洗任务进行可视化配置和管理,方便任务 的随时启停; 第二步,当通过数据清洗可视化管理端对清洗任务进行启动操作后,异源数据清 洗模块中的数据库读取预处理中间件负责从原始数据库中读取数据并进行数据初步筛查 3 CN 111597181 A 说 明 书 2/4 页 和排错、填充等操作并将数据送入ETL转换模块; 第三步,ETL转换模块将数据进一步清洗转换和字段对齐到测试目标库,该步骤引 入测试目标库而不直接使用正式库,可以有效避免数据直接污染正式库,在正式入库前还 能够随时修改,进行下一步的数据检查; 第四步,由数据检查中间件进行最后的数据格式检查,最终数据检查合格后中间 件将测试目标库的数据上传到正式库完成整个数据的清洗转换,并记录检查日志到日志模 块备查。 进一步,所述异源数据清洗模块读取并清洗存储在各类原始数据库中的数据。 进一步,所述原始数据库为Oracle原始库或者Mysql原始库。 进一步,所述数据检查中间件负责校验测试库中的数据字段是否完整正确,进行 长度、类型、格式等完整性校验,比对一致后上传到正式库中,如果校验失败则写入日志模 块并通知管理端转换出错。 进一步,所述数据清洗可视化管理端可以启动某个模块的数据清洗任务、查看任 务运行状态、停止任务运行,同时可查看数据清洗错误日志。。 本发明的技术效果和优点: 1、采用基于过程可视化管理的分布式数据清洗管理方式,每个清洗转换模块的代 码重用率高,通过统一的数据清洗可视化管理端进行可视化管理调度,系统运维成本低,且 能够并行式进行数据清洗任务,单体故障不会影响整个系统转换进程,使用方便。 2、可快速低成本完成异源数据转换,且采用在线式管理后,不管任务进程还是任 务日志,均可方便有效的通过云端进行管理,任务失败后可由管理员通过云端直接查看失 败详情,进行相应模块的代码调整,不影响其他任务的执行,各分布式数据清洗任务之间隔 离,从而保证了各模块原始数据安全。 附图说明 图1为本发明系统总体框架图。