CN112650762A - 数据质量监控的方法、装置、电子设备以及存储介质 - Google Patents
数据质量监控的方法、装置、电子设备以及存储介质 Download PDFInfo
- Publication number
- CN112650762A CN112650762A CN202110277459.6A CN202110277459A CN112650762A CN 112650762 A CN112650762 A CN 112650762A CN 202110277459 A CN202110277459 A CN 202110277459A CN 112650762 A CN112650762 A CN 112650762A
- Authority
- CN
- China
- Prior art keywords
- data
- rule
- target
- matched
- target detection
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Computational Linguistics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请涉及数据质量监控的方法。方法包括:获取包含有业务数据所对应历史数据的待处理数据表,待处理数据表包括第一数据表,第一数据表中含有第一字段;根据第一字段对应的数据类型获取规则模板集合,规则模板集合中含有至少一个待匹配数据规则,每个待匹配数据规则包括检测条件和检测规则;若第一数据表中存在符合目标检测条件的第一目标数据行,并且第一目标数据行中对应于第一字段的数据均符合目标检测规则,则将目标检测条件和目标检测规则所隶属的待匹配数据规则确定为目标数据规则;根据目标数据规则,对业务数据进行数据质量监控。该方法中新规则的确定由系统自动完成,从而降低数据质量监控消耗的人力资源,提升数据质量监控效率。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据质量监控的方法、装置、电子设备以及存储介质。
背景技术
在网络平台上,每天都有大量的数据产生。这些数据分布在不同存储平台的各类存储结构中。对于这些数据的使用质量,成为了大数据分析中非常重要的因素。处理流程中某一个步骤的疏漏可能会导致对于同一组信息在不同存储平台中不一致,使得对于数据分析得到的结果不准确,甚至造成负面影响。因此监控数据准确性和一致性是必要的。
目前,在数据质量的管理和监控中,对于所收集到的业务数据,通常由人工配置检查规则并且设定对应的定时任务。定时任务根据检查规则对业务数据进行计算和检查,并且根据检查结果发送告警通知。
然而,由于业务数据的规律是动态变化的,因此新规则的确定和配置需要根据相关领域的专业知识进行大量的分析和业务梳理工作,使得数据质量监控消耗大量人力,成本较高,监控效率低。
发明内容
基于上述技术问题,本申请提供一种数据质量监控方法,以数据质量监控所消耗的人力资源更少并且降低成本。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
根据本申请实施例的一个方面,提供一种数据质量监控方法,包括:
获取包含有业务数据所对应历史数据的待处理数据表,所述待处理数据表包括第一数据表,所述第一数据表中含有第一字段;
根据所述第一字段对应的数据类型获取规则模板集合,所述规则模板集合中含有至少一个待匹配数据规则,每个待匹配数据规则包括检测条件和检测规则;
若所述第一数据表中存在符合目标检测条件的第一目标数据行,并且所述第一目标数据行中对应于所述第一字段的数据符合目标检测规则,则将所述目标检测条件和所述目标检测规则所隶属的待匹配数据规则确定为目标数据规则;
根据所述目标数据规则,对所述业务数据进行数据质量监控。
根据本申请实施例的一个方面,提供一种数据质量监控装置,包括:
数据获取模块,用于获取包含有业务数据所对应历史数据的待处理数据表,所述待处理数据表包括第一数据表,所述第一数据表中含有第一字段;
模板获取模块,用于根据所述第一字段对应的数据类型获取确定规则模板集合,所述规则模板集合中含有多个至少一个待匹配数据规则,每个待匹配数据规则包括检测条件和检测规则;
确定模块,用于若所述第一数据表中存在符合目标检测条件的第一目标数据行,并且所述第一目标数据行中对应于所述第一字段的数据符合目标检测规则,则将所述目标检测条件和所述目标检测规则所隶属的待匹配数据规则确定为目标数据规则;
监控模块,用于根据所述目标数据规则,对所述业务数据进行数据质量监控。
在本申请的一些实施例中,基于以上技术方案,所述待处理数据表还包括第二数据表,所述第二数据表中含有第二字段,所述第二字段与所述第一字段相同;
所述数据质量监控装置还包括:
表连接模块,用于对所述第一数据表和所述第二数据表进行表连接,得到连接数据表;
规则确定模块,用于若所述连接数据表中存在符合所述目标检测条件的第二目标数据行,并且所述第二目标数据行中对应于所述第一字段的数据以及对应于所述第二字段的数据均符合所述目标检测规则,则将所述目标检测条件和所述目标检测规则所隶属的待匹配数据规则确定为目标数据规则。
在本申请的一些实施例中,基于以上技术方案,所述待处理数据表是针对历史数据表集合进行分片处理得到的数据分片;所述数据质量监控装置还包括:
数量比值获取模块,用于获取符合所述目标检测条件和所述目标检测规则所隶属待匹配数据规则的数据分片数量,并获取所述数据分片数量与所述历史数据表集合中全部数据分片的数量之间的比值;
规则确定模块,还用于若所述比值大于预设规则输出阈值,则将所述目标检测条件和所述目标检测规则所隶属的待匹配数据规则确定为目标数据规则。
在本申请的一些实施例中,基于以上技术方案,所述数据质量监控装置还包括:
数据获取模块,用于若所述连接数据表中存在符合所述目标检测条件的第二目标数据行,获取所述第二目标数据行中对应于所述第一字段的第一目标数据和对应于所述第二字段的第二目标数据;
规则确定模块,还用于若所述第一目标数据和第二目标数据均符合所述目标检测规则中规定的预设数学关系,则将所述待匹配数据规则确定为目标数据规则。
在本申请的一些实施例中,基于以上技术方案,所述数据质量监控装置还包括:
时间分布确定模块,用于根据符合所述目标检测条件和所述目标检测规则所隶属的所述待匹配数据规则的所述第一目标数据行的数据更新时间,确定所述待匹配数据规则所对应的时间分布规律;
规则确定模块,还用于若所述时间分布规律符合预设的时间分布规律,则确定所述待匹配数据规则是目标数据规则。
在本申请的一些实施例中,基于以上技术方案,所述数据质量监控装置还包括:
数据比值获取模块,用于针对所述第一目标数据行中对应于所述第一字段的全量数据,确定目标数据与所述全量数据的目标数据比值,其中所述目标数据为所述全量数据中符合所述目标检测条件和所述目标检测规则所隶属的所述待匹配数据规则的数据;
规则确定模块,还用于根据所述目标数据比值和预设比值,将所述待匹配数据规则确定为目标数据规则。
在本申请的一些实施例中,基于以上技术方案,监控模块,具体包括:
解析单元,用于根据所述业务数据对应的业务数据源,对所述目标检测条件进行解析,得到对应于所述业务数据源的数据查询命令;
发送单元,用于向所述业务数据源发送所述数据查询命令;
检查单元,用于接收所述业务数据源针对所述数据查询命令返回的待检查数据,并根据所述目标检测规则对所述待检查数据进行检查,得到检查结果;
告警单元,用于根据所述检查结果,对所述业务数据的数据质量进行告警。
根据本申请实施例的一个方面,提供一种数据质量监控设备,该数据质量监控设备包括:处理器;以及存储器,用于存储处理器的可执行指令;其中,该处理器配置为经由执行可执行指令来执行如以上技术方案中的数据质量监控的方法。
根据本申请实施例的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,当该计算机程序被处理器执行时实现如以上技术方案中的数据质量监控的方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供数据质量监控的方法。
在本申请的实施例中,根据业务数据的历史数据以及规则模板,自动生成适合于业务数据的数据规则,然后再根据所生成的数据规则,对业务数据进行数据质量监控,因此,仅在制定规则模板时需要根据相关领域的专业知识进行分析和业务梳理工作,而新规则的确定由系统自动完成,相较于大量的新规则,制定规则模板所需要的工作量更少,从而使得数据质量监控所消耗的人力资源更少并且降低成本,提升数据质量监控的整体效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获取其他的附图。
图1为本申请所适用的一种应用场景的组成架构示意图。
图2示出了本申请实施例中的一种数据质量监控方法的流程示意图。
图3示出了本申请实施例中的一种数据质量监控方法的流程示意图。
图4示出了本申请实施例中的一种数据质量监控方法的流程示意图。
图5示出了本申请实施例中的一种数据质量监控方法的流程示意图。
图6示出了本申请实施例中的一种数据质量监控方法的流程示意图。
图7示出了本申请实施例中的一种数据质量监控方法的流程示意图。
图8示出了本申请实施例中的一种数据质量监控方法的流程示意图。
图9为数据质量监控平台架构的示意图。
图10示意性地示出了本申请实施例中数据质量监控装置的组成框图。
图11示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本申请将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应理解,本申请的方法可以应用于金融数据中心以及广告平台等大数据统计平台。在这些数据平台中,每天都会产生大量的业务数据。这些业务数据由不同的数据源产生,并且采用各类存储结构和形式保存。例如,在广告平台中,本申请所介绍的方法可以用于检查同一个客户的广告投放信息、数量以及费用等业务信息在不同的数据源中是否一致。在金融数据中心,本申请所介绍的方法可以用于检查业务信息是否产生了巨大的数据波动,以便分析数据波动的原因或者对数据波动进行告警。
本申请的方案可应用于个人计算机、服务器或者多个服务器构成的服务器系统,为了提高数据质量监控的计算能力和存储能力,本申请还可以应用于云平台、云存储或者其他计算系统。
云计算(cloud computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。
作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为IaaS(Infrastructure as a Service,基础设施即服务)平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。
按照逻辑功能划分,在IaaS(Infrastructure as a Service,基础设施即服务)层上可以部署PaaS(Platform as a Service,平台即服务)层,PaaS层之上再部署SaaS(Software as a Service,软件即服务)层,也可以直接将SaaS部署在IaaS上。PaaS为软件运行的平台,如数据库、web容器等。SaaS为各式各样的业务软件,如web门户网站、短信群发器等。一般来说,SaaS和PaaS相对于IaaS是上层。
云存储(cloud storage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统 (以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。
目前,存储系统的存储方法为:创建逻辑卷,在创建逻辑卷时,就为每个逻辑卷分配物理存储空间,该物理存储空间可能是某个存储设备或者某几个存储设备的磁盘组成。客户端在某一逻辑卷上存储数据,也就是将数据存储在文件系统上,文件系统将数据分成许多部分,每一部分是一个对象,对象不仅包含数据而且还包含数据标识(ID,ID entity)等额外的信息,文件系统将每个对象分别写入该逻辑卷的物理存储空间,且文件系统会记录每个对象的存储位置信息,从而当客户端请求访问数据时,文件系统能够根据每个对象的存储位置信息让客户端对数据进行访问。
存储系统为逻辑卷分配物理存储空间的过程,具体为:按照对存储于逻辑卷的对象的容量估量(该估量往往相对于实际要存储的对象的容量有很大余量)和独立冗余磁盘阵列(RAID,Redundant Array of Independent Disk)的组别,预先将物理存储空间划分成分条,一个逻辑卷可以理解为一个分条,从而为逻辑卷分配了物理存储空间。
大数据(Big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。随着云时代的来临,大数据也吸引了越来越多的关注,大数据需要特殊的技术,以有效地处理大量的容忍经过时间内的数据。适用于大数据的技术,包括大规模并行处理数据库、数据挖掘、分布式文件系统、分布式数据库、云计算平台、互联网和可扩展的存储系统。
在本申请的实施例中,数据质量监控根据检测规则对业务数据进行质量监控并生成数据质量监控结果,还可以进一步根据数据质量监控结果对业务数据进行数据修正。所采用的检测规则、数据质量监控结果以及修正后的正确数据可以采用区块链的方式进行存储,以便进行固化。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行使用。
为了便于理解,以本申请的方案应用于广告平台这一场景为例进行说明。请参阅图1,图1为本申请所适用的一种应用场景的组成架构示意图。
由图1可以看出,该场景包括访问客户端110、通信网络120、数据质量平台130、通信网络140以及管理客户端150。
访问客户端110具体包括用户所使用的手机和电脑等终端设备。用户通过访问客户端110对广告进行访问,相关的访问数据和访问记录则会通过通信网络120发送到数据质量平台130中进行存储。通信网络120可以是采用各类协议的有线或无线网络,例如英特网、4G或5G网络等。
访问客户端110还可以包括用于业务管理的终端设备。例如,广告投放商与广告平台打成协议,则可以通过访问客户端110将广告投放业务的相关数据录入到数据质量平台130中,例如广告投放量、时长、金额、收费标准等等。
对于所接收到的业务数据,数据质量平台130可以利用本申请的方案自动生成对于各类业务数据的数据质量检测规则,并且根据所生成的规则进行数据质量检查。一旦发现数据不符合检测规则,则说明数据质量出现问题。数据质量平台130可以通过通信网络140向管理客户端150发出告警,例如邮件、短信或者电话等。管理客户端150也可以访问数据质量平台130来通过前端页面查看数据的图形展示以及告警信息。
可以理解的是,图1是以数据质量平台130直接从访问客户端110中获取业务数据为例,在实际应用中,数据质量平台130还可以通过其他数据平台或通过其他网络途径获得业务数据,对此不加限制。
需要说明的是,图1是为了便于理解,以本申请应用于广告平台为例进行说明,当利用单个计算设备、服务器或服务器集群进行数据质量监控时,只需要将图1所示场景中的云平台替换为相应的设备或者服务器集群即可,其场景类似,此处不再赘述。
下面结合具体实施方式对本申请提供的技术方案做出详细说明。
请参阅图2,图2示出了本申请实施例中的一种数据质量监控方法的流程示意图,本实施例的方法可以应用于前面提到的计算机设备、服务器或者云平台等等。本实施例的方法可以包括:
步骤S201,获取包含有业务数据所对应历史数据的待处理数据表,待处理数据表包括第一数据表,第一数据表中含有第一字段。
具体地,待处理数据表可以是数据库中的数据表。该数据表中通常包括表头和数据行。表头中包括每列数据所标识的数据含义,例如编号、名称、日期等。每个数据行包括一条数据,每个数据行中均包括对应于表头的数据。
业务数据指的是需要进行数据质量监控的实际数据,例如,每天产生的广告访问数据、收费信息等。历史数据为过去时间产生的真实业务数据。在本申请中,历史数据中所包含的数据均为正确的数据或者是已经经过错误校正的数据,也可以是从数据中划分出的具有足够长的时间跨度的可靠数据。
待处理数据表可以包括至少一张数据表,第一数据表是待处理数据表中的其中一张表。第一字段通常是第一数据表中具有业务含义的字段,例如数量以及金额等数据字段。
历史数据的待处理数据表可以是存储在数据质量监控装置的数据库中的数据,也可以是通过远程数据库获取到的,或者可以从文件读取或者手工进行输入,此处不做限制。
步骤S202,根据第一字段对应的数据类型获取规则模板集合,规则模板集合中含有至少一个待匹配数据规则,每个待匹配数据规则包括检测条件和检测规则。
其中,规则模板集合是用户根据专业知识设定的待匹配数据规则的集合。待匹配数据规则具体可以划分为多种类型,例如一致性规则或者非空规则等。待匹配数据规则包括检测条件和检测规则,其中,检测条件指的是待匹配数据规则所适用的数据所需要符合的条件,即对于数据的过滤条件,该条件通常是针对于一个或多个字段设置的,所筛选出的结果为一个或者多个数据行。检测规则指示是在根据检测条件所过滤出的数据行中,一个或者多个字段所对应的数据需要满足的条件、规律或者规则,其通常表述的是一个字段的数据需要满足的规律或者两个字段的数据之间的关系,例如倍率关系。具体地,检测规则取决于待匹配数据规则的类型以及所针对的字段的数据类型而不同。例如,对于文字类型的数据,则可以是检测字段的内容是否包含预设的关键字,或者是否符合预设的枚举值。因此,根据第一字段对应的数据类型,可以获取适用于该数据类型的规则模板集合。
在一个实施例中,规则模板集合的获取方式还可以采用自动生成的方式来进行。基于用户根据专业知识设定的待匹配数据规则,可以采用计算机穷举或者机器模型等方式,将各个待匹配数据规则中的检测条件和检测规则所包括的具体内容进行分解和组合,从而生成大量的新的待匹配数据规则,并且根据这些新的待匹配数据规则生成规则模板集合。在一个实施例中,可以将正确的历史数据或者从历史数据中划分出一部分可靠数据以及检测条件和检测规则作为训练数据,并且将适用于此类数据的数据规则作为监督数据进行机器学习模型训练,来得到训练好的模型。在有新的业务数据需要生成新的数据规则时,将业务数据输入到训练好的模型以及检测条件和检测规则输入到训练好的模型中,从而得到大量的待匹配数据规则。所采用的机器学习模型可以是卷积神经网络、循环神经网络或者决策树等模型。
步骤S203,若第一数据表中存在符合目标检测条件的第一目标数据行,并且第一目标数据行中对应于第一字段的数据符合目标检测规则,则将目标检测条件和目标检测规则所隶属的待匹配数据规则确定为目标数据规则。
其中,第一目标数据行是第一数据表中的一行数据。第一数据表中包括至少一个数据行,第一目标数据行是从第一数据表所包括的数据行中过滤出的数据行。第一数据表中的每个数据行(包含第一目标数据行)均包括对应于第一数据表的每个字段的数据。第一数据表中含有第一字段,因此,第一目标数据行中包含对应于第一字段的数据。例如,第一数据表含有5个字段,其中,第一字段为数量字段,若第一数据表含有10个数据行,则每个数据行中均包括对应于这5个字段的数据,即包括每个数据行中含有对应于数量字段的数量数据。
目标检测条件为针对于当前的规则生成过程所生成的待匹配数据规则中包含的检测条件,目标检测规则为针对于当前的规则生成过程所生成的待匹配数据规则中包含的检测规则。例如,规则模板集合中包含100条待匹配数据规则,则将会对100条待匹配数据规则进行遍历检查,以确定目标数据规则。在确认某一条待匹配数据规则是否为目标数据规则时,该待匹配数据规则所包含的检测条件为目标检测条件,所包含的检测规则为目标检测规则。
具体地,数据质量监控装置首先利用目标检测条件对第一数据表中的数据进行过滤,并且将符合目标检测条件的数据行确定为第一目标数据行。第一目标数据行具体可以包括一个或多个数据行,每个数据行包括对应于第一数据表的表头中的字段的数据。
对于所得到的第一目标数据行,数据质量监控装置检测每个数据行中对应于第一字段的数据是否符合目标检测规则。具体地,对于第一目标数据行中存在多个数据行的情况,数据质量监控装置将遍历每个数据行来进行目标检测规则的检测。由于历史数据中均为正确数据,因此,第一目标数据行中每个数据行均需要符合目标检测规则,才可以将目标检测条件和目标检测规则所隶属的待匹配数据规则确定为目标数据规则。在一个实施例中,对于多个数据行的情况,可以设定阈值范围,只要符合目标检测规则的数据行的数量或者比例符合阈值范围,即可以将待匹配数据规则确定为目标数据规则。
步骤S204,根据目标数据规则,对业务数据进行数据质量监控。
具体地,数据质量监控装置根据所确定的目标数据规则,对新收集到的业务数据进行数据质量监控。具体地,根据目标数据规则中的检测条件,从业务数据中筛选出符合条件的数据,然后,根据检测规则,确定筛选出的数据是否符合对应的规则。如果检测结果指示存在不符合检测规则的数据,则数据质量监控装置可以对异常数据进行告警。此外,数据质量监控装置还可以根据检测结果生成可视化的图标,以供用户查看。
在本申请的实施例中,根据业务数据的历史数据以及规则模板,自动生成适合于业务数据的数据规则,然后再根据所生成的数据规则,对业务数据进行数据质量监控,因此,仅在制定规则模板时需要根据相关领域的专业知识进行分析和业务梳理工作,而新规则的确定由系统自动完成,相较于大量的新规则,制定规则模板所需要的工作量更少,从而使得数据质量监控所消耗的人力资源更少并且降低成本。
在本申请的一个实施例中,待处理数据表还包括第二数据表,第二数据表中含有第二字段,第二字段与第一字段相同,为了确定目标数据规则,具体可以如图3所示,步骤S201,获取包含有业务数据所对应历史数据的待处理数据表之后,方法还可以包括如下步骤S301和S302,详细说明如下:
步骤S301,对第一数据表和第二数据表进行表连接,得到连接数据表。
表连接是一种数据库表的操作方式,其基于两张或者多张表之间的相同字段将表中的行结合起来形成连接结果。具体地,表连接操作包括左连接、右连接、内连接以及全连接等多种方式。作为示例,在本申请的实施例中,采用全连接的方式进行介绍。具体地,全连接的结果请参阅如下表1,表1为全连接结果的示例。
其中,表M的H列和表N的J列是相同字段,在将表M和表N基于H列和J列全连接后,全连接结果中,包括相同数据的第二行以及第三行被连接后加入结果,而第一行和第四行由于没有相同的数据,因此单独加入到结果中,而对应的字段中为空值。可以理解的是,在实际情况中,表M和表N将包括更多字段,而相应的数据也将对应地包括在连接结果中,例如表中的X列和Y列。
数据质量监控装置对第一数据表和第二数据表进行全连接,具体地,首先基于全连接指令中标识的连接字段,将第一数据表中连接字段对应的各个数据与第二数据表中连接字段对应的数据进行比较,若第二数据表中连接字段对应的数据存在相同数据,则将相同数据所在的数据行与第一数据表中的数据行对应连接成新的数据行,加入结果中,若不存在相同数据,则仅将第一数据表中的数据行加入结果,然后,再将第二数据表中未加入结果的数据加入结果中,得到连接数据表。可以理解的是,连接数据表中所包括的数据列的数量为第一数据表和第二数据表的数据列的数量之和,也就是说,相同字段也会在连接数据表中,全连接得到的连接数据表也将包括第一数据表和第二数据表中的全部数据。
步骤S302,若连接数据表中存在符合目标检测条件的第二目标数据行,并且第二目标数据行中对应于第一字段的数据以及对应于第二字段的数据均符合目标检测规则,则将目标检测条件和目标检测规则所隶属的待匹配数据规则确定为目标数据规则。
具体地,数据质量监控装置根据目标检测条件,对连接数据表中的数据进行检查,并且过滤出符合目标检测条件的第二目标数据行。第二目标数据行是连接数据表中的一行数据。连接数据表中包括至少一个数据行,并且包括第一数据表和第二数据表中的所有字段,第二目标数据行是从连接数据表所包括的数据行中过滤出的数据行。在通过全连接的方式获得连接数据表的情况下,第二目标数据行可以是第一数据表和第二数据表中的数据行连接之后的结果,即第二目标数据行中的数据来自于第一数据表和第二数据表。第二目标数据行也可以仅来自第一数据表或者第二数据表。连接数据表中含有第一字段和第二字段,因此,第二目标数据行中包含对应于第一字段的数据以及第二字段的数据,或者,第二目标数据行中包含对应于第一字段的数据或者第二字段的数据。例如,第一数据表含有5个字段,第二数据表也含有5个字段,则连接数据表含有10个字段,则每个数据行中至少包括对应于5个字段的数据(这5个字段来自第一数据表或者第二数据表),即包括每个数据行中至少含有对应于第一字段的数据或者对应于第二字段的数据。对于第二目标数据行,数据质量监控装置根据目标检测规则,对第二目标数据行中对应于第一字段的数据以及对应于第二字段的数据进行检查。可以理解的是,取决于目标检测规则的具体类型,数据质量监控装置的检查目标也可以仅涉及对应于第一字段的数据或者对应于第二字段的数据。数据质量监控装置将遍历第二目标数据行中包括的每个数据行来进行目标检测规则的检测。在第二目标数据行中的每个数据行均符合目标检测规则的情况下,可以将目标检测条件和目标检测规则所隶属的待匹配数据规则确定为目标数据规则。在一个实施例中,对于多个数据行的情况,可以设定阈值范围,只要符合目标检测规则的数据行的数量或者比例符合阈值范围,即可以将待匹配数据规则确定为目标数据规则。
在本申请的实施例中,将两张表进行表连接,并且基于连接后的表确定目标数据规则,可以自动生成基于两张表的字段之间的关系的检测规则,可以增大规则生成的灵活性,从而提升方案所能覆盖的业务情况。
在本申请的一个实施例中,待处理数据表是针对历史数据表集合进行分片处理得到的数据分片,为了确定目标数据规则,具体可以如图4所示,方法还可以包括如下步骤S401和S402,详细说明如下:
步骤S401,获取符合目标检测条件和目标检测规则所隶属待匹配数据规则的数据分片数量,并获取数据分片数量与历史数据表集合中全部数据分片的数量之间的比值。
具体地,历史数据量通常较大,可以将历史数据划分为多个数据分片,每个数据分片中包括数据量大致相同的数据表。在一个实施例中,每个数据分片中所包括的数据表的种类是相同的,即历史数据表可以包括50张表,则每个数据分片中均会包含50张表,每张表中所包括的数据条目的数量也大致相同。
每个数据分片由数据质量监控装置分别进行目标检测条件和目标检测规则的检测。多个数据分片的检测过程可以并行进行。对于每个数据分片,数据质量监控装置可以确定数据分片中数据表中的数据是否符合待匹配数据规则,即,确定在数据分片中,基于目标检测条件过滤出的数据是否符合目标检测规则。在所有的数据分片均处理完成后,数据质量监控装置可以基于符合待匹配数据规则的数据分片的数量与全部数据分片的数量,确定数量比值。具体地,例如,历史数据被划分为100个数据分片,每个分片中包括第一数据表。数据质量监控装置对100个数据分片进行检查,确定其中95个数据分片中所包括的第一数据表符合待匹配数据规则,则所获得的比值为95比100,以百分比记录为95%。
在另一个实施例中,每个数据分片中可以包括不同的数据表。在此类情况下,比值将是符合待匹配数据规则的数据分片数量与符合目标检测条件的数据分片的数量的比值。例如,历史数据被划分为100个数据分片,其中,50个数据分片中包括符合目标检测条件的数据,而其中40个数据分片的数据符合目标检测规则,则比值为40比50,即80%。
步骤S402,若比值大于预设规则输出阈值,则将目标检测条件和目标检测规则所隶属的待匹配数据规则确定为目标数据规则。
对于不同的待匹配数据规则,设置的预设规则输出阈值不同。例如,对于检查数据一致的规则,可以将预设规则输出阈值设定为100%,即所有的数据分片都需要符合该数据一致规则,才可以确定其为目标数据规则。而对于非空值检查规则,可以将预设规则输出阈值设定为95%,意味着只要95%的数据分片中需要检查的字段中不包含空值,就可以将待匹配数据规则确定为目标数据规则,也就是说,允许最高5%的数据分片不符合非空值检查规则。
在本申请的实施例中,通过数据分片的方式,将历史数据划分成多个数据分片进行处理,每个数据质量监控装置在进行实际的规则确定时,仅针对少量的数据进行计算,可以提高方案的执行效率。
在本申请的一个实施例中,为了确定目标数据规则,具体可以如图5所示,方法还可以包括如下步骤S501和S502,详细说明如下:
步骤S501,若连接数据表中存在符合目标检测条件的第二目标数据行,获取第二目标数据行中对应于第一字段的第一目标数据和对应于第二字段的第二目标数据;
步骤S502,若第一目标数据和第二目标数据均符合目标检测规则中规定的预设数学关系,则将待匹配数据规则确定为目标数据规则。
具体地,连接数据表中的部分数据行是由来自第一数据表的数据和来自第二数据表的数据组合成的。此类数据行中包括对应于第一字段的数据和对应于第二字段的数据,即,部分第二目标数据行包括对应于第一字段的数据和对应于第二字段的数据。例如,参阅上文中的表1,若第一字段为X列,第二字段为Y段,第二行和第三行中包含对应于X列和Y列的数据,即第二目标数据行中包含对应于第一字段和第二字段的第一目标数据200和第二目标数据400。数据质量监控装置首先根据目标检测条件从此类数据条目中筛选出符合目标检测条件的一个或多个数据行,然后再根据目标检测规则,对于一个或多个数据行中的每个数据行,获取对应于第一字段的数据A和对应于第二字段的数据B。在目标检测规则中设置了数据A和数据B的预设数学关系,例如A=KB+Z,其中,K和Z均为固定的常数。若数据A和数据B能够带入数学关系使得数学关系成立,则表示该数据行符合待匹配数据规则。第二目标数据行所包括的全部数据行均符合待匹配数据规则,则该待匹配数据规则可以确定为目标数据规则。
可以理解的是,上述等式仅为预设数学关系的一个示例,具体的数据关系可以采用各种类型的等式或不等式来描述,并且所涉及的字段也可以包括更多,例如第三字段或更多,本申请对此不作限制。由于采用等式的方式描述多个字段之间的关系,因此,还可以理解的是,上述的方案是针对数值类型的字段设置的,或者是针对采用字符串方式表示数值的字段。
在本申请的实施例中,通过多个字段的数据符合预设数学关系的方式确定目标数据规则,由于预设了多个字段之间的数学关系,而不需要对数学关系的推算和验证,使得检测数据是否符合数据规则时的计算速度更快,提高运算效率。
在本申请的一个实施例中,为了确定目标数据规则,具体可以如图6所示,方法还可以包括如下步骤S601和S602,详细说明如下:
步骤S601,根据符合目标检测条件和目标检测规则所隶属的待匹配数据规则的第一目标数据行的数据更新时间,确定待匹配数据规则所对应的时间分布规律;
步骤S602,若时间分布规律符合预设的时间分布规律,则确定待匹配数据规则是目标数据规则。
根据规则模板集合,数据质量监控装置可能会找到大量的待匹配数据规则,而在其中,部分待匹配数据规则的所覆盖的数量可能过小,例如,符合目标检测条件的数据行仅有一行。在此类情况下,还需要对待匹配数据规则进行进一步的筛选,来对目标数据规则进行优化。
具体地,数据质量监控装置可以根据第一目标数据行中的所记录的数据更新时间,确定待匹配数据规则所对应的时间分布规律。例如,对于某一个待匹配数据规则,以24小时为周期,每个24小时均有该符合该待匹配数据规则的数据出现,则可以确定该待匹配数据规则所对应的时间分布规律为24小时。又例如,对于某一个待匹配数据规则,以24小时为周期,每天11时至13时之间均有该符合该待匹配数据规则的数据出现,则也可以确定该待匹配数据规则所对应的时间分布规律为固定时段。数据质量监控装置可以根据预先设置好的多个时间分布规律,穷举式地检测第一目标数据行的更新时间是否符合其中一个时间分布规律。
若时间分布规律符合预设的时间分布规律,则数据质量监控装置可以确定待匹配数据规则是目标数据规则。预设的时间分布规律是对应于待匹配数据规则设置的。例如,待匹配数据规则A对应的时间分布规律设置为12小时周期,则当第一目标数据行符合12小时周期时,待匹配数据规则A可以设置为目标检测规则。
在一个实施例中,还可以采用其他方式对待匹配数据规则进行过滤。具体地,对于检测规则相同的多个待匹配数据规则,可以检查其检测条件的覆盖关系,若检查条件存在相互覆盖的关系,则将条件覆盖范围最大的待匹配数据规则保留,其余待匹配数据规则可以放弃。例如,若规则M的检测条件为A、B和C,而规则N的检测条件为A和B,并且规则M和规则N的检测规则相同,则可以确定符合规则M的检测条件的数据一定符合规则N的检测条件,即规则N的范围大于规则M的范围,则可以放弃规则M,仅采用规则N。
在另一个实施例中,还可以采用样本的覆盖关系来过滤规则。具体地,对于检测规则相同的多个待匹配数据规则,检测条件之间没有明确的覆盖关系,然而其中一个待匹配数据规则所覆盖的数据包含了其他待匹配数据规则覆盖的数据,则可以保留数据覆盖范围最大的待匹配数据规则,其余待匹配数据规则可以放弃。例如,若规则X的检测条件为A和B,而规则Y的检测条件为C和D,并且规则X和规则Y的检测规则相同,规则X的检测条件与规则Y的检测条件之间没有覆盖关系,然而,若符合规则X的数据为数据行Z1至数据行Z100,而符合规则Y的数据为数据行Z50至数据行Z100,则可以确定规则X的数据覆盖规则Y的数据,规则X的范围覆盖规则Y的范围,则可以放弃规则Y,仅采用规则X。
在本申请的实施例中,通过时间分布规律的方式确定目标数据规则,从而能够生成在时间维度上具有普遍性的数据规则,将部分泛化能力较差的数据规则过滤掉,避免无用规则占用检测计算资源,从而提升数据质量监控的效率。
在本申请的一个实施例中,为了确定目标数据规则,具体可以如图7所示,方法还可以包括如下步骤S701和S702,详细说明如下:
步骤S701,针对第一目标数据行中对应于第一字段的全量数据,确定目标数据与全量数据的目标数据比值,其中目标数据为全量数据中符合目标检测条件和目标检测规则所隶属的待匹配数据规则的数据;
步骤S702,根据目标数据比值和预设比值,将待匹配数据规则确定为目标数据规则。
对于单个数据表中的数据,可以存在多种检测规则,其中包括数据波动规则。
具体地,对于数据波动规则,数据质量监控装置首先需要确定符合目标检测条件的第一目标数据行中,符合目标检测规则的对应于第一字段的目标数据的数据量。然后根据该数据量和第一目标数据行中对应于第一字段的全量数据的数据量确定目标数据比值。具体地,例如第一目标数据行为100行,则第一字段的全量数据为100个,在这100个数据中,若符合目标检测规则的数据为99个,则目标数据比值为99比100,即99%。
数据质量监控装置根据目标数据比值和预设比值,将待匹配数据规则确定为目标数据规则,其中,预设比值为根据数据特性设置的数据波动比例,其与对待匹配数据规则和数据之间的匹配程度的要求呈正比,即对匹配程度要求越高,则预设比值越高,反之则越低,例如,预设比值为95%,则表示可以存在5%的数据不符合待匹配数据规则,而仍认为数据的准确的。具体地,若目标数据比值大于或等于预设比值,则表示数据波动符合预设的条件,则可以将待匹配数据规则确定为目标数据规则。例如,若目标数据比值为99%,表示仅有1%的数据产生波动,而预设比值为95%,则可以确定待匹配数据规则确定为目标数据规则。
单个数据表的检测规则还包括枚举值规则。对于枚举值规则,数据质量监控装置需要确定符合待匹配数据规则的目标检测条件的第一目标数据行中,对应于第一字段的目标数据均是选自预设的枚举值。例如,存在100个目标数据行,则对应于第一字段的目标数据数量为100,预设的枚举值为{北京,上海,深圳},则数据质量监控装置需要确定100个目标数据都是上述三个城市之中的一个。如果所有的目标数据均是选自预设的枚举值,则可以将待匹配数据规则确定为目标数据规则。
单个数据表的检测规则还包括空值比例规则。对于枚举值规则,数据质量监控装置需要确定符合待匹配数据规则的目标检测条件的第一目标数据行中,对应于第一字段的目标数据中空值的比例低于预设的空值比例。例如,存在100个目标数据行,则对应于第一字段的目标数据数量为100,若预设的空值比例为5%,则数据质量监控装置需要确定100个目标数据中空值的数量为5个或更少,即控制比例低于5%。如果目标数据中空值的比例低于预设的空值比例,则可以将待匹配数据规则确定为目标数据规则。
在本申请的实施例中,具体提出了对于单个数据表的数据波动情况确定目标数据规则,在面对数据突发时,可以避免突发数据对于确定目标数据规则的影响,有利于提升方案的稳定性。
在本申请的一个实施例中,为了进行数据质量监控,具体可以如图8所示,上述步骤S204,根据目标数据规则,对业务数据进行数据质量监控,还可以包括如下步骤S801至S804,详细说明如下:
步骤S801,根据业务数据对应的业务数据源,对目标检测条件进行解析,得到对应于业务数据源的数据查询命令;
步骤S802,向业务数据源发送数据查询命令;
步骤S803,接收业务数据源针对数据查询命令返回的待检查数据,并根据目标检测规则对待检查数据进行检查,得到检查结果;
步骤S804,根据检查结果,对业务数据的数据质量进行告警。
具体地,在确定目标检测规则后,数据质量监控装置可以将目标检测规则部署到数据质量监控平台上,并且随后利用数据质量监控平台对业务数据进行数据质量监控。
具体地,数据质量监控平台的架构可以参阅图9,图9为数据质量监控平台架构的示意图。如图9所示,数据质量监控平台900主要包括规则引擎910、解析器920以及数据引擎930。其中,规则引擎910中存储有数据源的配置信息以及目标检测规则。根据接入的业务数据的不同,数据质量监控平台可以根据相应数据源的配置信息对业务数据进行分析。数据源的具体类型可以包括Hive、Hbase、HDFS、Kylin、Druid、MySQL等类型。
规则引擎910会定时执行目标检测规则。在执行时,规则引擎910将目标检测规则提供给解析器920。解析器920将根据业务数据对应的业务数据源,对目标检测条件进行解析,得到对应于业务数据源的数据查询命令。例如,比如对Hive和kylin两个异构源进行收入一致核对时,目标检测条件将解析得到的生成语法树会拆成一个简单的三节点树,左子节点为执行Hive平台的SQL查询( select sum(case when $left.fraud_type=0 then $left.real_cost else 0 end) from $left ),右子节点为执行Kylin SQL查询( selectsum($right.real_cost) from $right )。随后数据引擎930从解析器902获取数据查询命令,并且向业务数据源发送数据查询命令。数据源根据数据查询命令获取数据,发送给数据引擎930。数据引擎930接收业务数据源针对数据查询命令返回的待检查数据,并且通知规则引擎910。规则引擎910根据目标检测规则对待检查数据进行检查,得到检查结果。具体地,规则引擎910根据生成语法树的父节点比对左右子节点返回的结果。根据检查结果,规则引擎910对业务数据的数据质量进行告警。具体地,如果检查结果指示数据超过阈值,则告警并将结果存入数据库中。
存储到数据库中的告警可以通过邮件、短信以及电话等方式通知用户。数据质量监控平台也可以提供前端页面统一展示所有告警异常和数据统计曲线。在一个实施例中,数据质量监控平台可以将同一时间由同一个表字段导致的多个告警收敛为一条告警,以避免重复告警打扰用户。
在另一个实施例中,用户可以对于告警进行错误反馈。数据质量监控平台将会根据错误反馈,将告警对应的目标数据规则取消,从而避免后续再次发生误报警的情况。
可以理解的是,数据质量监控平台可以是数据质量监控装置的一部分。在一个实施例中,在确定目标检测规则之后,在业务数据规则没有发生变化的情况下,数据质量监控装置可以利用所生成的数据规则对业务数据进行多次数据质量监控,而不需要每次都重新生成目标数据规则。
在本申请的实施例中,根据目标检测规则对业务数据进行数据质量监控,从而能够根据所生成的目标检测规则,自动对业务数据中的错误数据进行告警,提供较高质量的自动核对,减少人力投入。
应当注意,尽管在附图中以特定顺序描述了本申请中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
以下介绍本申请的装置实施,可以用于执行本申请上述实施例中的数据质量监控的方法。图10示意性地示出了本申请实施例中数据质量监控装置的组成框图。如图10所示,数据质量监控装置1000主要可以包括:
数据获取模块1001,用于获取包含有业务数据所对应历史数据的待处理数据表,所述待处理数据表包括第一数据表,所述第一数据表中含有第一字段;
模板获取模块1002,用于根据所述第一字段对应的数据类型获取确定规则模板集合,所述规则模板集合中含有多个至少一个待匹配数据规则,每个待匹配数据规则包括检测条件和检测规则;
确定模块1003,用于若所述第一数据表中存在符合目标检测条件的第一目标数据行,并且所述第一目标数据行中对应于所述第一字段的数据符合目标检测规则,则将所述目标检测条件和所述目标检测规则所隶属的待匹配数据规则确定为目标数据规则;
监控模块1004,用于根据所述目标数据规则,对所述业务数据进行数据质量监控。
在本申请的一些实施例中,基于以上技术方案,所述待处理数据表还包括第二数据表,所述第二数据表中含有第二字段,所述第二字段与所述第一字段相同;所述数据质量监控装置1000还包括:
表连接模块,用于对所述第一数据表和所述第二数据表进行表连接,得到连接数据表;
规则确定模块,用于若所述连接数据表中存在符合所述目标检测条件的第二目标数据行,并且所述第二目标数据行中对应于所述第一字段的数据以及对应于所述第二字段的数据均符合所述目标检测规则,则将所述目标检测条件和所述目标检测规则所隶属的待匹配数据规则确定为目标数据规则。
在本申请的一些实施例中,基于以上技术方案,所述待处理数据表是针对历史数据表集合进行分片处理得到的数据分片;所述数据质量监控装置1000还包括:
数量比值获取模块,用于获取符合所述目标检测条件和所述目标检测规则所隶属待匹配数据规则的数据分片数量,并获取所述数据分片数量与所述历史数据表集合中全部数据分片的数量之间的比值;
规则确定模块,还用于若所述比值大于预设规则输出阈值,则将所述目标检测条件和所述目标检测规则所隶属的待匹配数据规则确定为目标数据规则。
在本申请的一些实施例中,基于以上技术方案,所述数据质量监控装置1000还包括:
数据获取模块,用于若所述连接数据表中存在符合所述目标检测条件的第二目标数据行,获取所述第二目标数据行中对应于所述第一字段的第一目标数据和对应于所述第二字段的第二目标数据;
规则确定模块,还用于若所述第一目标数据和第二目标数据均符合所述目标检测规则中规定的预设数学关系,则将所述待匹配数据规则确定为目标数据规则。
在本申请的一些实施例中,基于以上技术方案,所述数据质量监控装置1000还包括:
时间分布确定模块,用于根据符合所述目标检测条件和所述目标检测规则所隶属的所述待匹配数据规则的所述第一目标数据行的数据更新时间,确定所述待匹配数据规则所对应的时间分布规律;
规则确定模块,还用于若所述时间分布规律符合预设的时间分布规律,则确定所述待匹配数据规则是目标数据规则。
在本申请的一些实施例中,基于以上技术方案,所述数据质量监控装置1000还包括:
数据比值获取模块,用于针对所述第一目标数据行中对应于所述第一字段的全量数据,确定目标数据与所述全量数据的目标数据比值,其中所述目标数据为所述全量数据中符合所述目标检测条件和所述目标检测规则所隶属的所述待匹配数据规则的数据;
规则确定模块,还用于根据所述目标数据比值和预设比值,将所述待匹配数据规则确定为目标数据规则。
在本申请的一些实施例中,基于以上技术方案,监控模块1004,具体包括:
解析单元,用于根据所述业务数据对应的业务数据源,对所述目标检测条件进行解析,得到对应于所述业务数据源的数据查询命令;
发送单元,用于向所述业务数据源发送所述数据查询命令;
检查单元,用于接收所述业务数据源针对所述数据查询命令返回的待检查数据,并根据所述目标检测规则对所述待检查数据进行检查,得到检查结果;
告警单元,用于根据所述检查结果,对所述业务数据的数据质量进行告警。
需要说明的是,上述实施例所提供的装置与上述实施例所提供的方法属于同一构思,其中各个模块执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。
图11示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图11示出的电子设备的计算机系统1100仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图11所示,计算机系统1100包括中央处理单元(Central Processing Unit,CPU)1101,其可以根据存储在只读存储器(Read-Only Memory,ROM)1102中的程序或者从储存部分1108加载到随机访问存储器(Random Access Memory,RAM)1103中的程序而执行各种适当的动作和处理。在RAM 1103中,还存储有系统操作所需的各种程序和数据。CPU1101、ROM 1102以及RAM 1103通过总线1104彼此相连。输入/输出(Input /Output,I/O)接口1105也连接至总线1104。
以下部件连接至I/O接口1105:包括键盘、鼠标等的输入部分1106;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1107;包括硬盘等的储存部分1108;以及包括诸如LAN(Local AreaNetwork,局域网)卡、调制解调器等的网络接口卡的通信部分1109。通信部分1109经由诸如因特网的网络执行通信处理。驱动器1110也根据需要连接至I/O接口1105。可拆卸介质1111,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1110上,以便于从其上读出的计算机程序根据需要被安装入储存部分1108。
特别地,根据本申请的实施例,各个方法流程图中所描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1109从网络上被下载和安装,和/或从可拆卸介质1111被安装。在该计算机程序被中央处理单元(CPU)1101执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。
本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (10)
1.一种数据质量监控方法,其特征在于,包括:
获取包含有业务数据所对应历史数据的待处理数据表,所述待处理数据表包括第一数据表,所述第一数据表中含有第一字段;
根据所述第一字段对应的数据类型获取规则模板集合,所述规则模板集合中含有至少一个待匹配数据规则,每个待匹配数据规则包括检测条件和检测规则;
若所述第一数据表中存在符合目标检测条件的第一目标数据行,并且所述第一目标数据行中对应于所述第一字段的数据符合目标检测规则,则将所述目标检测条件和所述目标检测规则所隶属的待匹配数据规则确定为目标数据规则;
根据所述目标数据规则,对所述业务数据进行数据质量监控。
2.根据权利要求1所述的方法,其特征在于,所述待处理数据表还包括第二数据表,所述第二数据表中含有第二字段,所述第二字段与所述第一字段相同;
在所述获取包含有业务数据所对应历史数据的待处理数据表之后,所述方法还包括:
对所述第一数据表和所述第二数据表进行表连接,得到连接数据表;
若所述连接数据表中存在符合所述目标检测条件的第二目标数据行,并且所述第二目标数据行中对应于所述第一字段的数据以及对应于所述第二字段的数据均符合所述目标检测规则,则将所述目标检测条件和所述目标检测规则所隶属的待匹配数据规则确定为目标数据规则。
3.根据权利要求1或2所述的方法,其特征在于,所述待处理数据表是针对历史数据表集合进行分片处理得到的数据分片;所述方法还包括:
获取符合所述目标检测条件和所述目标检测规则所隶属待匹配数据规则的数据分片数量,并获取所述数据分片数量与所述历史数据表集合中全部数据分片的数量之间的比值;
若所述比值大于预设规则输出阈值,则将所述目标检测条件和所述目标检测规则所隶属的待匹配数据规则确定为目标数据规则。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若所述连接数据表中存在符合所述目标检测条件的第二目标数据行,获取所述第二目标数据行中对应于所述第一字段的第一目标数据和对应于所述第二字段的第二目标数据;
若所述第一目标数据和所述第二目标数据均符合所述目标检测规则中规定的预设数学关系,则将所述待匹配数据规则确定为目标数据规则。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据符合所述目标检测条件和所述目标检测规则所隶属的所述待匹配数据规则的所述第一目标数据行的数据更新时间,确定所述待匹配数据规则所对应的时间分布规律;
若所述时间分布规律符合预设的时间分布规律,则确定所述待匹配数据规则是目标数据规则。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
针对所述第一目标数据行中对应于所述第一字段的全量数据,确定目标数据与所述全量数据的目标数据比值,其中所述目标数据为所述全量数据中符合所述目标检测条件和所述目标检测规则所隶属的所述待匹配数据规则的数据;
根据所述目标数据比值和预设比值,将所述待匹配数据规则确定为目标数据规则。
7.根据权利要求1所述的方法,其特征在于,所述根据所述目标数据规则,对所述业务数据进行数据质量监控,包括:
根据所述业务数据对应的业务数据源,对所述目标检测条件进行解析,得到对应于所述业务数据源的数据查询命令;
向所述业务数据源发送所述数据查询命令;
接收所述业务数据源针对所述数据查询命令返回的待检查数据,并根据所述目标检测规则对所述待检查数据进行检查,得到检查结果;
根据所述检查结果,对所述业务数据的数据质量进行告警。
8.一种数据质量监控装置,其特征在于,包括:
数据获取模块,用于获取包含有业务数据所对应历史数据的待处理数据表,所述待处理数据表包括第一数据表,所述第一数据表中含有第一字段;
模板获取模块,用于根据所述第一字段对应的数据类型获取确定规则模板集合,所述规则模板集合中含有多个至少一个待匹配数据规则,每个待匹配数据规则包括检测条件和检测规则;
确定模块,用于若所述第一数据表中存在符合目标检测条件的第一目标数据行,并且所述第一目标数据行中对应于所述第一字段的数据符合目标检测规则,则将所述目标检测条件和所述目标检测规则所隶属的待匹配数据规则确定为目标数据规则;
监控模块,用于根据所述目标数据规则,对所述业务数据进行数据质量监控。
9.一种电子设备,其特征在于,包括:
处理器;
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至7中任意一项所述的数据质量监控的方法。
10.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的数据质量监控的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110277459.6A CN112650762B (zh) | 2021-03-15 | 2021-03-15 | 数据质量监控的方法、装置、电子设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110277459.6A CN112650762B (zh) | 2021-03-15 | 2021-03-15 | 数据质量监控的方法、装置、电子设备以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112650762A true CN112650762A (zh) | 2021-04-13 |
CN112650762B CN112650762B (zh) | 2021-07-02 |
Family
ID=75371201
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110277459.6A Active CN112650762B (zh) | 2021-03-15 | 2021-03-15 | 数据质量监控的方法、装置、电子设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112650762B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113360491A (zh) * | 2021-06-30 | 2021-09-07 | 杭州数梦工场科技有限公司 | 数据质量检验方法、装置、电子设备及存储介质 |
CN113722333A (zh) * | 2021-09-10 | 2021-11-30 | 拉卡拉支付股份有限公司 | 数据检查方法、装置、电子设备、存储介质及程序产品 |
CN113792033A (zh) * | 2021-08-12 | 2021-12-14 | 北京中交兴路信息科技有限公司 | 一种基于Spark的数据质量核查方法、装置、存储介质及终端 |
CN115292297A (zh) * | 2022-06-29 | 2022-11-04 | 江苏昆山农村商业银行股份有限公司 | 一种构建数据仓库数据质量监测规则的方法和系统 |
CN115543973A (zh) * | 2022-09-19 | 2022-12-30 | 北京三维天地科技股份有限公司 | 一种基于知识谱图与机器学习的数据质量规则推荐方法 |
CN115600600A (zh) * | 2022-10-26 | 2023-01-13 | 中电金信软件有限公司(Cn) | 多对象标签体系的标签命名方法、装置、电子设备及介质 |
CN116028481A (zh) * | 2023-03-30 | 2023-04-28 | 紫金诚征信有限公司 | 一种数据质量检测方法、装置、设备和存储介质 |
CN116610664A (zh) * | 2023-07-19 | 2023-08-18 | 深圳高灯计算机科技有限公司 | 数据监控方法、装置、计算机设备、存储介质和产品 |
CN116701383A (zh) * | 2023-08-03 | 2023-09-05 | 中航信移动科技有限公司 | 一种数据实时质量监测方法、电子设备及存储介质 |
CN116910496A (zh) * | 2023-09-14 | 2023-10-20 | 深圳市智慧城市科技发展集团有限公司 | 数据质量监测规则的配置方法、设备及可读存储介质 |
CN116975032A (zh) * | 2023-07-14 | 2023-10-31 | 南京领行科技股份有限公司 | 数据对齐方法、系统和电子设备及存储介质 |
WO2024169181A1 (zh) * | 2023-02-14 | 2024-08-22 | 华为云计算技术有限公司 | 一种规则重组的方法、数据管理平台和计算设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150032589A1 (en) * | 2014-08-08 | 2015-01-29 | Brighterion, Inc. | Artificial intelligence fraud management solution |
CN108197114A (zh) * | 2018-01-19 | 2018-06-22 | 腾讯科技(深圳)有限公司 | 表格数据的检测方法、装置、存储介质及电子装置 |
CN109102080A (zh) * | 2018-08-21 | 2018-12-28 | 广发证券股份有限公司 | 一种数值型金融数据质量监控系统及方法 |
CN110175084A (zh) * | 2019-04-04 | 2019-08-27 | 阿里巴巴集团控股有限公司 | 数据变化的监控方法及装置 |
CN111563074A (zh) * | 2020-04-28 | 2020-08-21 | 厦门市美亚柏科信息股份有限公司 | 一种基于多维标签的数据质量检测方法和系统 |
CN112181704A (zh) * | 2020-09-28 | 2021-01-05 | 京东数字科技控股股份有限公司 | 一种大数据任务处理方法、装置、电子设备及存储介质 |
-
2021
- 2021-03-15 CN CN202110277459.6A patent/CN112650762B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150032589A1 (en) * | 2014-08-08 | 2015-01-29 | Brighterion, Inc. | Artificial intelligence fraud management solution |
CN108197114A (zh) * | 2018-01-19 | 2018-06-22 | 腾讯科技(深圳)有限公司 | 表格数据的检测方法、装置、存储介质及电子装置 |
CN109102080A (zh) * | 2018-08-21 | 2018-12-28 | 广发证券股份有限公司 | 一种数值型金融数据质量监控系统及方法 |
CN110175084A (zh) * | 2019-04-04 | 2019-08-27 | 阿里巴巴集团控股有限公司 | 数据变化的监控方法及装置 |
CN111563074A (zh) * | 2020-04-28 | 2020-08-21 | 厦门市美亚柏科信息股份有限公司 | 一种基于多维标签的数据质量检测方法和系统 |
CN112181704A (zh) * | 2020-09-28 | 2021-01-05 | 京东数字科技控股股份有限公司 | 一种大数据任务处理方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
SHI MINGTAI ET AL: "Data Quality Assessment for On-line Monitoring and Measuring System of Power", 《2018 IEEE 3RD INTERNATIONAL CONFERENCE ON CLOUD COMPUTING AND BIG DATA ANALYSIS》 * |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113360491A (zh) * | 2021-06-30 | 2021-09-07 | 杭州数梦工场科技有限公司 | 数据质量检验方法、装置、电子设备及存储介质 |
CN113360491B (zh) * | 2021-06-30 | 2024-03-29 | 杭州数梦工场科技有限公司 | 数据质量检验方法、装置、电子设备及存储介质 |
CN113792033A (zh) * | 2021-08-12 | 2021-12-14 | 北京中交兴路信息科技有限公司 | 一种基于Spark的数据质量核查方法、装置、存储介质及终端 |
CN113722333A (zh) * | 2021-09-10 | 2021-11-30 | 拉卡拉支付股份有限公司 | 数据检查方法、装置、电子设备、存储介质及程序产品 |
CN115292297A (zh) * | 2022-06-29 | 2022-11-04 | 江苏昆山农村商业银行股份有限公司 | 一种构建数据仓库数据质量监测规则的方法和系统 |
CN115292297B (zh) * | 2022-06-29 | 2024-02-02 | 江苏昆山农村商业银行股份有限公司 | 一种构建数据仓库数据质量监测规则的方法和系统 |
CN115543973A (zh) * | 2022-09-19 | 2022-12-30 | 北京三维天地科技股份有限公司 | 一种基于知识谱图与机器学习的数据质量规则推荐方法 |
CN115600600A (zh) * | 2022-10-26 | 2023-01-13 | 中电金信软件有限公司(Cn) | 多对象标签体系的标签命名方法、装置、电子设备及介质 |
CN115600600B (zh) * | 2022-10-26 | 2023-10-17 | 中电金信软件有限公司 | 多对象标签体系的标签命名方法、装置、电子设备及介质 |
WO2024169181A1 (zh) * | 2023-02-14 | 2024-08-22 | 华为云计算技术有限公司 | 一种规则重组的方法、数据管理平台和计算设备 |
CN116028481A (zh) * | 2023-03-30 | 2023-04-28 | 紫金诚征信有限公司 | 一种数据质量检测方法、装置、设备和存储介质 |
CN116975032A (zh) * | 2023-07-14 | 2023-10-31 | 南京领行科技股份有限公司 | 数据对齐方法、系统和电子设备及存储介质 |
CN116975032B (zh) * | 2023-07-14 | 2024-04-12 | 南京领行科技股份有限公司 | 数据对齐方法、系统和电子设备及存储介质 |
CN116610664B (zh) * | 2023-07-19 | 2024-01-16 | 深圳高灯计算机科技有限公司 | 数据监控方法、装置、计算机设备、存储介质和产品 |
CN116610664A (zh) * | 2023-07-19 | 2023-08-18 | 深圳高灯计算机科技有限公司 | 数据监控方法、装置、计算机设备、存储介质和产品 |
CN116701383B (zh) * | 2023-08-03 | 2023-10-27 | 中航信移动科技有限公司 | 一种数据实时质量监测方法、电子设备及存储介质 |
CN116701383A (zh) * | 2023-08-03 | 2023-09-05 | 中航信移动科技有限公司 | 一种数据实时质量监测方法、电子设备及存储介质 |
CN116910496B (zh) * | 2023-09-14 | 2024-01-23 | 深圳市智慧城市科技发展集团有限公司 | 数据质量监测规则的配置方法、设备及可读存储介质 |
CN116910496A (zh) * | 2023-09-14 | 2023-10-20 | 深圳市智慧城市科技发展集团有限公司 | 数据质量监测规则的配置方法、设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112650762B (zh) | 2021-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112650762B (zh) | 数据质量监控的方法、装置、电子设备以及存储介质 | |
CN110263585B (zh) | 测试监管方法、装置、设备及存储介质 | |
CN107566163B (zh) | 一种用户行为分析关联的告警方法及装置 | |
CN112445854B (zh) | 多源业务数据实时处理方法、装置、终端及存储介质 | |
CN105631026A (zh) | 一种安全数据分析系统 | |
US20210092160A1 (en) | Data set creation with crowd-based reinforcement | |
CN112636957B (zh) | 基于日志的预警方法、装置、服务器及存储介质 | |
EP3482528A1 (en) | A system and method for providing a secure data monitoring system implemented within factory or plant | |
CN111343212B (zh) | 消息处理方法、装置、设备以及存储介质 | |
US20230040635A1 (en) | Graph-based impact analysis of misconfigured or compromised cloud resources | |
CN113094385A (zh) | 一种基于软件定义开放工具集的数据共享融合平台及方法 | |
CN113242157B (zh) | 一种分布式处理环境下的集中式数据质量监测方法 | |
CN116137908A (zh) | 动态确定端到端链路的信任级别 | |
CN111382334B (zh) | 一种数据处理方法、装置、计算机以及可读存储介质 | |
CN113645215B (zh) | 异常网络流量数据的检测方法、装置、设备及存储介质 | |
CN106452815B (zh) | 一种信息化管理方法、装置及系统 | |
CN112667621B (zh) | 区块链监管方法、设备和计算机可读存储介质 | |
CN117951341A (zh) | 基于区块链的业务处理方法、装置、设备、介质及产品 | |
CN113011960A (zh) | 基于区块链的数据访问方法、装置、介质及电子设备 | |
CN112579632A (zh) | 一种数据核验方法、装置、设备和介质 | |
CN116910023A (zh) | 一种数据治理系统 | |
KR20240053761A (ko) | 음식물 쓰레기 수거 방법 | |
CN114579398A (zh) | 一种日志的存储方法、装置、设备及存储介质 | |
CN112907009B (zh) | 标准化模型的构建方法、装置、存储介质及设备 | |
CN115511486A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |