CN113609122A - 一种数据质量扫描方法及系统 - Google Patents

一种数据质量扫描方法及系统 Download PDF

Info

Publication number
CN113609122A
CN113609122A CN202110970842.XA CN202110970842A CN113609122A CN 113609122 A CN113609122 A CN 113609122A CN 202110970842 A CN202110970842 A CN 202110970842A CN 113609122 A CN113609122 A CN 113609122A
Authority
CN
China
Prior art keywords
data
scanning
rule
value
quality scanning
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110970842.XA
Other languages
English (en)
Inventor
辛国茂
孙浩
吴士伟
李钊
李昂
李欣欣
孙露
杨春
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Ecloud Information Technology Co ltd
Original Assignee
Shandong Ecloud Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong Ecloud Information Technology Co ltd filed Critical Shandong Ecloud Information Technology Co ltd
Priority to CN202110970842.XA priority Critical patent/CN113609122A/zh
Publication of CN113609122A publication Critical patent/CN113609122A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本公开提供了一种数据质量扫描方法及系统,获取待扫描数据;将待扫描数据输入到预设同步组件中,根据预设质量扫描规则,生成对应扫描规则的脚本,并将脚本嵌入到同步的处理同步逻辑中;本公开以ElasticSearch作为同步组件的输出源,得到最终的数据质量扫描结果;决了当前数据质量扫描组件部署复杂、实时性较差、对数据源的支撑相对单一的问题,保证了数据扫描的实时性,实现了多数据源类型的支持。

Description

一种数据质量扫描方法及系统
技术领域
本公开涉及数据处理技术领域,特别涉及一种数据质量扫描方法及系统。
背景技术
本部分的陈述仅仅是提供了与本公开相关的背景技术,并不必然构成现有技术。
数据质量扫描,是当前数据质量(数据治理)的核心组件,实现对不同业务场景下,数据的质量过滤筛查,协助数据管理员实现对数据质量的改善,保证数据更好的支持分析等业务开展。
现有的数据质量扫描工具存在如下缺点:
(1)当前的数据质量扫描工具,对机器数量和性能要求很高,部署一套数据质量工具,成本过高,不利于小型企业采购使用;
(2)一味追求“海量”数据的处理能力,从而引入大量中间件的介入,结构部署复杂,从而使运维的成本也相应的增加;
(3)实时性较差,数据质量组件的扫描实现,一般都需要较长时间的处理流程,在面对大量任务的时候不能快速处理待处理数据;
(4)支持的输入源相对单一,当前数据质量组件所支撑的数据源较为单一,不能解决实际生产过程中,多数据源类型的场景。
发明内容
为了解决现有技术的不足,本公开提供了一种数据质量扫描方法及系统,解决了当前数据质量扫描组件部署复杂、实时性较差、对数据源的支撑相对单一的问题,保证了数据扫描的实时性,实现了多数据源类型的支持。
为了实现上述目的,本公开采用如下技术方案:
本公开第一方面提供了一种数据质量扫描方法。
一种数据质量扫描方法,包括以下过程:
获取待扫描数据;
将待扫描数据输入到预设同步组件中,根据预设质量扫描规则,生成对应扫描规则的脚本,并将脚本嵌入到同步的处理同步逻辑中;
以ElasticSearch作为同步组件的输出源,得到最终的数据质量扫描结果。
进一步的,同步组件采用DataX,且DataX的接入数据源支持mysql、sqlServer以及自定义的sql数据库。
进一步的,根据余配置的质量扫描规则,调用生产Transformer的工具类GenTransformerUtils,生成对应规则的Transformer的脚本,并将脚本嵌入到Datax的处理同步逻辑json中,将规则结果输出指定为ElasticSearch。
进一步的,预设质量扫描规则,至少包括唯一性校验,具体为:对表记录的唯一性进行校验,对字段的值进行唯一性校验,支持选择多个字段,运行时根据选择的所有字段确定记录的唯一性,如有重复数据则产生问题数据。
进一步的,预设质量扫描规则,至少包括空值扫描,具体为扫描字段的值是否为空,运行扫描任务时,字段的值不为空,则校验通过,否则记录问题数据。
进一步的,预设质量扫描规则,至少包括值域扫描,字段根据指定代码集或数组的值进行校验,自定义数组校验字段中的值域范围是否包含在自定义的数组中。
进一步的,预设质量扫描规则,至少包括正则表达式规则,具体为:运行扫描任务时,指定字段的值满足配置的正则表达式,表示校验通过,否则校验不通过,产生问题数据,如果存在空值则跳过规则校验,默认为正确数据,记录错误数据。
进一步的,预设质量扫描规则,至少包括数据范围规则,具体为:运行扫描任务时,扫描字段的值大于等于最小值,并且小于等于最大值,则此数据为正确数据,否则校验不通过,记录问题数据,如果存在空值则跳过规则校验,默认为正确数据。
本公开第二方面提供了一种数据质量扫描系统。
一种数据质量扫描系统,包括以下过程:
数据获取模块,被配置为:获取待扫描数据;
数据嵌入模块,被配置为:将待扫描数据输入到预设同步组件中,根据预设质量扫描规则,生成对应扫描规则的脚本,并将脚本嵌入到同步的处理同步逻辑中;
结果获取模块,被配置为:以ElasticSearch作为同步组件的输出源,得到最终的数据质量扫描结果。
本公开第三方面提供了一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现如本公开第一方面所述的数据质量扫描方法中的步骤。
本公开第四方面提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,所述处理器执行所述程序时实现如本公开第一方面所述的数据质量扫描方法中的步骤。
与现有技术相比,本公开的有益效果是:
1、本公开所述的方法、系统、介质或电子设备,解决了当前数据质量扫描组件部署复杂、实时性较差、对数据源的支撑相对单一的问题,可以大大较少对机器性能数量的要求,从而降低机器成本。
2、本公开所述的方法、系统、介质或电子设备,巧妙利用同步工具结合自动生产的groovy脚本,将质量扫描的过程内嵌到同步过程中,保证了数据扫描的实时性,实现了多数据源类型的支持。
3、本公开所述的方法、系统、介质或电子设备,可以针对MySQL、Oralce、SqlServer等多种主流数据源的质量扫描,并可以通过图形化的方式进行展示。
附图说明
构成本公开的一部分的说明书附图用来提供对本公开的进一步理解,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。
图1为本公开实施例1提供的数据质量扫描方法的流程示意图。
图2为本公开实施例1提供的数据处理逻辑示意图。
具体实施方式
下面结合附图与实施例对本公开作进一步说明。
应该指出,以下详细说明都是例示性的,旨在对本公开提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
实施例1:
本公开实施例1提供了一种数据质量扫描方法,采用DataX作为数据源的统一接入层,并拓展DataX的接入源,满足对像神通数据库,作为数据源的支持,通过可视化的方式实现对groovy脚本的语言的编写,实现将数据质量扫描的过程内嵌到数据同步的过程中,并将DataX的输出源采用ElasticSearch作为数据的存储记录,利用ElasticSearch强大的聚合能力和查询能力,实现质量扫描结果的处理,最后形成质量报告。
具体的,如图1和图2所示,包括以下过程:
S1:接入业务数据源支持mysql、sqlServer以及自定义的sql数据库。
S2:用户配置质量扫描的规则,支持唯一性校验、空值校验、正则校验、值域校验、数值范围校验等功能。
各种校验规则说明如下:
S2.1:唯一性校验:对表记录的唯一性进行校验。
选中唯一性校验:则对该字段的值进行唯一性校验,支持选择多个字段,运行时根据选择的所有字段确定记录的唯一性,如有重复数据则产生问题数据。
S2.2:空值扫描:即数据元素完整性。
选中空值扫描:则扫描该字段的值是否为空,运行扫描任务时,该字段的值不为空,则校验通过,否则记录问题数据。
S2.3:值域扫描,实现字段根据指定代码集或数组的值进行校验。
自定义数组校验字段中的值域范围是否包含在自定义的数组中。
S2.4:正则表达式扫描:正则表达式校验实现字段满足字母、数字、0、中文、邮编、手机号码、邮箱、MAC地址、银行卡号、HTTP自定义规则校验。
选中正则表达式扫描:下拉正则表达式为该字段配置以上正则表达式规则或自定义规则,运行扫描任务时,指定字段的值满足配置的正则表达式,表示校验通过,否则校验不通过,产生问题数据。如果存在空值则跳过规则校验,默认为正确数据,记录错误数据。
S2.5:数据范围扫描:实现字段合理值的校验。
选中数据范围扫描:设置扫描范围,设置最小值和最大值,运行扫描任务时,扫描字段的值大于等于最小值,并且小于等于最大值,则此数据为正确数据,否则校验不通过,记录问题数据。如果存在空值则跳过规则校验,默认为正确数据。
S3:根据用户配置的质量扫描规则调用生产Transformer的工具类GenTransformerUtils,生成对应规则的Transformer的脚本,并将脚本嵌入到Datax的处理同步逻辑json中,并将规则结果输出指定为ElasticSearch为下一步的质量报告提供支持。
S4:将整个内嵌Transformer的转换任务发送到调度系统中,从而支持定时调度的进行数据质量报告的扫描。
S5:因为在S3中指定了输出源为Elastic Search,所以输出结果会存入ElasticSearch,接下来整理ElasticSearch中记录的校验结果,从而形成质量报告,包括数据质量评分、数据错误率、每种错误的分布情况。
实施例2:
本公开实施例2提供了一种数据质量扫描系统,包括以下过程:
数据获取模块,被配置为:获取待扫描数据;
数据嵌入模块,被配置为:将待扫描数据输入到预设同步组件中,根据预设质量扫描规则,生成对应扫描规则的脚本,并将脚本嵌入到同步的处理同步逻辑中;
结果获取模块,被配置为:以ElasticSearch作为同步组件的输出源,得到最终的数据质量扫描结果。
所述系统的工作方法与实施例1提供的数据质量扫描方法相同,这里不再赘述。
实施例3:
本公开实施例3提供了一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现如本公开实施例1所述的数据质量扫描方法中的步骤。
实施例4:
本公开实施例4提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,所述处理器执行所述程序时实现如本公开实施例1所述的数据质量扫描方法中的步骤。
本领域内的技术人员应明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
以上所述仅为本公开的优选实施例而已,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。

Claims (10)

1.一种数据质量扫描方法,其特征在于:包括以下过程:
获取待扫描数据;
将待扫描数据输入到预设同步组件中,根据预设质量扫描规则,生成对应扫描规则的脚本,并将脚本嵌入到同步的处理同步逻辑中;
以ElasticSearch作为同步组件的输出源,得到最终的数据质量扫描结果。
2.如权利要求1所述的数据质量扫描方法,其特征在于:
同步组件采用DataX,且DataX的接入数据源支持mysql、sqlServer以及自定义的sql数据库。
3.如权利要求1所述的数据质量扫描方法,其特征在于:
根据余配置的质量扫描规则,调用生产Transformer的工具类GenTransformerUtils,生成对应规则的Transformer的脚本,并将脚本嵌入到Datax的处理同步逻辑json中,将规则结果输出指定为ElasticSearch。
4.如权利要求1所述的数据质量扫描方法,其特征在于:
预设质量扫描规则,至少包括唯一性校验,具体为:对表记录的唯一性进行校验,对字段的值进行唯一性校验,支持选择多个字段,运行时根据选择的所有字段确定记录的唯一性,如有重复数据则产生问题数据。
5.如权利要求1所述的数据质量扫描方法,其特征在于:
预设质量扫描规则,至少包括空值扫描,具体为扫描字段的值是否为空,运行扫描任务时,字段的值不为空,则校验通过,否则记录问题数据;
或者,
预设质量扫描规则,至少包括值域扫描,字段根据指定代码集或数组的值进行校验,自定义数组校验字段中的值域范围是否包含在自定义的数组中。
6.如权利要求1所述的数据质量扫描方法,其特征在于:
预设质量扫描规则,至少包括正则表达式规则,具体为:运行扫描任务时,指定字段的值满足配置的正则表达式,表示校验通过,否则校验不通过,产生问题数据,如果存在空值则跳过规则校验,默认为正确数据,记录错误数据。
7.如权利要求1所述的数据质量扫描方法,其特征在于:
预设质量扫描规则,至少包括数据范围规则,具体为:运行扫描任务时,扫描字段的值大于等于最小值,并且小于等于最大值,则此数据为正确数据,否则校验不通过,记录问题数据,如果存在空值则跳过规则校验,默认为正确数据。
8.一种数据质量扫描系统,其特征在于:包括以下过程:
数据获取模块,被配置为:获取待扫描数据;
数据嵌入模块,被配置为:将待扫描数据输入到预设同步组件中,根据预设质量扫描规则,生成对应扫描规则的脚本,并将脚本嵌入到同步的处理同步逻辑中;
结果获取模块,被配置为:以ElasticSearch作为同步组件的输出源,得到最终的数据质量扫描结果。
9.一种计算机可读存储介质,其上存储有程序,其特征在于,该程序被处理器执行时实现如权利要求1-7任一项所述的数据质量扫描方法中的步骤。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7任一项所述的数据质量扫描方法中的步骤。
CN202110970842.XA 2021-08-23 2021-08-23 一种数据质量扫描方法及系统 Pending CN113609122A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110970842.XA CN113609122A (zh) 2021-08-23 2021-08-23 一种数据质量扫描方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110970842.XA CN113609122A (zh) 2021-08-23 2021-08-23 一种数据质量扫描方法及系统

Publications (1)

Publication Number Publication Date
CN113609122A true CN113609122A (zh) 2021-11-05

Family

ID=78341678

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110970842.XA Pending CN113609122A (zh) 2021-08-23 2021-08-23 一种数据质量扫描方法及系统

Country Status (1)

Country Link
CN (1) CN113609122A (zh)

Similar Documents

Publication Publication Date Title
US11163744B2 (en) Test data generation and scale up for database testing using unique common factor sequencing
CN104035754A (zh) 一种基于xml的自定义代码生成方法及生成器
CN110119292A (zh) 系统运行参数查询方法、匹配方法、装置及节点设备
CN103473325A (zh) 一种实现生成测试案例数据的系统及方法
CN111651365B (zh) 接口自动化测试方法及装置
CN113204598A (zh) 一种数据同步方法、系统及存储介质
CN104536998A (zh) 一种数据导入方法及装置
CN111679979A (zh) 破坏性测试方法及装置
CN104063545A (zh) 一种动态展示流程跟踪图的方法及系统
CN113609122A (zh) 一种数据质量扫描方法及系统
CN105930323A (zh) 一种文件生成方法和装置
CN114610803A (zh) 一种数据处理方法、装置、电子设备和存储介质
CN114676113A (zh) 一种基于任务分解的异构数据库迁移方法及系统
CN113672509A (zh) 自动化测试方法、装置、测试平台及存储介质
CN112256978A (zh) 一种基于数据模型的数据处理方法、装置、介质
CN105808595A (zh) 一种规范文件的数据库生成方法及装置
CN106095875B (zh) 一种改进直播终端id的方法及装置
CN112100086B (zh) 软件自动化测试方法、装置、设备和计算机可读存储介质
CN118051511A (zh) 一种海量数据快速校验及异常数据处理方法及系统
CN111767048B (zh) 一种数据计算加工方法、装置及系统
CN113495831B (zh) 基于关键字生成测试用例的方法、系统、设备及介质
CN109684841B (zh) 一种关于扫描知识库的方法和装置
CN106250243A (zh) 基于轮询处理模式的银行系统应用的处理方法及装置
CN116841548A (zh) 一种基于可配置渲染的网页生成方法和装置
CN115130433A (zh) 数据转换语句的生成方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Country or region after: China

Address after: Floor 12, Building 3, Shuntai Plaza, No. 2000 Shunhua Road, High tech Industrial Development Zone, Jinan City, Shandong Province, 250101

Applicant after: SHANDONG ECLOUD INFORMATION TECHNOLOGY CO.,LTD.

Address before: 250014 3rd floor, block B, Yinhe building, 2008 Xinluo street, high tech Zone, Jinan City, Shandong Province

Applicant before: SHANDONG ECLOUD INFORMATION TECHNOLOGY CO.,LTD.

Country or region before: China