CN102855170A - 用于数据质量监控的系统和方法 - Google Patents
用于数据质量监控的系统和方法 Download PDFInfo
- Publication number
- CN102855170A CN102855170A CN201210225743XA CN201210225743A CN102855170A CN 102855170 A CN102855170 A CN 102855170A CN 201210225743X A CN201210225743X A CN 201210225743XA CN 201210225743 A CN201210225743 A CN 201210225743A CN 102855170 A CN102855170 A CN 102855170A
- Authority
- CN
- China
- Prior art keywords
- data
- quality
- speed cache
- row
- rule
- 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/25—Integrating or interfacing systems involving database management systems
- G06F16/254—Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
-
- 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
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- Economics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了用于数据质量监控的系统和方法。数据质量监控指的是相对于预定数据质量度量来测量加载的数据的数据质量。通过把在质量规则中定义的逻辑演算应用于加载的数据来测量数据质量。利用以下至少之一来进行数据质量测量:加载的数据的增量变化和质量规则的增量变化。
Description
技术领域
本发明一般涉及ETL(提取-转换-加载)过程期间的数据剖析方法,更具体地说,涉及通过运行数据质量规则并对照先前的结果比较数据质量规则来确定数据质量是提高了还是降低了的数据质量监控。
背景技术
目前,在用于诸如主数据管理(MDM,master data management)、数据仓储(DW,data warehousing)、业务应用整合等的数据集成项目中,利用ETL(提取-转换-加载)过程中的数据剖析技术和/或数据清理方法来识别数据质量问题,使得在这些系统的初始加载阶段期间,只加载高质量的数据。然而,在数据质量问题正在变成企业的成本因素或者甚至完全中断业务过程的业务应用中,数据质量退化。在这些应用系统中,利用数据质量规则定期地测量数据质量是检测退化的速度或者数据质量随着时间的变化以及如果某些最低限度要求的数据质量关键性能指标(KPI)不再被满足而采取行动的动机的唯一途径。对于比如MDM的解决方案来说,除了MDM系统的部署之外,还建立数据支配(DG,data governance)程序以控制主数据的创建、维护和使用以及在其整个生命周期内的主数据质量。在数据支配组织中工作的数据专员定期应用数据剖析测量来控制与主数据的数据质量KPI一致。测量通常是利用语义规则(多种数据剖析技术之一)来进行的。定义数据质量KPI、语义规则、创建初始加载期间的第一基线测量、定期执行这些规则、以及对照基线结果进行比较的步骤被称为数据质量监控。
数据剖析和数据质量监控是I/O密集操作,并且非常费时。因此,对数据质量剖析和数据质量监控来说,可选的是把数据提取到中转区中,以避免由额外的I/O或者因为应用不允许不使用应用专用机制(例如SAP)而直接访问底层数据库而引起的应用性能退化。另一个原因是:如果应用和数据剖析工具所创建的SQL同时在应用数据库中运行,那么避免由SQL语句并发问题引起的应用的功能问题。
诸如DW或业务应用整合的项目中的初始完整数据提取通常需要整个周末,从而由于引起的I/O,在这样的提取期间导致应用的性能退化。对一些系统来说,可能能够定期地获得用于数据质量监控目的的跨周末的数据提取时段。对诸如持久运行的电子商务系统或者其它关键系统的应用来说,通常只能争取用于数据集成的一次性提取的时段。因此,不能进行数据质量监控,并且在业务过程中断或者出现其它严重业务问题之前,数据质量的退化一直未被检测到。
一方面,如果考虑目前已知的数据质量监控技术总是在进行进一步的测量的同时,处理在基线测量的范围内的所有数据,那么该问题会加剧。另一方面,数据量不断增长,并且两次测量之间的时间窗缩短。结果,当下一次测量大概已开始时,上一次测量可能还未完成,从而使一些情况下的数据质量监控甚至不再可行。
目前,数据质量监控领域中缺少的是只处理自最后一次测量以来变化的数据、只重新执行自最后一次测量以来变化的语义规则的各个部分或者它们的组合的能力。
US 2010/0010979A1提供了用于简量精度数据质量信息清理反馈处理的方法和计算机程序产品。
US 2008/0027958A1提供了一种能够在没有人类交互的情况下修改数据记录,响应于来自各种数据质量模块的分析而修改数据记录的数据清理工具。
发明内容
本发明提供一种如权利要求中要求保护的计算机实现的系统。本发明的实施例提供了一种系统和方法,通过对照基线结果比较当前分析结果,随时间利用预定的数据质量度量来检测和控制数据质量。为了优化运算技术,只对数据的增量变化、对质量规则的增量变化和/或对它们的组合进行数据剖析分析。通过在增量加载期间利用交叉参照表,提出的数据质量监控方法基于变化数据捕获(CDC,change datacapture)机制(比如基于事务日志的机制或者基于触发的复制)。它使用列式存储技术,从而根据质量规则的运算的区别,允许借助数据质量规则的分解,最小化数据质量规则对数据的执行时间,以及借助高度压缩和传播策略,最小化额外的存储。本发明的实施例在测量数据质量KPI以及两次运行之间KPI的比较方面是有利的,从而提供了接近确定数据质量是提高还是降低的可能性。本发明的实施例具有最小化对应用系统性能的影响以及缩短进行数据质量监控的必需时间的优点。通过只对数据的增量变化、只对质量规则的增量变化和/或对它们的组合进行数据质量分析,本发明的系统和方法可克服本领域中目前存在的数据剖析/质量监控的问题。
附图说明
包含在说明书中并构成说明书的一部分的附图图解说明了本发明的几个实施例,并且与下面的说明一起,用于解释本发明的原理。参考附图详细说明本发明的实施例。
图1是示出按照本发明的例证解决方案架构的方框图。
图2是示出按照本发明的实施例的流程图,其中,初始数据集的第一负载被从数据源中提取,并在被变换成主存储器(RAM)中的列式格式之后,被加载到增量数据质量监控器(DDQM,delta data qualitymonitor)中,以测量初始数据质量,从而生成数据质量度量的基线简档。
图3是示出按照本发明的实施例的流程图,其中,相对于先前的负载,测量被提取并被变换的增量变化的数据质量。
图4是示出按照本发明的实施例的示图,其中,从数据源中提取的数据被变换成主存储器(RAM)中的列式格式。
图5是示出按照本发明的实施例的示图,其中,质量规则被分解成它的各项,从而生成分解树。
图6是示出按照本发明的实施例的示图,其中,质量规则被分解成它的各项,并被应用于主存储器(RAM)中的数据列。
图7是示出按照本发明的实施例的示图,其中,质量规则已被改变,表示只有已受到规则的数据变化影响的列式数据对象需要主存储器(RAM)的更新或重新计算。
图8是示出按照本发明的实施例的示图,其中,在提取的数据的数据变化之后,列式数据对象的更新仅仅通过与单独的相关数据列具有相关性的中间列式数据对象传播。
具体实施方式
图1图解说明了数据质量监控的例证系统的方框图。如图所示,系统包括数据源100,在初始提取过程102中,数据集从数据源100被提取到中转区106中。在创建交叉参照表108之后,在初始加载过程110期间,变换后的数据集被加载到增量数据质量监控器(DDQM)118中的主存储器(RAM)120中的列式结构122中。存在两组列式结构:第一组保持数据(下面被称为数据列),第二组保持数据质量监控的中间结果(下面被称为列高速缓存)。用户利用客户端应用115连接到部署在应用服务器116上的数据剖析应用,以创建和维持由DDQM 118执行的数据质量规则。必需的元数据被保存在元数据仓库114中。数据集的提取、转换和加载定义传送由DDQM 118监控的数据的ETL过程,DDQM 118传送与本发明一致的质量测量的中间结果。增量数据质量监控器118可视情况耦接到剖析集市124,在剖析集市124中,能够获得质量测量的带时间戳的中间结果,使得能够实现例如防备硬件故障的业务弹性,避免了重新运行所有规则以便再次在主存储器120中实例化列式结构122的需要。
在数据源100和中转区106之间工作的CDC机制识别借助增量加载过程112加载的增量变化。在增量加载过程112中,应用一组新的操作,以最小化对主存储器120中的包含数据列和列高速缓存的列式结构122的影响。通过利用部署在用户所使用的应用客户端115所调用的应用服务器116上的数据质量监控应用,能够可视化由用于DDQM 118的计算机程序产品执行的增量质量监控的结果。在元数据仓库114中,还保存和版本管理应用服务器116能够在包含列式结构122的主存储器120上运行的质量规则,所述列式结构122包含数据列和列高速缓存。在完全执行质量规则之后,可以保存质量测量的结果用于剖析集市124中的以后数据趋势分析研究。
为了创建基本的关键数据质量度量,如图2中所示,通过从数据源中提取数据集来进行第一次加载(步骤200)。在第一ETL过程中,初始数据集被变换成数据列(步骤202),然后被放入主存储器(RAM)120中。质量规则的各项被应用于数据列(步骤204),从而产生可在数据剖析集市124中坚持的数据质量KPI的基线简档(步骤206),所述数据剖析集市124由部署在应用服务器116上的数据剖析应用触发。在第一次运行对初始数据集执行初始数据质量监控的数据规则之后,后续数据质量监控过程能够对照基线简档比较后续测量结果(步骤208)。
在后续增量加载中,如图3中所示,只从数据源100中提取数据集的增量变化(步骤300)。由变化数据捕获(CDC,change data capture)机制104来识别提取的数据的增量变化(步骤302)。通过更新数据列中的值、把值添加到数据列中和/或从数据列中删除值,根据数据集的增量变化来更新数据列(步骤304)。通过只把质量规则的各项应用于已被提取的数据的增量变化影响的数据列,从而比较实际结果与先前数据加载的质量,相对于初始获得的数据质量KPI的基线简档,获得数据的增量变化的数据质量测量结果(步骤306)。
后面的附图图解说明了按照本发明,关于变换成列式格式的加载数据评估质量规则的方法的实施例的例子。图4示出具有4列的数据集(步骤400),所述4列是在初始加载110中从数据源100中提取的。进行初始数据集的变换,以通过按照包含整个数据集的包含在每一列中的所有相异值的分类列表的格式来单独保存每一列,在DDQM 118的主存储器120中创建数据列404、406、408、410(步骤402),其中,每个相异值与数据集中包含该值的行ID的列表相关联。
在另一个实施例中,如图5中所示,可通过把每条质量规则分解成其单个项,随后把所述单个项应用于相关数据列,来执行质量管理。质量规则的分解生成运算树,所述运算可以是函数、算术运算、测试和/或布尔运算符。
图6图解说明了其中在运行三条规则之后,对相关数据列执行所选质量规则的每个单独运算的实施例,证明对于数据质量管理的评估是对包含在数据列中的相异值进行的,而不是对所有值进行的。图6示出了以下列式结构(整个用附图标记122指示):数据列404,406,408,410和列高速缓存506,508,510,512,514,516,600,602,604,606,608,610。
一旦计算了运算-例如,图6中的'ucase(Col1)'506,那么按照与用于保存数据列本身的格式类似的格式,把运算结果高速缓存到主存储器(RAM)中的列高速缓存中。被高速缓存的运算结果可在任何时间被删除和被重新计算,而不会丢失数据,并且它们可在所述相异值的列表中包含特殊的内部'未知'值,用于保存由于一些数据值已改变,因而对其来说值目前未知的所有行ID。按照与其它运算相似的方式,建立高速缓存的测试结果(例如,图6中的'col3<>1'514),但是,可能的相异值的列表限于'真'、'假'、'不适用'或者'未知'。
在评估了所有质量规则的所有运算之后,主存储器(RAM)120包含包括数据列和列高速缓存的列式结构122和列高速缓存之间的相关性,如图6中所示。如果在不同的质量规则或者在相同质量规则的不同地方中使用质量规则的相同运算,那么该运算只被计算一次并被标记成具有若干相关列高速缓存(例如,对图6中的'ucase(col2)'508和'col3+col4'600来说,情况就是这样)。如果相同的质量规则被运行若干次,而数据一直未改变,那么只有第一次运行会花时间执行,以便为质量规则的运行在主存储器120中建立列高速缓存。如果数据和规则两者都未改变,那么质量规则的进一步执行将只返回高速缓存的结果(如果仍然可用),而没有任何执行延迟。注意,在现有技术中,这一直是不可能的,并且每次执行时,都会触发完全执行。所需资源和执行时间的减少是显而易见的。长时间未使用的包含质量规则的运算的中间结果的列高速缓存(下面被称为列高速缓存)可被自动地从主存储器120中删除,以防止日益增长的存储器需求。这可通过时间阈值或者其它更复杂的老化算法来实现。
图7示出在质量规则的各项的子集已被修改,而数据集未改变的情况下发生的事情。在图7中所示的其中两条质量规则已被稍微修改(用粗体突出修改)的特定例子中,不必完全重新评估质量规则,而只需要评估包含先前不是质量规则的一部分的新运算的项。在图7中图解说明的例子中,'Col3+Co14>0'602和'(Co13+Co14)/2<0.6'610是以前未使用的新测试,从而必须计算这些列高速缓存。这两个测试可以仍然重新使用包含以前已被计算并且仍然真实的'col3+col4'600和'(Col3+Co14)/2'604的结果的列高速缓存,因为数据一直未改变。本发明的实施例可提供一种通过只把质量规则的修改项应用于数据列,而不是评估整个质量规则,来测量数据质量的快速方法,因为只需要重新计算质量规则的修改项以及它们的相关列高速缓存。
图8示出在对修改的数据集执行相同质量规则的情况下发生的事情,在该特定例子中,通过对源表400的更新操作,在行2中修改了Col1 404和Col2 406的值。当增量变化被输入DDQM 118的主存储器(RAM)120中时,Col1 404和Col2 406中的相异值被更新(图8中用粗体突出所述修改),从而生成更新的数据列Col1 404a和Col2406a。就Col1 404a来说,由于行2的新值不是新的相异值,因此变化仅仅是行ID 2从值B到值C的重赋值。就Col2 406a来说,行2的新值不存在于先前的数据列中。在这种情况下,必须创建新的相异值,并把行ID 2赋值给它。
DDQM 118保存数据列和包含质量规则的运算的列高速缓存之间的相依关系,从而保存关于作为对加载数据的修改的响应,哪些列高速缓存必须被更新或无效的信息。在诸如'ucase(col1)'506和'ucase(col2)'508的标量函数的情况下,只有列高速缓存的值被更新。只有新的相异值必须被应用于质量规则的各个单个项,从而缩短了计算时间。对于'ucase(col1)'506a和'ucase(col2)'508a的列高速缓存的修改传播取决于它们的列高速缓存的修改或无效。在诸如'ucase(col1)+ucase(col2)'510a的多列标量运算的情况下,行2的新值的计算可能比诸如前一步骤中对于简单标量函数的计算更复杂,因为在能够计算新的级联值之前,必须在'ucase(col1)'506a和'ucase(col2)'508a中找到相同的行ID。在这种情况下,DDQM 118的主存储器(RAM)120可以简单地决定把行ID2重新分配给特殊值'未知',指示质量规则的下次执行请求该列高速缓存,分配给'未知'值的所有行ID必须被重新计算。
包含质量规则的运算的列高速缓存的更新/无效沿着由数据规则的分解树给出的相关性路径,传播包含质量规则的运算的其它列高速缓存的其它更新/无效。在其中不可能发生相关列高速缓存的即时更新的一些情况下,只有修改的数据值被标记为'未知',而不是整个列高速缓存被标记为'未知'。列高速缓存可以保持这种部分未知的状态,直到所选质量规则的下次执行需要这些列高速缓存之一。在这种情况下,只有被标记为'未知'的行ID必须被重新计算,这与评估源数据集中的所有条目的值相比要快得多。
在聚合运算的情况下,一行的值的改变会导致重新计算包含该运算的整个列高速缓存,质量规则的下次执行需要所述列高速缓存的相关从属列高速缓存时,必须完全重新计算所述相关从属列高速缓存。注意,这在由于另一个规则变化而根本不再需要当前形式的列高速缓存的情况下,仍然节省了计算时间。
图8用粗体示出了包含由数据列的更新引起的质量规则的运算的列高速缓存的所有修改。包含不取决于修改的数据列的数据质量规则的各项的运算的列高速缓存保持不变。
用于更新数据列和列高速缓存的最小工作量策略的说明
为了对数据列和列高速缓存实现最小更新策略,在一个实施例中,可以使用以下实现考虑:如在前部分中所述,由于基本数据被改变而变得无效的高速缓存应当触发所有相关高速缓存也变得无效。然而,遵循相关性图并进行该高速缓存及其所有后续高速缓存的重新计算是代价非常高并且时间密集的。此外,所有高速缓存的'被动的'重新计算并不总是必需的,有时有可能更新该高速缓存。为了确定对高速缓存的更新是否可能或者是否需要完全的重新计算,必须区分运算类别。对于以下考虑,假定所有表达式被分解,使得只保留原子表达式。
例子:col1+col2+col3=→(col1+col2)+(col3)
运算类别及其范围的概述:
按照运算符类别处理的数据的范围,现在可以确定是否可以更新运算的高速缓存,或者把整个高速缓存标记成无效,并进行所有结果的重新计算。下表给出在基本数据集已变化的情况下,对高速缓存采取的更新策略的概述。
f=对于数据集/值进行的运算
v=传递给运算的值
RID=受运算影响的行的行Id
·向列中添加新值和相关的行ID:
○对标量运算来说,能够容易地更新高速缓存。在新计算的值已存在于高速缓存中的情况下,新值的行ID需要被加入到关于所述新值的标量运算的结果值中。如果结果值仍未存在于高速缓存中,那么必须添加所述结果值并使之链接到新的行ID。
○对多列标量运算来说,不能与标量运算一样容易地更新包含运算的结果的高速缓存,建议是把受影响的行ID标记为无效,并且在下次访问该高速缓存时,重新计算相应的值。
○对诸如联结之类的聚合和多列多值运算来说,不存在更新高速缓存的直接途径,因此退一步的解决方案是把整个高速缓存标记成无效,并且立即重新计算该高速缓存,或者在下次访问该高速缓存时计算它。
·把新的行ID加入列中的现有值中:
○同样对标量运算来说,通过把新的行ID链接到标量运算的结果值,能够容易地更新高速缓存。
○对多列标量运算来说,不能容易地更新高速缓存,因此相应的行ID应被标记为'无效'并在下次访问高速缓存时被更新。
○对聚合和多列多值运算来说,行为与添加新值一样:不存在更新高速缓存的直接途径,因此退一步的解决方案是把整个高速缓存标记成无效,并且立即重新计算该高速缓存,或者在下次访问该高速缓存时计算它。
·除去列中的现有值的行ID
○对标量运算来说,除去对原始值的标量运算的结果的行ID。如果结果值不再具有相关联的行ID,那么可从列高速缓存中除去该值。
○对多列标量运算来说,行为与标量运算相似,列高速缓存应被校正。
○对聚合和多列多值运算来说,整个高速缓存应被标记为无效,并且立即重新计算该高速缓存,或者在下次访问该高速缓存时计算它。
在本发明的一些实施例中,通过在系统资源允许的先决条件下,预见不属于当前执行的数据质量规则的列高速缓存在已计划的质量规则的执行中的需要,DDQM 118可在后台更新这些列高速缓存。
本说明书明确地描述了这里讨论的各种特征的一些组合。可以理解,对于研究本说明书的技术人员来说,各种其它组合是显而易见的。
虽然参考本发明的具体实施例说明了本发明,本领域的技术人员会理解,可以做出这些实施例中的变化,而不脱离本发明的原理和精神,本发明的范围由附加的权利要求书限定。
附图标记列表
Claims (15)
1.一种计算机实现的方法,通过相对于预定的数据质量度量测量加载的数据的数据质量来监控数据质量,其中,通过把在质量规则中定义的逻辑演算应用于加载的数据来测量数据质量,所述方法包括:利用加载的数据的增量变化和/或质量规则的增量变化来进行数据质量测量。
2.按照权利要求1所述的计算机实现的方法,其中,数据源(100)具有包含多个元素的数据集,所述方法包括:提取(102,104)、加载(110,112)和把所述数据集变换(202)成具有数据集的每个元素一个单独数据列(404,406,408,410,404a,406a)的列式格式(122)。
3.按照权利要求1或2所述的计算机实现的方法,其中,质量规则的增量变化包含至少一个数据质量规则的至少一项的至少一种改变,所述至少一个数据质量规则包含项的级联,通过把变化的项应用(204,306)于加载的数据或者只应用于加载的数据的增量变化来进行质量测量。
4.按照任意前述权利要求所述的计算机实现的方法,其中,响应初始数据加载(110),或者在单个数据列的至少一个元素改变的情况下,响应增量数据加载(306),进行质量规则的应用(204),所述方法进一步包括:沿着通过把质量规则分解成其各个项而获得并体现成树形结构因而被定义为分解树的相关性路径,创建多个列式数据对象(122),每个列式数据对象(122)高速缓存把质量规则的各个项应用(204,306)于各个数据列(404,406,408,410,404a,406a)的中间结果,并因此被定义为中间列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,510a,5l2a,516a,602a,606a,608a)。
5.按照权利要求4所述的计算机实现的方法,其中,
-每一个单独数据列的一个列高速缓存(404,406,408,410,404a,406a)被描述为叶节点,
-质量规则的每一个单独项的一个列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,5l0a,512a,516a,602a,606a,608a)被描述为枝节点,
-质量规则的各个项的每个子集的一个列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,5l0a,5l2a,5l6a,602a,606a,608a)被描述为枝节点,
-用于表示应用的数据质量规则的总体结果的一个列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,510a,5l2a,516a,602a,606a,608a)被描述为根节点。
6.按照权利要求4或5的计算机实现的方法,其中,数据列(404,406,408,410,404a,406a)的更新只传播到按照分解树与各个相关数据列具有相关性的中间列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,510a,512a,516a,602a,606a,608a)。
7.按照权利要求6的计算机实现的方法,其中,通过根据与相关性路径相关联的质量规则中的运算符的类型来应用更新策略,最小化中间列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,5l0a,5l2a,5l6a,602a,606a,608a)的更新。
8.按照权利要求7的计算机实现的方法,其中,与相关性路径相关联的质量规则至少包含以下之一:标量运算、多列标量运算、聚合运算、和多列多值运算。
9.按照权利要求4-8任意之一所述的计算机实现的方法,其中,更新策略包含下列中的至少一个:
-与被更新的各个数据列具有相关性的各个中间列高速缓存的直接更新,
-标记各个中间列高速缓存的受影响的行,之后重新计算所述受影响的行,
-各个中间列高速缓存的无效。
10.按照权利要求4-9任意之一所述的计算机实现的方法,其中,由所选质量规则的各个项的应用导致的中间列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,510a,512a,516a,602a,606a,608a)可以首先被压缩,然后在不使用时间阈值的预置确定之后被删除。
11.按照任意前述权利要求所述的计算机实现的方法,其中,利用质量规则的增量变化来进行数据质量测量包含以下步骤a)-d),以便通过步骤a),利用分解树结构来进行数据质量测量:
a)把所选质量规则分解成其单个项,并把它们投射到分解树上,分解树的每个节点对应于所选质量规则的一个单独项,其中所述方法进一步包括:
b)把每个单独数据列(404,406,408,410,404a,406a)应用于所述树,得到每个节点的包含所选运算的中间结果的一个中间列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,510a,5l2a,516a,602a,606a,608a),
c)如果发生加载的数据的增量变化(112),只有在加载的数据的增量变化影响节点的中间列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,510a,512a,516a,602a,606a,608a)的内容的情况下,才更新所述节点的中间列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,510a,512a,516a,602a,606a,608a),和/或
d)如果发生质量规则的增量变化,只有在质量规则的增量变量影响节点的中间列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,510a,512a,516a,602a,606a,608a)的内容的情况下,才更新具有改变的质量规则的树结构并更新所述节点的中间列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,510a,512a,516a,602a,606a,608a)。
12.按照任意前述权利要求所述的计算机实现的方法,其中,通过加载的数据的增量变化(112)来更新(304)各个数据列(404,406,408,410,404a,406a)的机制包含:
-在加载的数据的增量变化(112)包含向数据源(100)中的数据集中加入值的情况下,识别在列式变换之后受到影响的各个数据列(404,406,408,410,404a,406a),然后把所述值加入识别的各个数据列(404,406,408,410,404a,406a)中,
-在加载的数据的增量变化(112)包含从数据源(100)中的数据集中删除值的情况下,识别在列式变换之后受到影响的各个数据列(404,406,408,410,404a,406a),然后从识别的各个数据列(404,406,408,410,404a,406a)中删除所述值,
-在加载的数据的增量变化(112)包含更新数据源(100)中的数据集中的值的情况下,识别在列式变换之后受到影响的各个数据列(404,406,408,410,404a,406a),然后直接更新识别的各个数据列(404,406,408,410,404a,406a)中的值。
13.按照任意前述权利要求所述的计算机实现的方法,其中,通过利用变化数据捕获(CDC)机制(104,302)来识别加载的数据的增量变化(112)。
14.一种用于数据质量监控的计算机系统,包括被配置成执行按照权利要求1-13任意之一所述的方法中的步骤的装置。
15.一种用于数据质量监控的计算机系统,所述系统在操作上耦接到包含加载的数据、预定的数据质量度量和质量规则的数据库,其中,所述系统适合于相对于预定数据质量度量,测量加载的数据的数据质量(208、306),其中,所述系统适合于通过把在质量规则中定义的逻辑演算应用于加载的数据(204),以及利用加载的数据的增量变化(112)和/或质量规则的增量变化进行数据质量测量,来测量数据质量。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP11172421 | 2011-07-01 | ||
EP11172421.7 | 2011-07-01 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102855170A true CN102855170A (zh) | 2013-01-02 |
CN102855170B CN102855170B (zh) | 2016-04-13 |
Family
ID=47391636
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210225743.XA Active CN102855170B (zh) | 2011-07-01 | 2012-06-29 | 用于数据质量监控的系统和方法 |
Country Status (3)
Country | Link |
---|---|
US (3) | US9092468B2 (zh) |
CN (1) | CN102855170B (zh) |
DE (1) | DE102012210794A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103914616A (zh) * | 2014-03-18 | 2014-07-09 | 清华大学深圳研究生院 | 一种应急数据质量控制系统及方法 |
CN108369550A (zh) * | 2015-12-01 | 2018-08-03 | 微软技术许可有限责任公司 | 实时更改来自不同源的数据 |
CN112162980A (zh) * | 2020-11-26 | 2021-01-01 | 成都数联铭品科技有限公司 | 数据质量管控方法及系统、存储介质、电子设备 |
US11182394B2 (en) | 2017-10-30 | 2021-11-23 | Bank Of America Corporation | Performing database file management using statistics maintenance and column similarity |
Families Citing this family (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110313812A1 (en) * | 2010-06-18 | 2011-12-22 | HCL America Inc. | Accounting for data dependencies in process models, analysis, and management |
CA2788356C (en) * | 2011-08-31 | 2016-05-03 | Accenture Global Services Limited | Data quality analysis and management system |
AU2013200233A1 (en) * | 2012-01-16 | 2013-08-01 | Tata Consultancy Services Limited | Data quality analysis |
US9323748B2 (en) * | 2012-10-22 | 2016-04-26 | Ab Initio Technology Llc | Profiling data with location information |
US9110898B1 (en) * | 2012-12-20 | 2015-08-18 | Emc Corporation | Method and apparatus for automatically detecting replication performance degradation |
US9477661B1 (en) | 2012-12-20 | 2016-10-25 | Emc Corporation | Method and apparatus for predicting potential replication performance degradation |
US9558230B2 (en) | 2013-02-12 | 2017-01-31 | International Business Machines Corporation | Data quality assessment |
CN104142930B (zh) | 2013-05-06 | 2019-09-13 | Sap欧洲公司 | 通用δ数据装载 |
US10572456B2 (en) * | 2013-09-24 | 2020-02-25 | Here Global B.V. | Method, apparatus, and computer program product for data quality analysis |
US9715527B2 (en) * | 2013-11-18 | 2017-07-25 | Sap Se | Join optimization in a database |
US10262078B2 (en) * | 2014-02-10 | 2019-04-16 | Apple Inc. | Systems and methods for optimizing performance of graph operations |
US9258432B2 (en) | 2014-05-30 | 2016-02-09 | Gogo Llc | Dynamic time based products |
US10928970B2 (en) | 2014-07-18 | 2021-02-23 | Apple Inc. | User-interface for developing applications that apply machine learning |
US9852164B2 (en) | 2015-09-10 | 2017-12-26 | International Business Machines Corporation | Task handling in a multisystem environment |
US11456885B1 (en) | 2015-12-17 | 2022-09-27 | EMC IP Holding Company LLC | Data set valuation for service providers |
US10467204B2 (en) * | 2016-02-18 | 2019-11-05 | International Business Machines Corporation | Data sampling in a storage system |
US10528522B1 (en) | 2016-03-17 | 2020-01-07 | EMC IP Holding Company LLC | Metadata-based data valuation |
US10838946B1 (en) * | 2016-03-18 | 2020-11-17 | EMC IP Holding Company LLC | Data quality computation for use in data set valuation |
US10832186B2 (en) | 2016-03-21 | 2020-11-10 | International Business Machines Corporation | Task handling in a master data management system |
GB2549267B (en) * | 2016-04-08 | 2021-06-02 | Baker Hughes Energy Technology UK Ltd | Sealing arrangement |
US10838965B1 (en) | 2016-04-22 | 2020-11-17 | EMC IP Holding Company LLC | Data valuation at content ingest |
US10789224B1 (en) | 2016-04-22 | 2020-09-29 | EMC IP Holding Company LLC | Data value structures |
US10671483B1 (en) | 2016-04-22 | 2020-06-02 | EMC IP Holding Company LLC | Calculating data value via data protection analytics |
US10409834B2 (en) * | 2016-07-11 | 2019-09-10 | Al-Elm Information Security Co. | Methods and systems for multi-dynamic data retrieval and data disbursement |
US10210551B1 (en) | 2016-08-15 | 2019-02-19 | EMC IP Holding Company LLC | Calculating data relevance for valuation |
CN106407391B (zh) * | 2016-09-19 | 2020-01-07 | 北京集奥聚合科技有限公司 | 一种数据质量监控的方法及系统 |
US10719480B1 (en) | 2016-11-17 | 2020-07-21 | EMC IP Holding Company LLC | Embedded data valuation and metadata binding |
US11037208B1 (en) | 2016-12-16 | 2021-06-15 | EMC IP Holding Company LLC | Economic valuation of data assets |
US10147040B2 (en) | 2017-01-20 | 2018-12-04 | Alchemy IoT | Device data quality evaluator |
US10565173B2 (en) | 2017-02-10 | 2020-02-18 | Wipro Limited | Method and system for assessing quality of incremental heterogeneous data |
US11074267B2 (en) | 2017-03-20 | 2021-07-27 | Sap Se | Staged approach to automatic data discovery and performance |
US11068540B2 (en) | 2018-01-25 | 2021-07-20 | Ab Initio Technology Llc | Techniques for integrating validation results in data profiling and related systems and methods |
CN110147480A (zh) * | 2019-04-15 | 2019-08-20 | 腾讯科技(深圳)有限公司 | 一种数据拉取方法、设备及存储介质 |
US11580444B2 (en) | 2019-04-16 | 2023-02-14 | Apple Inc. | Data visualization machine learning model performance |
US11017874B2 (en) | 2019-05-03 | 2021-05-25 | International Business Machines Corporation | Data and memory reorganization |
US11157470B2 (en) | 2019-06-03 | 2021-10-26 | International Business Machines Corporation | Method and system for data quality delta analysis on a dataset |
US11263103B2 (en) * | 2020-07-31 | 2022-03-01 | International Business Machines Corporation | Efficient real-time data quality analysis |
US11204851B1 (en) | 2020-07-31 | 2021-12-21 | International Business Machines Corporation | Real-time data quality analysis |
US20220147509A1 (en) * | 2020-10-18 | 2022-05-12 | Trigyan Corporation Inc. | Methods and systems for data management, integration, and interoperability |
CN112667619B (zh) * | 2020-12-30 | 2023-10-10 | 平安证券股份有限公司 | 辅助检查数据的方法、装置、终端设备及存储介质 |
US11416247B1 (en) | 2021-02-09 | 2022-08-16 | International Business Machines Corporation | Healthcare application data management based on waste priority |
US11966381B2 (en) | 2021-11-09 | 2024-04-23 | Microsoft Technology Licensing, Llc | Event driven data health monitoring |
US12026134B2 (en) * | 2022-05-23 | 2024-07-02 | Microsoft Technology Licensing, Llc | Flow-based data quality monitoring |
US12026136B2 (en) * | 2022-11-14 | 2024-07-02 | Sap Se | Consolidating resource data from disparate data sources |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1991652A (zh) * | 2005-10-27 | 2007-07-04 | 通用电气公司 | 可编程逻辑控制器和中央单元之间通信的通信方法及自动远程监控和诊断系统 |
US20070239636A1 (en) * | 2006-03-15 | 2007-10-11 | Microsoft Corporation | Transform for outlier detection in extract, transfer, load environment |
US20080027958A1 (en) * | 2006-07-31 | 2008-01-31 | Microsoft Corporation | Data Cleansing for a Data Warehouse |
US20080195430A1 (en) * | 2007-02-12 | 2008-08-14 | Yahoo! Inc. | Data quality measurement for etl processes |
US7505868B1 (en) * | 2005-01-31 | 2009-03-17 | Hewlett-Packard Development Company, L.P. | Performing quality determination of data |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040138936A1 (en) * | 2003-01-09 | 2004-07-15 | Johnson Christopher D. | Performing what-if forecasts using a business information and decisioning control system |
US7596573B2 (en) * | 2003-06-11 | 2009-09-29 | Oracle International Corporation | System and method for automatic data mapping |
US20060224426A1 (en) | 2005-03-30 | 2006-10-05 | Oracle International Corporation | Transportation planning with system assisted exception resolution |
US20060238919A1 (en) * | 2005-04-20 | 2006-10-26 | The Boeing Company | Adaptive data cleaning |
US7412448B2 (en) * | 2006-05-17 | 2008-08-12 | International Business Machines Corporation | Performance degradation root cause prediction in a distributed computing system |
US20080172269A1 (en) * | 2006-10-30 | 2008-07-17 | Infosys Technologies Limited | Business intelligence framework |
US7630707B2 (en) * | 2006-11-27 | 2009-12-08 | Apple Inc. | Wireless communication out of range indication |
US7778773B2 (en) | 2007-05-02 | 2010-08-17 | Toshiba America Research, Inc. | Optimum route planning for service vehicles |
US8171001B2 (en) * | 2007-06-27 | 2012-05-01 | International Business Machines Corporation | Using a data mining algorithm to generate rules used to validate a selected region of a predicted column |
US8166000B2 (en) * | 2007-06-27 | 2012-04-24 | International Business Machines Corporation | Using a data mining algorithm to generate format rules used to validate data sets |
US20090125553A1 (en) * | 2007-11-14 | 2009-05-14 | Microsoft Corporation | Asynchronous processing and function shipping in ssis |
US8015454B1 (en) * | 2008-06-02 | 2011-09-06 | Quest Software, Inc. | Computer systems and methods for predictive performance management of data transactions |
US20100010979A1 (en) | 2008-07-11 | 2010-01-14 | International Business Machines Corporation | Reduced Volume Precision Data Quality Information Cleansing Feedback Process |
US8862386B2 (en) | 2009-04-15 | 2014-10-14 | The Boeing Company | System and method for journey planning, finding K shortest paths through a time/space network |
US9109895B2 (en) | 2009-04-30 | 2015-08-18 | The Boeing Company | Estimating probabilities of arrival times for voyages |
US8762333B2 (en) * | 2009-07-08 | 2014-06-24 | Pivotal Software, Inc. | Apparatus and method for read optimized bulk data storage |
EP2460313A1 (en) * | 2009-07-31 | 2012-06-06 | Telefonaktiebolaget L M Ericsson (PUBL) | Service monitoring and service problem diagnosing in communications network |
US8392359B2 (en) * | 2009-08-11 | 2013-03-05 | Business Objects Software Ltd. | Trend analysis based upon derived state tables |
US8660983B2 (en) * | 2009-12-04 | 2014-02-25 | Genpact | System and method for improving outcomes in enterprise level processes |
WO2011133904A1 (en) * | 2010-04-22 | 2011-10-27 | Accenture Global Services Limited | Performance analytics based on high performance indices |
US20120053954A1 (en) * | 2010-08-25 | 2012-03-01 | Mckesson Financial Holdings Limited | Quality metric monitoring |
US9037549B2 (en) * | 2010-12-08 | 2015-05-19 | Infosys Limited | System and method for testing data at a data warehouse |
US8700027B2 (en) * | 2011-02-11 | 2014-04-15 | Alcatel Lucent | Method and apparatus for network analysis |
US9057622B2 (en) | 2012-02-08 | 2015-06-16 | Here Global B.V. | Method and system for routing using uncertainty data |
US20140012498A1 (en) | 2012-03-19 | 2014-01-09 | Thomas F. Gustafson | Informed Traveler Program and Application |
-
2012
- 2012-06-26 DE DE102012210794A patent/DE102012210794A1/de active Pending
- 2012-06-29 US US13/537,406 patent/US9092468B2/en active Active
- 2012-06-29 CN CN201210225743.XA patent/CN102855170B/zh active Active
-
2014
- 2014-10-21 US US14/519,507 patent/US9465825B2/en not_active Expired - Fee Related
-
2016
- 2016-09-30 US US15/282,078 patent/US9760615B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7505868B1 (en) * | 2005-01-31 | 2009-03-17 | Hewlett-Packard Development Company, L.P. | Performing quality determination of data |
CN1991652A (zh) * | 2005-10-27 | 2007-07-04 | 通用电气公司 | 可编程逻辑控制器和中央单元之间通信的通信方法及自动远程监控和诊断系统 |
US20070239636A1 (en) * | 2006-03-15 | 2007-10-11 | Microsoft Corporation | Transform for outlier detection in extract, transfer, load environment |
US20080027958A1 (en) * | 2006-07-31 | 2008-01-31 | Microsoft Corporation | Data Cleansing for a Data Warehouse |
US20080195430A1 (en) * | 2007-02-12 | 2008-08-14 | Yahoo! Inc. | Data quality measurement for etl processes |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103914616A (zh) * | 2014-03-18 | 2014-07-09 | 清华大学深圳研究生院 | 一种应急数据质量控制系统及方法 |
CN103914616B (zh) * | 2014-03-18 | 2017-12-05 | 清华大学深圳研究生院 | 一种应急数据质量控制系统及方法 |
CN108369550A (zh) * | 2015-12-01 | 2018-08-03 | 微软技术许可有限责任公司 | 实时更改来自不同源的数据 |
CN108369550B (zh) * | 2015-12-01 | 2021-08-24 | 微软技术许可有限责任公司 | 实时更改来自不同源的数据 |
US11182394B2 (en) | 2017-10-30 | 2021-11-23 | Bank Of America Corporation | Performing database file management using statistics maintenance and column similarity |
CN112162980A (zh) * | 2020-11-26 | 2021-01-01 | 成都数联铭品科技有限公司 | 数据质量管控方法及系统、存储介质、电子设备 |
Also Published As
Publication number | Publication date |
---|---|
US20150058280A1 (en) | 2015-02-26 |
US9092468B2 (en) | 2015-07-28 |
DE102012210794A1 (de) | 2013-02-07 |
CN102855170B (zh) | 2016-04-13 |
US9465825B2 (en) | 2016-10-11 |
US20170017705A1 (en) | 2017-01-19 |
US9760615B2 (en) | 2017-09-12 |
US20130006931A1 (en) | 2013-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102855170A (zh) | 用于数据质量监控的系统和方法 | |
US10445657B2 (en) | General framework for cross-validation of machine learning algorithms using SQL on distributed systems | |
US9417859B2 (en) | Purity analysis using white list/black list analysis | |
US8347148B1 (en) | Computer systems and methods for predictive performance management of data transactions | |
US8930918B2 (en) | System and method for SQL performance assurance services | |
US10503408B2 (en) | Deployment of an upgrade to a storage system based on correlation analysis of measurements of the storage system | |
US10452625B2 (en) | Data lineage analysis | |
US20130074057A1 (en) | Selecting Functions for Memoization Analysis | |
US11321161B2 (en) | System for resolving heterogenous database-level application failures | |
US20130067445A1 (en) | Determination of Function Purity for Memoization | |
US10372711B2 (en) | System and method predicting effect of cache on query elapsed response time during application development stage | |
US20150309854A1 (en) | Building a failure-predictive model from message sequences | |
US20080255924A1 (en) | Computer-Implemented Forecast Accuracy Systems And Methods | |
GB2574282A (en) | Data consistency verification method and system minimizing load of original database | |
WO2019120093A1 (en) | Cardinality estimation in databases | |
US8984023B2 (en) | Monitoring stored procedure execution | |
Avritzer et al. | A multivariate characterization and detection of software performance antipatterns | |
Anderson et al. | On the use of usage patterns from telemetry data for test case prioritization | |
Yagoub et al. | Oracle's SQL Performance Analyzer. | |
US7870123B2 (en) | Database optimizer plan validation and characterizations | |
Basri et al. | An algorithmic-based change effort estimation model for software development | |
Tian et al. | A comparison of measurement and defect characteristics of new and legacy software systems | |
Pena et al. | Increasing failure rate software reliability models for agile projects: A comparative study | |
CN116975025A (zh) | 数据仓库的质量评估与治理方法、装置、设备及存储介质 | |
Hang et al. | Enhancing Online Index Tuning with a Learned Tuning Diagnostic |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |