CN102855170B - 用于数据质量监控的系统和方法 - Google Patents

用于数据质量监控的系统和方法 Download PDF

Info

Publication number
CN102855170B
CN102855170B CN201210225743.XA CN201210225743A CN102855170B CN 102855170 B CN102855170 B CN 102855170B CN 201210225743 A CN201210225743 A CN 201210225743A CN 102855170 B CN102855170 B CN 102855170B
Authority
CN
China
Prior art keywords
data
quality
speed cache
rule
row
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.)
Active
Application number
CN201210225743.XA
Other languages
English (en)
Other versions
CN102855170A (zh
Inventor
M·奥伯霍菲尔
J·塞弗特
Y·赛勒特
S·尼尔克
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN102855170A publication Critical patent/CN102855170A/zh
Application granted granted Critical
Publication of CN102855170B publication Critical patent/CN102855170B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/10Office automation; Time management
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Operations Research (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (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,masterdatamanagement)、数据仓储(DW,datawarehousing)、业务应用整合等的数据集成项目中,利用ETL(提取-转换-加载)过程中的数据剖析技术和/或数据清理方法来识别数据质量问题,使得在这些系统的初始加载阶段期间,只加载高质量的数据。然而,在数据质量问题正在变成企业的成本因素或者甚至完全中断业务过程的业务应用中,数据质量退化。在这些应用系统中,利用数据质量规则定期地测量数据质量是检测退化的速度或者数据质量随着时间的变化以及如果某些最低限度要求的数据质量关键性能指标(KPI)不再被满足而采取行动的动机的唯一途径。对于比如MDM的解决方案来说,除了MDM系统的部署之外,还建立数据支配(DG,datagovernance)程序以控制主数据的创建、维护和使用以及在其整个生命周期内的主数据质量。在数据支配组织中工作的数据专员定期应用数据剖析测量来控制与主数据的数据质量KPI一致。测量通常是利用语义规则(多种数据剖析技术之一)来进行的。定义数据质量KPI、语义规则、创建初始加载期间的第一基线测量、定期执行这些规则、以及对照基线结果进行比较的步骤被称为数据质量监控。
数据剖析和数据质量监控是I/O密集操作,并且非常费时。因此,对数据质量剖析和数据质量监控来说,可选的是把数据提取到中转区中,以避免由额外的I/O或者因为应用不允许不使用应用专用机制(例如SAP)而直接访问底层数据库而引起的应用性能退化。另一个原因是:如果应用和数据剖析工具所创建的SQL同时在应用数据库中运行,那么避免由SQL语句并发问题引起的应用的功能问题。
诸如DW或业务应用整合的项目中的初始完整数据提取通常需要整个周末,从而由于引起的I/O,在这样的提取期间导致应用的性能退化。对一些系统来说,可能能够定期地获得用于数据质量监控目的的跨周末的数据提取时段。对诸如持久运行的电子商务系统或者其它关键系统的应用来说,通常只能争取用于数据集成的一次性提取的时段。因此,不能进行数据质量监控,并且在业务过程中断或者出现其它严重业务问题之前,数据质量的退化一直未被检测到。
一方面,如果考虑目前已知的数据质量监控技术总是在进行进一步的测量的同时,处理在基线测量的范围内的所有数据,那么该问题会加剧。另一方面,数据量不断增长,并且两次测量之间的时间窗缩短。结果,当下一次测量大概已开始时,上一次测量可能还未完成,从而使一些情况下的数据质量监控甚至不再可行。
目前,数据质量监控领域中缺少的是只处理自最后一次测量以来变化的数据、只重新执行自最后一次测量以来变化的语义规则的各个部分或者它们的组合的能力。
US2010/0010979A1提供了用于简量精度数据质量信息清理反馈处理的方法和计算机程序产品。
US2008/0027958A1提供了一种能够在没有人类交互的情况下修改数据记录,响应于来自各种数据质量模块的分析而修改数据记录的数据清理工具。
发明内容
本发明提供一种如权利要求中要求保护的计算机实现的系统。本发明的实施例提供了一种系统和方法,通过对照基线结果比较当前分析结果,随时间利用预定的数据质量度量来检测和控制数据质量。为了优化运算技术,只对数据的增量变化、对质量规则的增量变化和/或对它们的组合进行数据剖析分析。通过在增量加载期间利用交叉参照表,提出的数据质量监控方法基于变化数据捕获(CDC,changedatacapture)机制(比如基于事务日志的机制或者基于触发的复制)。它使用列式存储技术,从而根据质量规则的运算的区别,允许借助数据质量规则的分解,最小化数据质量规则对数据的执行时间,以及借助高度压缩和传播策略,最小化额外的存储。本发明的实施例在测量数据质量KPI以及两次运行之间KPI的比较方面是有利的,从而提供了接近确定数据质量是提高还是降低的可能性。本发明的实施例具有最小化对应用系统性能的影响以及缩短进行数据质量监控的必需时间的优点。通过只对数据的增量变化、只对质量规则的增量变化和/或对它们的组合进行数据质量分析,本发明的系统和方法可克服本领域中目前存在的数据剖析/质量监控的问题。
附图说明
包含在说明书中并构成说明书的一部分的附图图解说明了本发明的几个实施例,并且与下面的说明一起,用于解释本发明的原理。参考附图详细说明本发明的实施例。
图1是示出按照本发明的例证解决方案架构的方框图。
图2是示出按照本发明的实施例的流程图,其中,初始数据集的第一负载被从数据源中提取,并在被变换成主存储器(RAM)中的列式格式之后,被加载到增量数据质量监控器(DDQM,deltadataqualitymonitor)中,以测量初始数据质量,从而生成数据质量度量的基线简档。
图3是示出按照本发明的实施例的流程图,其中,相对于先前的负载,测量被提取并被变换的增量变化的数据质量。
图4是示出按照本发明的实施例的示图,其中,从数据源中提取的数据被变换成主存储器(RAM)中的列式格式。
图5是示出按照本发明的实施例的示图,其中,质量规则被分解成它的各项,从而生成分解树。
图6是示出按照本发明的实施例的示图,其中,质量规则被分解成它的各项,并被应用于主存储器(RAM)中的数据列。
图7是示出按照本发明的实施例的示图,其中,质量规则已被改变,表示只有已受到规则的数据变化影响的列式数据对象需要主存储器(RAM)的更新或重新计算。
图8是示出按照本发明的实施例的示图,其中,在提取的数据的数据变化之后,列式数据对象的更新仅仅通过与单独的相关数据列具有相关性的中间列式数据对象传播。
具体实施方式
图1图解说明了数据质量监控的例证系统的方框图。如图所示,系统包括数据源100,在初始提取过程102中,数据集从数据源100被提取到中转区106中。在创建交叉参照表108之后,在初始加载过程110期间,变换后的数据集被加载到增量数据质量监控器(DDQM)118中的主存储器(RAM)120中的列式结构122中。存在两组列式结构:第一组保持数据(下面被称为数据列),第二组保持数据质量监控的中间结果(下面被称为列高速缓存)。用户利用客户端应用115连接到部署在应用服务器116上的数据剖析应用,以创建和维持由DDQM118执行的数据质量规则。必需的元数据被保存在元数据仓库114中。数据集的提取、转换和加载定义传送由DDQM118监控的数据的ETL过程,DDQM118传送与本发明一致的质量测量的中间结果。增量数据质量监控器118可视情况耦接到剖析集市124,在剖析集市124中,能够获得质量测量的带时间戳的中间结果,使得能够实现例如防备硬件故障的业务弹性,避免了重新运行所有规则以便再次在主存储器120中实例化列式结构122的需要。
在数据源100和中转区106之间工作的CDC机制识别借助增量加载过程112加载的增量变化。在增量加载过程112中,应用一组新的操作,以最小化对主存储器120中的包含数据列和列高速缓存的列式结构122的影响。通过利用部署在用户所使用的应用客户端115所调用的应用服务器116上的数据质量监控应用,能够可视化由用于DDQM118的计算机程序产品执行的增量质量监控的结果。在元数据仓库114中,还保存和版本管理应用服务器116能够在包含列式结构122的主存储器120上运行的质量规则,所述列式结构122包含数据列和列高速缓存。在完全执行质量规则之后,可以保存质量测量的结果用于剖析集市124中的以后数据趋势分析研究。
为了创建基本的关键数据质量度量,如图2中所示,通过从数据源中提取数据集来进行第一次加载(步骤200)。在第一ETL过程中,初始数据集被变换成数据列(步骤202),然后被放入主存储器(RAM)120中。质量规则的各项被应用于数据列(步骤204),从而产生可在数据剖析集市124中坚持的数据质量KPI的基线简档(步骤206),所述数据剖析集市124由部署在应用服务器116上的数据剖析应用触发。在第一次运行对初始数据集执行初始数据质量监控的数据规则之后,后续数据质量监控过程能够对照基线简档比较后续测量结果(步骤208)。
在后续增量加载中,如图3中所示,只从数据源100中提取数据集的增量变化(步骤300)。由变化数据捕获(CDC,changedatacapture)机制104来识别提取的数据的增量变化(步骤302)。通过更新数据列中的值、把值添加到数据列中和/或从数据列中删除值,根据数据集的增量变化来更新数据列(步骤304)。通过只把质量规则的各项应用于已被提取的数据的增量变化影响的数据列,从而比较实际结果与先前数据加载的质量,相对于初始获得的数据质量KPI的基线简档,获得数据的增量变化的数据质量测量结果(步骤306)。
后面的附图图解说明了按照本发明,关于变换成列式格式的加载数据评估质量规则的方法的实施例的例子。图4示出具有4列的数据集(步骤400),所述4列是在初始加载110中从数据源100中提取的。进行初始数据集的变换,以通过按照包含整个数据集的包含在每一列中的所有相异值的分类列表的格式来单独保存每一列,在DDQM118的主存储器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中修改了Col1404和Col2406的值。当增量变化被输入DDQM118的主存储器(RAM)120中时,Col1404和Col2406中的相异值被更新(图8中用粗体突出所述修改),从而生成更新的数据列Col1404a和Col2406a。就Col1404a来说,由于行2的新值不是新的相异值,因此变化仅仅是行ID2从值B到值C的重赋值。就Col2406a来说,行2的新值不存在于先前的数据列中。在这种情况下,必须创建新的相异值,并把行ID2赋值给它。
DDQM118保存数据列和包含质量规则的运算的列高速缓存之间的相依关系,从而保存关于作为对加载数据的修改的响应,哪些列高速缓存必须被更新或无效的信息。在诸如'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。在这种情况下,DDQM118的主存储器(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,那么可从列高速缓存中除去该值。
○对多列标量运算来说,行为与标量运算相似,列高速缓存应被校正。
○对聚合和多列多值运算来说,整个高速缓存应被标记为无效,并且立即重新计算该高速缓存,或者在下次访问该高速缓存时计算它。
在本发明的一些实施例中,通过在系统资源允许的先决条件下,预见不属于当前执行的数据质量规则的列高速缓存在已计划的质量规则的执行中的需要,DDQM118可在后台更新这些列高速缓存。
本说明书明确地描述了这里讨论的各种特征的一些组合。可以理解,对于研究本说明书的技术人员来说,各种其它组合是显而易见的。
虽然参考本发明的具体实施例说明了本发明,本领域的技术人员会理解,可以做出这些实施例中的变化,而不脱离本发明的原理和精神,本发明的范围由附加的权利要求书限定。
附图标记列表

Claims (22)

1.一种计算机实现的用于数据质量监控的方法,通过相对于预定的数据质量度量测量加载的数据的数据质量来监控数据质量,其中,通过把在质量规则中定义的逻辑演算应用于加载的数据来测量数据质量,所述方法包括:利用加载的数据的增量变化和/或质量规则的增量变化来进行数据质量测量;
其中,质量规则的增量变化包含至少一个数据质量规则的至少一项的至少一种改变,所述至少一个数据质量规则包含项的级联,通过把变化的项应用于加载的数据或者只应用于加载的数据的增量变化来进行质量测量;
其中,响应初始数据加载(110),或者在单个数据列的至少一个元素改变的情况下,响应增量数据加载,进行质量规则的应用,所述方法进一步包括:沿着通过把质量规则分解成其各个项而获得并体现成树形结构因而被定义为分解树的相关性路径,创建多个列式数据对象(122),每个列式数据对象(122)高速缓存把质量规则的各个项应用(204,306)于各个数据列(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)。
2.按照权利要求1所述的计算机实现的方法,其中,数据源(100)具有包含多个元素的数据集,所述方法包括:提取、加载和把所述数据集变换(202)成具有数据集的每个元素一个单独数据列(404,406,408,410,404a,406a)的列式格式。
3.按照权利要求1所述的计算机实现的方法,其中,
-每一个单独数据列的一个列高速缓存被描述为叶节点,
-质量规则的每一个单独项的一个列高速缓存(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)被描述为枝节点,
-用于表示应用的数据质量规则的总体结果的一个列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,510a,512a,516a,602a,606a,608a)被描述为根节点。
4.按照权利要求1的计算机实现的方法,其中,数据列(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)。
5.按照权利要求4的计算机实现的方法,其中,通过根据与相关性路径相关联的质量规则中的运算符的类型来应用更新策略,最小化中间列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,510a,512a,516a,602a,606a,608a)的更新。
6.按照权利要求5的计算机实现的方法,其中,与相关性路径相关联的质量规则至少包含以下之一:标量运算、多列标量运算、聚合运算、和多列多值运算。
7.按照权利要求1所述的计算机实现的方法,其中,更新策略包含下列中的至少一个:
-与被更新的各个数据列具有相关性的各个中间列高速缓存的直接更新,
-标记各个中间列高速缓存的受影响的行,之后重新计算所述受影响的行,
-各个中间列高速缓存的无效。
8.按照权利要求1所述的计算机实现的方法,其中,由所选质量规则的各个项的应用导致的中间列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,510a,512a,516a,602a,606a,608a)可以首先被压缩,然后在不使用时间阈值的预置确定之后被删除。
9.按照权利要求1所述的计算机实现的方法,其中,利用质量规则的增量变化来进行数据质量测量包含以下步骤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,512a,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)。
10.按照权利要求1所述的计算机实现的方法,其中,通过加载的数据的增量变化(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)中的值。
11.按照权利要求1所述的计算机实现的方法,其中,通过利用变化数据捕获机制(104,302)来识别加载的数据的增量变化(112)。
12.一种计算机实现的用于数据质量监控的设备,通过相对于预定的数据质量度量测量加载的数据的数据质量来监控数据质量,其中,通过把在质量规则中定义的逻辑演算应用于加载的数据来测量数据质量,所述设备包括:配置为利用加载的数据的增量变化和/或质量规则的增量变化来进行数据质量测量的模块;
其中,质量规则的增量变化包含至少一个数据质量规则的至少一项的至少一种改变,所述至少一个数据质量规则包含项的级联,通过把变化的项应用于加载的数据或者只应用于加载的数据的增量变化来进行质量测量;
其中,响应初始数据加载(110),或者在单个数据列的至少一个元素改变的情况下,响应增量数据加载,进行质量规则的应用,所述设备进一步包括:配置为沿着通过把质量规则分解成其各个项而获得并体现成树形结构因而被定义为分解树的相关性路径,创建多个列式数据对象(122),每个列式数据对象(122)高速缓存把质量规则的各个项应用(204,306)于各个数据列(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)的模块。
13.按照权利要求12所述的计算机实现的设备,其中,数据源(100)具有包含多个元素的数据集,所述设备包括:配置为提取、加载和把所述数据集变换(202)成具有数据集的每个元素一个单独数据列(404,406,408,410,404a,406a)的列式格式的模块。
14.按照权利要求12所述的计算机实现的设备,其中,
-每一个单独数据列的一个列高速缓存被描述为叶节点,
-质量规则的每一个单独项的一个列高速缓存(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)被描述为枝节点,
-用于表示应用的数据质量规则的总体结果的一个列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,510a,512a,516a,602a,606a,608a)被描述为根节点。
15.按照权利要求12的计算机实现的设备,其中,数据列(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)。
16.按照权利要求15的计算机实现的设备,其中,通过根据与相关性路径相关联的质量规则中的运算符的类型来应用更新策略,最小化中间列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,510a,512a,516a,602a,606a,608a)的更新。
17.按照权利要求16的计算机实现的设备,其中,与相关性路径相关联的质量规则至少包含以下之一:标量运算、多列标量运算、聚合运算、和多列多值运算。
18.按照权利要求12所述的计算机实现的设备,其中,更新策略包含下列中的至少一个:
-与被更新的各个数据列具有相关性的各个中间列高速缓存的直接更新,
-标记各个中间列高速缓存的受影响的行,之后重新计算所述受影响的行,
-各个中间列高速缓存的无效。
19.按照权利要求12所述的计算机实现的设备,其中,由所选质量规则的各个项的应用导致的中间列高速缓存(506,508,510,512,514,516,600,602,604,608,610,506a,508a,510a,512a,516a,602a,606a,608a)可以首先被压缩,然后在不使用时间阈值的预置确定之后被删除。
20.按照权利要求12所述的计算机实现的设备,其中,利用质量规则的增量变化来进行数据质量测量的模块包含以下模块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,512a,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)的模块。
21.按照权利要求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)中的值。
22.按照权利要求12所述的计算机实现的设备,其中,通过利用变化数据捕获机制(104,302)来识别加载的数据的增量变化(112)。
CN201210225743.XA 2011-07-01 2012-06-29 用于数据质量监控的系统和方法 Active CN102855170B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP11172421.7 2011-07-01
EP11172421 2011-07-01

Publications (2)

Publication Number Publication Date
CN102855170A CN102855170A (zh) 2013-01-02
CN102855170B true 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)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
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
AU2012216531B1 (en) * 2011-08-31 2013-03-21 Accenture Global Services Limited Data quality analysis and management system
US9152662B2 (en) * 2012-01-16 2015-10-06 Tata Consultancy Services Limited Data quality analysis
KR102129643B1 (ko) * 2012-10-22 2020-07-02 아브 이니티오 테크놀로지 엘엘시 소스 추적으로 데이터 프로파일링
US9477661B1 (en) 2012-12-20 2016-10-25 Emc Corporation Method and apparatus for predicting potential replication performance degradation
US9110898B1 (en) * 2012-12-20 2015-08-18 Emc Corporation Method and apparatus for automatically detecting 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
CN103914616B (zh) * 2014-03-18 2017-12-05 清华大学深圳研究生院 一种应急数据质量控制系统及方法
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
US10877988B2 (en) * 2015-12-01 2020-12-29 Microsoft Technology Licensing, Llc Real-time change data from disparate sources
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 Tech Uk Limited Sealing arrangement
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
US10838965B1 (en) 2016-04-22 2020-11-17 EMC IP Holding Company LLC Data valuation at content ingest
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
US11182394B2 (en) 2017-10-30 2021-11-23 Bank Of America Corporation Performing database file management using statistics maintenance and column similarity
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
US11204851B1 (en) 2020-07-31 2021-12-21 International Business Machines Corporation Real-time data quality analysis
US11263103B2 (en) * 2020-07-31 2022-03-01 International Business Machines Corporation Efficient 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
CN112162980A (zh) * 2020-11-26 2021-01-01 成都数联铭品科技有限公司 数据质量管控方法及系统、存储介质、电子设备
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 (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1991652A (zh) * 2005-10-27 2007-07-04 通用电气公司 可编程逻辑控制器和中央单元之间通信的通信方法及自动远程监控和诊断系统
US7505868B1 (en) * 2005-01-31 2009-03-17 Hewlett-Packard Development Company, L.P. Performing quality determination of data

Family Cites Families (28)

* Cited by examiner, † Cited by third party
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
US7565335B2 (en) * 2006-03-15 2009-07-21 Microsoft Corporation Transform for outlier detection in extract, transfer, load environment
US7412448B2 (en) * 2006-05-17 2008-08-12 International Business Machines Corporation Performance degradation root cause prediction in a distributed computing system
US20080027958A1 (en) 2006-07-31 2008-01-31 Microsoft Corporation Data Cleansing for a Data Warehouse
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
US20080195430A1 (en) * 2007-02-12 2008-08-14 Yahoo! Inc. Data quality measurement for etl processes
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
WO2011012173A1 (en) * 2009-07-31 2011-02-03 Telefonaktiebolaget Lm 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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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 通用电气公司 可编程逻辑控制器和中央单元之间通信的通信方法及自动远程监控和诊断系统

Also Published As

Publication number Publication date
US9760615B2 (en) 2017-09-12
US20170017705A1 (en) 2017-01-19
US9092468B2 (en) 2015-07-28
US9465825B2 (en) 2016-10-11
DE102012210794A1 (de) 2013-02-07
CN102855170A (zh) 2013-01-02
US20130006931A1 (en) 2013-01-03
US20150058280A1 (en) 2015-02-26

Similar Documents

Publication Publication Date Title
CN102855170B (zh) 用于数据质量监控的系统和方法
JP6636071B2 (ja) コンピュータ実装方法、コンピュータシステム及びコンピュータ装置
Sharma et al. Quantifying software performance, reliability and security: An architecture-based approach
US10503408B2 (en) Deployment of an upgrade to a storage system based on correlation analysis of measurements of the storage system
Behnamghader et al. A large-scale study of architectural evolution in open-source software systems
US10162697B2 (en) Building a failure-predictive model from message sequences
US20130067440A1 (en) System and method for sql performance assurance services
CN103164312B (zh) 一种准备接口测试数据的方法及系统
US20210152424A1 (en) Selecting and using a cloud-based hardware accelerator
US20080255924A1 (en) Computer-Implemented Forecast Accuracy Systems And Methods
US20160004757A1 (en) Data management method, data management device and storage medium
CA3013332C (en) Cloud-based platform instrumentation and monitoring system for maintenance of user-configured programs
AU2014271274A1 (en) System and method predicting effect of cache on query elapsed response time during application development stage
CN111512283B (zh) 数据库中的基数估算
US9990396B2 (en) Forecasting query access plan obsolescence
US11144357B2 (en) Selecting hardware accelerators based on score
CN106557420A (zh) 测试db数据生成方法及装置
Takhedmit et al. A parametric uncertainty analysis method for queues with vacations
JP7012093B2 (ja) 偶発的なハードウェア故障の確率的メトリック
Tian et al. A comparison of measurement and defect characteristics of new and legacy software systems
Giacometti et al. Reservoir pattern sampling in data streams
US10789166B2 (en) Computer system
CN117389908B (zh) 接口自动化测试用例的依赖关系分析方法、系统及介质
JP7091726B2 (ja) 情報処理装置,プログラム及び情報処理方法
Merinopoulou et al. An Accessible Comparison Of Traditional Statistical And Machine Learning Approaches To Analysis Of Real World Data: Which, When And Why?

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