CN114428882A - 测量图形数据库中的数据的数据质量 - Google Patents

测量图形数据库中的数据的数据质量 Download PDF

Info

Publication number
CN114428882A
CN114428882A CN202111266934.6A CN202111266934A CN114428882A CN 114428882 A CN114428882 A CN 114428882A CN 202111266934 A CN202111266934 A CN 202111266934A CN 114428882 A CN114428882 A CN 114428882A
Authority
CN
China
Prior art keywords
node
edge
graph
data quality
entity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111266934.6A
Other languages
English (en)
Inventor
Y·萨耶
C·A·范科尼
M·奥伯霍费尔
H·K·巴布
B·埃拉西尔蒂
M·W·格拉塞尔特
R·科恩
T·K·斯图尔特
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 CN114428882A publication Critical patent/CN114428882A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24147Distances to closest patterns, e.g. nearest neighbour classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/24765Rule-based classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

提供了执行以下操作的方法、计算机程序产品和/或系统:获得包括表示第一实体的第一节点和表示在第一实体之间的关系的第一边的第一图形,笫一节点与描述由第一节点表示的第一实体的第一实体属性相关联,第一边与描述由第一边表示的关系的第一边属性相关联;确定针对第一图形的第一节点中的特定节点的第一子图,第一子图包括特定节点和特定节点的至少一个相邻节点;以及至少部分地基于将数据质量规则集合中的一个或多个适用规则应用于第一子图的第一实体属性值和第一边属性值,来确定关于特定节点的数据质量问题。

Description

测量图形数据库中的数据的数据质量
技术领域
本发明大致涉及计算机系统领域,并且更具体地涉及图形数据库中的数据的数据质量。
背景技术
数据库系统例如可以使用具有节点、边和特性/属性的语义查询的图形结构来表示和存储数据。该图形将数据库中的数据项与节点和边的集合相关,其中,边表示在节点之间的关系。该关系可以允许数据存储中的数据被直接链接在一起,并且在许多情况下利用单个操作来检索。
发明内容
根据本公开的一个方面,提供了一种方法、计算机程序产品,和/或执行以下操作(不一定按以下顺序)的系统:获得包括表示第一实体的第一节点和表示在第一实体之间的关系的第一边的第一图形,第一节点与描述由第一节点表示的第一实体的第一实体属性相关联,第一边与描述由第一边表示的关系的第一边属性相关联;确定针对第一图形的第一节点中的特定节点的第一子图,第一子图包括特定节点和特定节点的至少一个相邻节点;以及至少部分地基于将数据质量规则集中的一个或多个适用规则应用于第一子图的第一实体属性值和第一边属性值,来确定关于特定节点的数据质量问题,其中,数据质量规则集表示在图形节点之间的边的类型与图形节点的属性之间的预期关系。
附图说明
在下文中,参考附图仅通过举例更详细地解释了本发明的实施例,在附图中:
图1A是根据本公开的实施例的计算系统的示图;
图1B是根据本公开的实施例的图形的简化结构的示图;
图2是根据本公开的实施例的用于处理图形的操作的流程图;
图3是根据本公开的实施例的用于确定数据质量规则的操作的流程图;
图4A是根据本公开的实施例的用于确定数据质量规则的操作的流程图;
图4B描绘了根据本公开的实施例的示例图形;
图5A是根据本公开的实施例的用于检测数据质量问题的操作的流程图;
图5B描绘了根据本公开的实施例的示例图形;以及
图6示出适于实现如在本公开的实施例中提供的一个或多个操作的示例计算系统。
具体实施方式
本发明的各种实施例的描述将出于说明的目的而呈现,但不旨在是详尽的或限于所公开的实施例。在不背离所描述的实施例的范围和精神的情况下,许多修改和/或变化对本领域的普通技术人员而言将是显而易见的。在此使用的术语被选择以最优地解释实施例的原理、实际应用或在市场上找到的技术上的技术改进,或使得本领域普通技术人员能够理解在此公开的实施例。
根据本发明的方面,可提供系统、方法和计算机程序产品以测量图形数据库中的数据的数据质量。特别地,本公开的系统、方法和计算机程序产品可以提供用于检测在图形中的节点之间的关系与这些节点的特性/属性中的不一致性(例如,数据质量问题),以及检测节点的字段(例如,属性、特性等)中的不一致性。例如,本公开的实施例可以提供用于从来自图形的数据中构建一组事务,并以表格形式表示该事务。实施例可进一步将已知的关联算法应用于表格数据(例如,事务集合)以识别表征图形的节点的特性/属性之间的关系以及它们与其它节点的关系的强模式,并使用该数据来生成关于关联关系的规则。实施例可将所识别的关联规则应用于图形的所有节点和关系以识别对这些规则的违反。与所识别的对关联规则的违反相关联的图形的节点和/或边可被标记为潜在的数据质量问题,然后可在适当时解决该数据质量问题。
图形是指特性图,其中数据值被存储为节点和边上的特性。特性图可被包括在图形数据库(GDB)中,并且可由图形数据库管理系统或可提供包装器层的其它数据库系统来管理和处理,该包装器层将特性图转换为例如用于存储的关系表并在读取或查询时将关系表转换回特性图。例如,此类图形可以是有向图形。该图形可以是节点(也称为顶点)和边的集合。图形的边连接图形的任何两个节点。例如,边可由有序节点对(v1,v2)表示,并且可从节点v1朝向节点v2遍历。
作为一个示例,图形的节点可以表示实体。实体可以指用户(例如,雇员等)、对象、公司、另一个体等。实体(和对应的节点)可以具有可以被指派值的某些一个或多个实体属性和/或特性。例如,人可以是实体。人的实体属性可以例如包括婚姻状况、年龄、性别、标识数据等。表示节点的属性值是由节点表示的实体的实体属性的值。可以向两个节点之间的边分配至少指示在连接至边的两个节点之间的关系的一个或多个边属性值。表示边的属性值是边属性的值。该关系可以例如包括继承关系(例如,父母和子女)和/或根据某个层次的关联关系。例如,节点v1与v2之间的继承关系可以被称为是v1与v2之间“is-arelationship”(例如,“v2is-aparentofv1”)。节点v1与v2之间的关联关系可以被称为v1与v2之间“has-arelationship”(例如,“v2has-a relationshipwith v1”),意味着v1是v2的一部分、是v2的组成或与v2相关联。
该图形可以表示一个或多个域的集合的实体和关系。域(也称为域本体)可以表示属于世界的一部分的概念和/或类别,诸如例如工业、生物学、政治等。域通常可以构建术语的域特定定义的模式。例如,域可以指医疗保健特定领域、广告特定领域、商业特定领域、医疗特定领域、生物医学特定领域等。一个或多个域的集合可以表示本体。例如,域的集合可包括家庭域和公司域,其中家庭域和公司域属于同一本体,该本体可以是例如雇员本体。
然而,与图形数据库相关联的处理图可能在技术上是有挑战性的,因为图形可能通常具有数千或数百万的节点和边,诸如例如存储数百万客户记录、合同等的数据以及与具有数十万雇员的公司相关的个人记录的图形。这在数据去重复、通过网络的数据通信和/或图形的任何其它处理的情况下可能特别具有挑战性。例如,主数据管理(MDM)系统可使用图形作为持久存储装置,该持久存储装置可识别重复记录并且如果适用可能需要解决此类重复记录问题。该过程通常可以是匹配过程,并且可以使用带有模糊运算符的确定性和/或概率性匹配技术,所述模糊运算符诸如语音(例如,Soundex、NYSIIS等)、编辑距离、昵称解析等。此外,与图形相关联的数据可具有数据质量问题/要点集合。数据质量问题/要点可以取决于由图形表示的域集合中的域。例如,数据质量问题集合可包括家庭域的数据质量问题的子集和另一域的数据质量问题的另一子集,等等。
本公开的各方面可提供:通过使用节点的上下文来识别与图形数据库中的一个或多个图形相关联的一些数据中的数据质量问题,并将数据质量问题的标识限制于每一个子图结构,来测量图形数据库中的数据质量。在一些实施例中,这可以允许以更高效的方式处理图形,因为其使用子图并且可以通过指示数据的质量来提供更可靠的数据。例如,可以通过考虑其相邻节点来确定关于图形(例如,子图等)的节点的数据质量问题。代替仅查找个体记录内部的不一致性,数据被组织在图形中(例如,在图形中节点包含属性并且具有到其它节点的某种类型(关系)的边或链接)的事实添加了附加维度,即当确定图形数据库中的数据的数据质量问题时,图形的节点之间的关系可能与节点本身的特性一样重要。因此,本公开的实施例可以提供检测在图形的节点之间的关系中的不一致性以及检测在图形内的节点的字段中的不一致性。
通常,当观察可能不出现在关系数据库中的图形数据库(GDB)时,可能识别出四个不同的质量问题。首先,一些属性可以推断关系(例如,节点之间的关系),反之亦然。因此,可关于属性对关系找到不一致性。例如,节点E1可指示单身(对于由节点E1表示的个体/实体)的婚姻状态属性。然而,节点E1与节点E2之间的边(例如,链路)可以指示“E1isSpouseOfE2”的边关系,表示由节点E1表示的实体与由节点E2表示的实体之间的配偶关系。这样,这将识别与节点E1或在节点E1与节点E2之间的边相关联的数据的不一致性或潜在的数据质量问题。
在三角形情况下,当与实体的关系可以推断出最初不相邻的两个其它实体之间的关系时,质量问题可能出现(例如,实际上不是如被推断的那样相关)。例如,如果节点E1和节点E2之间的边(例如,链路)指示“E1isParentOfE2”的边关系,并且节点E1和节点E3之间的边(例如,链路)指示“E1 isParentOf E3”的边关系,这可以推断节点E2与节点E3之间的关系“E2 isSiblingOf E3”和“E3 isSiblingOf E2”,这可能不正确。
当关系可推断出与同一实体的另一关系时,可出现另一数据质量问题。例如,节点E1与节点C1之间的边(例如,链路)可以指示“E1 isEmployed C1”(E1是C1雇佣的)的边关系,这可以推断可能不准确的关系“E1hasContract C1”(E1有C1的合同)。在发现两个关系之间的假双向映射时可能出现另一个数据质量问题,例如,“E1 isManager E2”(E1是E2的管理者)不能与“E2 isManager E1”(E2是E1的管理者)一致或推断“E2 isManager E1”(E2是E1的管理者)。
在一些实施例中,检测到的数据质量问题可以例如基于以下各项中的至少一项:第一子图的所述特定节点的至少一个边和所述特定节点的至少一个实体属性,以及第一子图的所述特定节点的至少一个边和所述特定节点的另一边。
在一些实施例中,第一子图中的特定节点与第一子图的任何其它第一节点之间的距离可小于或等于预定义的距离集合中的一个距离。以上术语“距离”是指图形中的两个节点之间的距离,该距离是连接两个节点的最短路径(也称为图形测地线)中的边的数量。
第一子图可以例如包括节点
Figure BDA0003325412980000061
其中i=0,...n1-1,其中,n1是第一子图中的节点的数量。对于第一子图的每一个第一节点,i具有不同值。第一边可以由
Figure BDA0003325412980000062
引用,其中,i和j是连接至第一边
Figure BDA0003325412980000063
的第一节点
Figure BDA0003325412980000064
Figure BDA0003325412980000065
的索引。例如,特定节点可以由
Figure BDA0003325412980000066
引用。特定节点
Figure BDA0003325412980000067
与第一子图的任何其它第一节点
Figure BDA0003325412980000068
之间的距离可以小于或等于所选的距离。所选的距离可以从预定义的距离集合中选择。在一些实施例中,选择可以例如是随机选择。在另一个示例中,该选择可作为迭代过程的一部分来执行。迭代过程可包括针对距离集合中的每一个距离的方法的重复。执行距离的选择,直到距离集合中的所有距离都被选择。在另一个示例中,可以通过提示用户并接收指示所选距离的用户输入来执行选择。
在一些实施例中,预定义的距离集合可以例如是用户定义的,其中用户可以定义他或她认为与检测第一图形中的数据质量问题相关的距离。例如,该距离集合可以是用于(预先)确定用于检测数据质量问题的数据质量规则的距离。
在一些实施例中,第一子图由特定节点
Figure BDA0003325412980000069
经由第一边
Figure BDA00033254129800000610
连接至该特定节点
Figure BDA00033254129800000611
的另一第一节点
Figure BDA00033254129800000612
以及与该特定节点
Figure BDA00033254129800000613
或该另一节点
Figure BDA00033254129800000614
相邻的至少一个第一节点
Figure BDA00033254129800000615
形成。例如,第一节点
Figure BDA00033254129800000616
可以经由第一边
Figure BDA00033254129800000617
链接至该特定节点
Figure BDA00033254129800000618
或者经由第一边
Figure BDA00033254129800000619
链接至第一节点
Figure BDA00033254129800000620
也就是说,第一子图包括至少三个第一节点
Figure BDA00033254129800000621
Figure BDA00033254129800000622
以及两个第一边
Figure BDA00033254129800000623
Figure BDA00033254129800000624
此类实施例可实现第一子图的紧凑结构,其允许有效地识别数据质量问题,而不必检查较大的子图。这可能特别有利,因为可以用许多本体域中的很少的节点来定义个体关系。例如,在家庭域中,节点的家庭上下文可由表示家庭成员的少数相邻节点来定义。
例如,在一些实施例中,第一图形可表示本体(诸如雇员本体)的实体和关系。本体可包括不同的域。例如,雇员本体可包括域的集合,诸如家庭域和公司域。第一子图可以例如被确定成使得它表示单个域(例如,家庭域、公司域等)。
在一些实施例中,数据质量问题的检测包括确定该特定节点的一个或多个第一实体属性值和/或该特定节点连接到的第一边的一个或多个第一边属性值具有数据质量问题。这可以例如通过将该特定节点
Figure BDA0003325412980000071
的第一实体属性的值与第一子图的其它节点
Figure BDA0003325412980000072
的第一实体属性的值以及与第一子图的边
Figure BDA0003325412980000073
的第一边属性的值进行比较来执行。在另一个示例中,在一些实施例中,可以使用表示在第一子图的节点之间的边的类型与这些节点的属性之间的预期关系的规则,和/或使用表示在第一子图的节点之间的边的类型与第一子图的节点之间的其它边之间的预期关系的规则,来执行数据质量问题的检测。可使用不同于第一图形的图形来确定或生成这些规则。
在一些实施例中,数据质量问题的检测可以进一步包括将特定节点和该特定节点连接到的第一边中的至少一个标记为具有数据质量问题。这可以实现第一图形的最优处理。例如,用户可以跳过或者考虑被标签或者标记为具有数据质量问题的节点或者边。
在一些实施例中,数据质量问题的检测可以进一步包括处理第二图形,该第二图形包括表示第二实体的第二节点和表示第二实体之间的关系的第二边。第二节点与描述由所述第二节点表示的第二实体的第二实体属性相关联。第二边与描述由所述第二边表示的关系的第二边属性相关联。第二图形的处理可包括对于第二图形的每一个第二边,形成一个或多个第二子图。第二子图中的每一个第二子图在第二边的第二节点与第二子图的任何其它第二节点之间具有小于或等于相应的预定义最大邻域等级的距离。最大邻域等级可以是高于或等于1的整数值。对于第二图形的每一个第二子图,最大相邻等级可相同或不同。第二子图的最大邻域等级定义距离集合,即,距离集合中的每一个距离等于已用于生成第二子图的最大相邻等级。检测数据质量问题可进一步包括:基于所形成的第二子图的第二实体属性的属性值与第二边属性的属性值之间的关系,来确定数据质量规则(例如,关联规则等);以及对第一图形应用数据质量规则(例如,关联规则等)以提供检测数据质量问题。
在一些实施例中,数据质量规则(例如,关联规则等)可从第二图形的子图生成。这可允许例如图形数据库中的数据质量的测量的自动执行,使得可减少或消除用户干预。在一些实施例中,所生成的数据质量规则(例如,关联规则等)可进一步被自动用于检测另一图形中(例如,第一图形中)的数据质量问题。作为示例,可针对第二子图中的每一个第二子图确定数据质量规则(例如,关联规则等)。第二子图的数据质量规则(例如,关联规则等)可由第二子图的边和实体属性的值的组合来表示。可以在预定义的数据结构(例如指示实体及其关系以及其特性/属性的元组)中提供数据质量规则(例如,关联规则等)。在一些实施例中,在处理第一子图时可使用相同数据结构类型,以在该数据结构中编码第一子图的值的组合。这可允许将作为规则提供的数据结构与从第一图形生成的数据结构进行比较。
例如,在一些实施例中,确定数据质量规则(例如,关联规则等)可以包括遍历第二图形并且计算对于第二图形的每一个边的事务。事务由边的源节点和目标节点的所有实体属性、边的类型以及将目标节点连接至目标节点的任何其它邻居节点的所有类型的边组成。在一些实施例中,可应用数据挖掘技术来检测规则中的强模式。在一些实施例中,可消除具有过低置信度或过低支持的此类检测到的规则。数据挖掘技术的应用可包括应用关联算法。
在一些实施例中,数据质量问题的检测可以进一步包括定义最大邻域等级,使得第二子图中的节点的数量小于最大节点数量。根据本公开的实施例,这可以提供可配置参数,该可配置参数可以用于有效地控制图形的处理。
在一些实施例中,数据质量规则的确定可包括针对第二子图中的每一个第二子图生成数据库条目。该数据库条目可以包括所述每一个第二子图的第二节点和第二边的实体属性值和边属性值。在一些实施例中,可以对数据库条目应用关联算法以检测关联规则。可基于关联规则的置信度(例如,具有高于定义水平的置信度)从检测到的关联规则中选择关联规则,使得数据质量规则可包括所选的关联规则。此类实施例可以提供用于产生质量规则的系统的和可控的方式。在一些实施例中,关联规则的选择可包括消除具有小于阈值的置信度的检测到的关联规则。
在一些实施例中,第一图形和第二图形可以表示相同的域本体。在一些实施例中,第一图形和第二图形可以是相同图形的不同子图。在一些实施例中,如上所述,第一图形和第二图形可以是相同的图形,其可以提供有效的测试环境和质量问题检测的验证。
在一些实施例中,数据质量问题的检测可以进一步包括处理第二图形,该第二图形包括表示第二实体的第二节点和表示第二实体之间的关系的第二边。第二节点与描述由所述第二节点表示的第二实体的第二实体属性相关联。第二边与描述由所述第二边表示的关系的第二边属性相关联。第二图形的处理可包括,对于第二图形的每一个第二边,形成具有与第一子图相同的结构的第二子图,基于在所形成的第二子图的第二实体属性的属性值与第二边属性的属性值之间的关系来确定数据质量规则,以及对第一图形应用数据质量规则以用于检测数据质量问题。
术语“第一”、“第二”等在此用作它们先于的名词的标记,并且不暗示任何类型的排序(例如,空间的、时间的、逻辑的等),除非如此明确定义。
图1A描绘了根据本公开的实施例的示例性计算系统100。计算系统100可以例如被配置成用于执行主数据管理和/或数据仓储,使得计算系统100可以实现去重复系统。计算系统100包括数据集成系统101和一个或多个客户端系统或数据源105。客户端系统105可以包括计算系统(例如,如参考图6所描述的)。数据集成系统101可控制对图形数据库系统103的访问(例如,读取和写入访问等)。
客户端系统105可经由网络连接与数据集成系统101通信,该网络连接可包括例如无线局域网(WLAN)连接、广域网(WAN)连接、局域网(LAN)连接、互联网和/或其组合。
客户端系统105可以被配置为接收和/或生成查询请求。例如,客户端系统105可以生成和/或接收与图形数据库系统103相关联的查询请求。查询请求可以例如请求重复节点的标识。客户端系统105可以向数据集成系统101发送和/或转发查询请求。数据集成系统101可被配置为使用图形数据库系统103获得数据,例如,以计算响应于查询请求将被发送回客户端系统105的图形数据库系统103的图形107的适当子集。
在另一个示例中,每一个客户端系统105可被配置为将数据记录发送至数据集成系统101以由图形数据库系统103存储。数据记录(例如,记录)可以是诸如姓名、出生日期、特定实体的类别等的相关数据项的集合。记录可以表示实体,其中实体是指这样的用户、对象或概念,关于该用户、对象或概念的信息被存储在记录中。术语“数据记录”和“记录”可互换地使用。图形数据库系统103可使用图形107以便将记录存储为具有关系的实体,其中,每一个记录可以被分配给图形107的节点或顶点,其特性是属性值,诸如姓名、出生日期等。数据集成系统101可使用图形数据库系统103存储从客户端系统105接收的记录,可检查图形107中的重复节点,和/或可检测图形107中的数据质量问题。例如,客户端系统105可以被配置成提供和/或创建可以具有或可以不具有与图形107相同的结构的数据记录。作为示例,客户端系统105可被配置成提供以下格式的记录:可扩展标记语言(XML)格式、Java脚本对象表示法(JSON)格式和/或可被提供用于关联属性和对应属性值的其它格式。
在一个示例中,数据集成系统101可以使用一个或多个提取转换加载(ETL)批处理、经由超文本传输协议(HTTP)通信和/或经由其它类型的数据交换从客户端系统105导入数据记录。数据集成系统101和/或客户端系统105可与例如个人计算机(PC)、服务器、移动计算设备等相关联。
数据集成系统101可被配置成使用一个或多个算法(诸如可实现本公开的至少部分操作的算法120)来处理图形107。例如,数据集成系统101可使用算法120来处理图形107的数据记录,以发现图形数据库内的数据质量问题。尽管被示出为单独的组件,但是在一些实施例中,图形数据库系统103可以被包括作为数据集成系统101的一部分。
图1B是根据示例域本体的图形107的简化结构的示图。示例本体涉及公司的雇员。图形107可包括表示该公司的雇员(例如,人员节点)的多个节点130。图形107还可包括表示与相应雇员相关的人的一个或多个节点130(例如,配偶节点、子女1节点、子女2节点等)和/或表示公司(例如,公司节点)的节点130。节点130中的每一个节点可以包括相应记录的实体属性的属性值。例如,表示雇员的节点130(例如,人员节点)可包括实体属性135(诸如状态、年龄、标识符数据等)的属性值。表示配偶的节点130(例如,配偶节点)可包括实体属性135(诸如状态、年龄、标识符数据等)的属性值。进一步,表示子女(例如,子女1、子女2等)的节点130还可以各自包括可以与每一个子女相关联的实体属性135(诸如状态、年龄、标识符数据等)的属性值。
节点130通过多个边131链接在一起。边131可以与边属性值137相关联,该边属性值137可以指示相应节点之间的关系。例如,链接节点人员和节点配偶的边131与边属性值“spouse-of”相关联,该边属性值指示由节点人员表示的个体是由节点配偶表示的个体的配偶。另外,链接节点人员和节点于女1的边131与边属性值“parent-of”相关联,该边属性值指示由节点人员表示的个体是由节点于女1表示的个体的父母。链接节点人员和节点子女2的边131与边属性值“parent-of”相关联,该边属性值指示由节点人员表示的个体是由节点子女2表示的个体的父母。链接节点子女1和节点子女2的边131与边属性值“sibling-of”相关联,该边属性值指示由节点子女1表示的个体是由节点子女2表示的个体的兄弟姐妹。链接节点子女2和节点子女1的边131与边属性值“sibling-of”相关联,该边属性值指示由节点子女2表示的个体是由节点子女1表示的个体的兄弟姐妹。通过遍历图形107,数据集成系统101可确定哪些相应节点与图形内的哪些其它节点相关。
该图形在本附图(例如,图1B、图4B、图5B)中表示如下。图形的节点(或顶点)在附图中由圆/椭圆表示,并且边由连接图形的两个相应节点的线表示。由节点表示的实体(诸如配偶、人员、子女1、子女2、公司等)可在示出节点的圆/椭圆内被标识。为了简化附图和描述,仅示出了具有它们相关联的实体和边属性的一部分的几个节点和边。然而,图形的每一个节点和每一个边可分别与一个或多个实体属性和一个或多个边属性相关联。
图2是根据本公开的示例实施例的用于处理第一图形GR1(例如,图形107等)以测量图形数据库中的数据的数据质量(例如,以检测任何潜在的数据质量问题)的操作200的流程图。出于解释的目的,图2中描述的操作可以在诸如图1中示出的计算系统中实现,然而实施例不限于此类实现方式。在一些实施例中,图2的操作可以例如由数据集成系统101执行。
操作在步骤201处开始,其中,计算系统(例如,计算系统100、计算系统600等)可以基于所选的特定节点
Figure BDA0003325412980000121
确定第一图形GR1的第一子图GR1sub。例如,可以从第一图形GR1(例如,图形107等)的第一节点中选择特定节点
Figure BDA0003325412980000122
在一些实施例中,作为示例,可以接收指示用以检查与特定节点相关的数据质量问题(例如,以确定图形中的数据的数据质量)的请求的输入。在一些实施例中,可以从图形中随机地选择特定节点。在一些实施例中,针对特定节点
Figure BDA00033254129800001210
的数据质量问题的检测可以是针对第一图形GR1(例如,图形107等)的每一个第一节点执行的检查过程(例如,数据质量的测量等)的一部分。
在一些实施例中,第一子图的结构可反映预定义或预定的参考结构。参考结构例如可以如参考图3描述的那样被确定。作为示例,第一子图包括特定节点
Figure BDA0003325412980000124
和特定节点
Figure BDA0003325412980000125
的至少一个邻居节点
Figure BDA0003325412980000126
也就是说,第一子图包括特定节点
Figure BDA0003325412980000127
至少一个相邻节点
Figure BDA0003325412980000128
和至少一个边
Figure BDA0003325412980000129
特定节点
Figure BDA0003325412980000131
可以具有第一实体属性
Figure BDA0003325412980000132
的集合。该至少一个相邻节点
Figure BDA0003325412980000133
中的每一个节点可以具有第一实体属性
Figure BDA0003325412980000134
的集合,其中,N0和Ni是实体属性的总数。该至少一条边
Figure BDA0003325412980000135
中的每一条边可以具有边属性
Figure BDA0003325412980000136
的集合。
操作继续进行到步骤203,在该步骤中,计算系统可以检测或以其它方式确定与第一图形GR1的特定节点
Figure BDA0003325412980000137
相关联的任何数据质量问题。可以基于第一图形GR1的第一子图GR1sub的第一实体属性值和第一边属性值来检测数据质量问题。在一些实施例中,数据质量问题可以例如如关于图5A所描述的那样被确定。例如,在一些实施例中,对数据质量问题的检测可以部分地通过确定属性的一个或多个组合(诸如comb1,comb2...combM)来执行。属性的组合中的每一个组合可以包括属性
Figure BDA0003325412980000138
的至少一部分、属性
Figure BDA0003325412980000139
的至少一部分、以及属性
Figure BDA00033254129800001310
的至少一部分的值。作为示例,组合comb1可以是三元组
Figure BDA00033254129800001311
Figure BDA00033254129800001312
组合comb2可以是
Figure BDA00033254129800001313
等等。
在一些实施例中,例如,有待测量的数据质量(例如,以确定数据质量问题等)的图形数据库中所包括的数据(例如,具有属性和与其它节点的关系的子图的节点)可以通过遍历该子图并且从该子图中所包括的数据中构建表格条目和/或事务的集合来处理,使得该数据可以用表格形式来表示,诸如例如关于图5A的步骤501所述。作为示例,条目/事务可以针对每一个边而被构建/计算,并且可由边连接的源节点和目标节点二者的所有属性值、边的边属性值(例如,关系的类型)以及将目标节点连接至目标节点的任何其它相邻节点的边的所有边属性值(例如,关系的类型)组成。
进一步,可以检查属性的组合中的每一个组合以确定该组合是否满足在属性的组合中应当表示的期望,诸如例如关于图5A的步骤503所述。为了促进此类确定,在一些实施例中,可以针对组合中的每一个组合来生成和/或以其它方式提供一个或多个参考(例如,数据质量规则、关联规则等)。作为示例,在一些实施例中,可应用关联算法来寻找表征图的节点的特性/属性与它们的关系之间的关系的强模式,以生成/提供一个或多个参考(例如,数据质量规则、关联规则等)。参考(例如,数据质量规则、关联规则等)可以表示在节点之间的边(例如,链路)的类型与这些节点的属性之间的预期关系。例如,可以为组合comb1提供两个参考(例如,数据质量规则、关联规则等)comb1ref1和comb1ref2,等等。可以将这些组合comb1,comb2...combM中的每一个与一个或多个相关联的参考(例如,数据质量规则、关联规则等)进行比较,以用于例如通过识别违反相关联的参考(例如,数据质量规则、关联规则等)的节点和/或边来确定/检测数据质量问题。
在这些组合comb1,comb2...combM中的任何一个组合不匹配对应的参考(例如,数据质量规则、关联规则等)中的任何一个组合的情况下,此类结果可以指示存在针对数据的数据质量问题。当组合违反(例如,不匹配等)对应的参考(例如,数据质量规则、关联规则等)时,违反参考(例如,数据质量规则、关联规则等)的节点和/或边可被提供(例如,标记等)有潜在数据质量问题的指示符。例如,comb1可以与参考comb1ref1和comb1ref2中的每一个参考(例如,关联规则等)进行比较。如果comb1等于(例如,匹配等)两个参考comb1ref1或comb1ref2之一,则没有数据质量问题。如果comb1不等于(例如,不匹配等)两个参考(例如,关联规则等)comb1ref1和comb1ref2中的任一个,则此类结果指示存在针对数据的潜在数据质量问题。相关联的节点和/或边可被标记为具有潜在数据质量问题。
作为示例,属性的组合comb1可以具有以下值(“单身”、“单身”、“配偶”),该值具有数据质量问题,因为两个单身个体也不能被视为同时结婚。参考组合comb1ref1和comb1ref2可以分别具有以下值:(“单身”、“单身”、“兄弟姐妹”)和(“已婚”、“已婚”、“配偶”)。组合comb1与comb1ref1和comb1ref2的比较将揭示存在数据质量问题,并且可以用潜在数据质量问题的指示符提供(例如,标记)与属性的组合comb1相关联的节点和/或边。
在一些实施例中,可在第一子图上应用数据质量规则以检测数据质量问题。数据质量规则可以如参考图3所描述的那样被获得。
图3是根据本公开的实施例的用于确定数据质量规则的操作300的流程图。
操作在步骤301处开始,其中计算系统(例如,计算系统100、计算系统600等)可以获得或以其它方式被提供有图形。为了描述的清晰,在步骤301中获得或提供的图形可以被称为第二图形GR2。第二图形GR2可以包括表示第二实体的第二节点
Figure BDA0003325412980000151
和表示两个节点
Figure BDA0003325412980000152
Figure BDA0003325412980000153
的第二实体之间的关系的第二边
Figure BDA0003325412980000154
第二节点
Figure BDA0003325412980000155
可以与描述由所述第二节点表示的第二实体的第二实体属性相关联。第二边
Figure BDA0003325412980000156
可以与描述由所述第二边表示的关系的第二边属性相关联。
操作前进到步骤303,其中计算系统可以针对第二图形GR2的每一个第二边
Figure BDA0003325412980000157
形成第二子图
Figure BDA0003325412980000158
在一些实施例中,第二子图
Figure BDA0003325412980000159
均至少一部分中的每一个第二子图可以具有与图2的第一子图GR1sub相同的结构。例如,在一些实施例中,第二子图
Figure BDA00033254129800001510
中的每一个第二子图可以具有与图2的第一子图GR1sub相同的结构。也就是说,在一些实施例中,子图
Figure BDA00033254129800001511
均结构可以被提供为用于图2中所描述的操作的参考结构。第二子图中的每一个第二子图
Figure BDA00033254129800001512
具有在第二边的第二节点与第二子图中的任何其它第二节点之间小于或等于预定义的最大邻域等级的距离。在一些实施例中,例如,第二子图
Figure BDA00033254129800001513
可以使用相同的最大邻域等级来提供。在一些实施例中,作为另一个示例,第二子图
Figure BDA00033254129800001514
的子集可以被提供有最大邻域等级d1,而第二子图
Figure BDA00033254129800001515
的另一个子集可以被提供有不同于d1的最大邻域等级d2。在一些实施例中,作为另一个示例,第二子图
Figure BDA00033254129800001516
中的每一个第二子图可以使用不同的最大邻域等级而被提供。用于确定第二子图的最大相邻等级定义第二子图的相应结构。那些结构可以如在图2中描述的操作中提供的那样,被提供为可以用于定义第一子图的参考结构。
操作前进到步骤305,其中计算系统可以基于在所形成的第二子图
Figure BDA00033254129800001517
的第二实体属性的属性值与第二边属性的属性值之间的关系来确定数据质量规则(例如,关联规则等)。例如,在一些实施例中,数据质量规则可以例如通过对第二子图的属性值应用关联规则挖掘/学习过程/算法来自动地生成。在一些实施例中,作为另一个示例,可提示用户基于第二子图提供数据质量规则。在此类实施例中,指示数据质量规则的用户输入可由计算系统获得。
图4A是根据本公开的实施例的用于生成数据质量规则的操作400的流程图。图4A的操作可参考图4B中所示的图形420来描述。
图形420包括四个节点
Figure BDA0003325412980000161
Figure BDA0003325412980000162
节点
Figure BDA0003325412980000163
Figure BDA0003325412980000164
中的每一个节点具有与该节点相关联的实体的实体属性ID和状态的值。例如,节点
Figure BDA0003325412980000165
表示作为具有ID=1和已婚状态的人员的实体。图形420进一步包括将节点
Figure BDA0003325412980000166
(例如,源节点)链接至节点
Figure BDA0003325412980000167
(例如,目标节点)的边
Figure BDA0003325412980000168
Figure BDA0003325412980000169
具有指示由节点
Figure BDA00033254129800001610
表示的实体是由节点
Figure BDA00033254129800001611
表示的实体的父母的边属性值“parent of”。图形420进一步包括将节点
Figure BDA00033254129800001612
链接至节点
Figure BDA00033254129800001613
的边
Figure BDA00033254129800001614
Figure BDA00033254129800001615
具有指示由节点
Figure BDA00033254129800001616
表示的实体是由节点
Figure BDA00033254129800001617
表示的实体的父母的边属性值“parent of”。图形420进一步包括将节点
Figure BDA00033254129800001618
链接至节点
Figure BDA00033254129800001619
均边
Figure BDA00033254129800001620
Figure BDA00033254129800001621
具有指示由节点
Figure BDA00033254129800001622
表示的实体是由节点
Figure BDA00033254129800001623
表示的实体的配偶的边属性值“spouse of”。图形420进一步包括将节点
Figure BDA00033254129800001624
链接至节点
Figure BDA00033254129800001625
的边
Figure BDA00033254129800001626
Figure BDA00033254129800001627
具有指示由节点
Figure BDA00033254129800001628
表示的实体是由节点
Figure BDA00033254129800001629
表示的实体的兄弟姐妹的边属性值“sibling of”。图形420进一步包括将节点
Figure BDA00033254129800001630
链接至节点
Figure BDA00033254129800001631
的边
Figure BDA00033254129800001632
Figure BDA00033254129800001633
具有指示由节点
Figure BDA00033254129800001634
表示的实体是由节点
Figure BDA00033254129800001635
表示的实体的兄弟姐妹的边属性值“sibling of”。
操作开始于步骤401,其中,计算系统(例如,计算系统100、计算系统600等)可以遍历图形(例如,图形420等)并且处理五个边
Figure BDA00033254129800001636
Figure BDA00033254129800001637
Figure BDA00033254129800001638
中的每一个边,以确定由边表示的关系的属性并且将它们构建成表条目或事务。在一些实施例中,例如,与边相关联的属性可包括连接至边的源节点和目标节点的所有属性值、边的边属性值,以及链接该目标节点的任何其它边的边属性值。作为示例,遍历图形和构建条目/事务的这些操作可以导致分别与边
Figure BDA00033254129800001639
Figure BDA00033254129800001640
相关联的以下五个条目/事务
Figure BDA00033254129800001641
Figure BDA00033254129800001642
Figure BDA0003325412980000171
Figure BDA0003325412980000172
Figure BDA0003325412980000173
Figure BDA0003325412980000174
Figure BDA0003325412980000175
以及
Figure BDA0003325412980000176
在该示例中,E1可以指源节点并且E2可以指边中的目标节点。
操作前进到步骤403,其中计算系统可以对表条目
Figure BDA0003325412980000177
Figure BDA0003325412980000178
应用预定义的或预定的关联算法,以用于至少部分地基于关系和特性/属性来确定关联规则。在一些实施例中,关联算法可以例如是先验算法。可以对事务/条目应用关联算法以确定具有足够置信度(例如,高于定义等级的置信度)的关联规则集合。关联规则可以表示在节点之间的边(例如,链路)的类型与这些节点的属性之间的预期关系。作为示例,所得关联规则集合可包括以下三个规则。规则1:E1.parentOf.E2并且E1.parentOf.E3=>E2.isSibling.E3。规则1可以从条目
Figure BDA0003325412980000179
Figure BDA00033254129800001710
推断出。规则2:E1.isSibling.E2=>E2.isSibling.E1。规则2可以从条目
Figure BDA00033254129800001711
Figure BDA00033254129800001712
推断出。规则3:E1.isSpouseOf.E2=>E1.状态;已结婚并且E2.状态:已婚。规则3从条目
Figure BDA00033254129800001713
推断出。关联规则中的每一个关联规则可以包括条件部分和结果部分。例如,在以上规则中,每一个关联规则的结果部分由符号“=>”指示/在其前面。
图5A是根据本公开的实施例的用于检测图形数据库中的数据的数据质量问题的操作500的流程图。图5A的操作可参考图5B中所示的图形520来描述。
图形520包括四个节点
Figure BDA00033254129800001714
Figure BDA00033254129800001715
节点
Figure BDA00033254129800001716
Figure BDA00033254129800001717
中的每一个节点包括与该节点相关联的实体的实体属性ID和状态的值。例如,节点
Figure BDA0003325412980000181
表示作为具有ID=1和单身状态的人员的实体。图形520进一步包括将节点
Figure BDA0003325412980000182
(例如,源节点)链接至节点
Figure BDA0003325412980000183
(例如,目标节点)的边
Figure BDA0003325412980000184
Figure BDA0003325412980000185
具有指示由节点
Figure BDA0003325412980000186
表示的实体是由节点
Figure BDA0003325412980000187
表示的实体的父母的边属性值“parent of”。图形520进一步包括将节点
Figure BDA0003325412980000188
链接至节点
Figure BDA0003325412980000189
的边
Figure BDA00033254129800001810
Figure BDA00033254129800001811
具有指示由节点
Figure BDA00033254129800001812
表示的实体是由节点
Figure BDA00033254129800001813
表示的实体的父母的边属性值“parent of”。图形520进一步包括将节点
Figure BDA00033254129800001814
链接至节点
Figure BDA00033254129800001815
的边
Figure BDA00033254129800001816
Figure BDA00033254129800001817
具有指示由节点
Figure BDA00033254129800001818
表示的实体是由节点
Figure BDA00033254129800001819
表示的实体的配偶的边属性值“spouse of”。图形520进一步包括将节点
Figure BDA00033254129800001820
链接至节点
Figure BDA00033254129800001821
均边
Figure BDA00033254129800001822
Figure BDA00033254129800001823
具有指示由节点
Figure BDA00033254129800001824
表示的实体是由节点
Figure BDA00033254129800001825
表示的实体的父母的边属性值“parent of”。
操作开始于步骤501,其中,计算系统(例如,计算系统100、计算系统600等)可以遍历图形(例如,图形520等)以处理每一个边,例如,四个边
Figure BDA00033254129800001826
Figure BDA00033254129800001827
以确定由每一个边表示的关系的特性并且将其构建成表条目/事务(例如,以与步骤401中所描述的类似的方式)。由每一个边表示的关系的特性可以包括连接至每一个边的源节点和目标节点的属性值、每一个边的边属性值,以及将目标节点链接至邻居节点的任何其它边的边属性值。作为示例,遍历图形和构建条目/事务的这些操作可以导致输出分别与边
Figure BDA00033254129800001828
Figure BDA00033254129800001829
相关联的以下相应的四个表条目/事务
Figure BDA00033254129800001830
Figure BDA00033254129800001831
Figure BDA00033254129800001832
Figure BDA00033254129800001833
Figure BDA00033254129800001834
以及
Figure BDA00033254129800001835
在该示例中,E1可指源节点且E2可指连接到边的目标节点。
操作前进到步骤503,其中计算系统可以对在步骤501中获得的四个表条目/事务
Figure BDA00033254129800001836
Figure BDA00033254129800001837
应用诸如以上在步骤403中定义的关联规则(例如,数据质量规则等)。作为示例,应用关联规则的操作可导致以下确定。条目/事务
Figure BDA0003325412980000191
违反规则1(E1.parentOfE2并且E1.parentOf.E3=>E2.isSibling.E3)。规则1是适用的,因为规则的条件部分(E1.parentOf.E2和E1.parentOf.E3)存在于条目/事务
Figure BDA0003325412980000192
中(例如,通过条目/事务
Figure BDA0003325412980000193
验证)。然而,规则的结果部分(E2.isSibling.E3)从条目/事务
Figure BDA0003325412980000194
中丢失(例如,未被条目/事务
Figure BDA0003325412980000195
验证),并且因此条目/事务
Figure BDA0003325412980000196
违反规则1。条目/事务
Figure BDA0003325412980000197
违反规则3(E1.isSouseOf.E2=>E1.状态:已婚并且E2.状态:已婚)。规则3是适用的,因为规则的条件部分(E1.isSouseOf.E2)存在于条目/事务
Figure BDA0003325412980000198
中(例如由条目/事务
Figure BDA0003325412980000199
验证)。然而,条目/事务
Figure BDA00033254129800001910
包括E1.状态:单身,并且因此,规则3的结果部分(E1.状态:已婚并且E2.状态:已婚)在条目/事务
Figure BDA00033254129800001911
中不匹配(例如,未被条目/事务
Figure BDA00033254129800001912
验证),所以条目/事务
Figure BDA00033254129800001913
违反规则3。这样,与条目/事务
Figure BDA00033254129800001914
和条目/事务
Figure BDA00033254129800001915
相关联的节点和/或链路中的一个或多个可被提供(例如,标记等)有潜在数据质量问题的指示符。
图6表示根据本公开的实施例的适用于实现在此描述的操作的至少一部分的一般计算系统600。
将了解,在此所述的操作和/或方法可以是至少部分非交互的,并且借助于计算机化系统(诸如服务器或嵌入式系统)而自动化。然而,在一些实施例中,在此描述的操作和/或方法可至少部分在交互式系统中实现。这些操作和/或方法可以进一步在软件(例如,软件612、BIOS622、固件等)、硬件(例如,处理器605等)或其组合中实现。在一些实施例中,在此所述的操作和/或方法可在软件中实现为可执行程序,该可执行程序可由专用或通用数字计算机(诸如个人计算机、工作站、小型计算机、大型计算机等)执行。如图6中所示,系统600因此包括通用计算机601。
在一些实施例中,就硬件架构而言,如图6中所示,计算机601包括处理器605、耦合至存储器控制器615的存储器(例如,主存储器等)610,以及经由本地输入/输出控制器635通信地耦合的一个或多个输入和/或输出(I/O)设备(或外围设备)10、645。如本领域已知的,输入/输出控制器635可以是但不限于一个或多个总线或其它有线或无线连接。输入/输出控制器635可具有附加元件,诸如控制器、缓冲器(高速缓冲存储器)、驱动器、中继器和接收器,以实现通信,为简单起见该附加元件被省略。此外,本地接口可以包括地址、控制和/或数据连接以实现前述组件之间的适当通信。如在此所述,I/O设备10、645通常可包括本领域已知的任何通用密码卡或智能卡。
处理器605是用于执行软件(特别是存储在存储器610中的软件)的硬件设备。处理器605可以是任何定制的或可商购的处理器、中央处理单元(CPU)、与计算机601相关联的若干处理器当中的辅助处理器、基于半导体的微处理器(例如,以微芯片或芯片组的形式)和/或通常用于执行软件指令的任何设备。
存储器610可包括易失性存储器元件(例如,随机存取存储器(RAM),诸如DRAM、SRAM、SDRAM等)和非易失性存储器元件(例如,只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)等)中的任何一个或组合。注意,存储器610可以具有分布式架构,其中不同组件位于彼此远程的地方,但是可以由处理器605访问。
存储器610中的软件612可包括一个或多个单独的程序,程序中的每一个程序包括用于实现逻辑功能(尤其是本公开的实施例中涉及的功能)的可执行指令的有序列表。在图6的示例中,存储器610中的软件612包括指令(例如,用于管理诸如数据库管理系统等的数据库的指令)。
存储器610中的软件通常还应包括合适的操作系统(OS)611。OS 611本质上控制其它计算机程序的执行,诸如用于实现如在此所述的操作的可能软件612。
在此所述的方法可以呈源程序、可执行程序(例如,目标代码)、脚本和/或包括待执行的指令集(例如,软件612等)的任何其它实体的形式。对于源程序,程序需要经由编译器、汇编器、解释器等(其可以被包括或可以不被包括在存储器610内)来翻译,以结合OS611正确地操作。此外,这些方法可以被编写为具有数据和方法的类的面向对象的编程语言,或者具有例程、子例程和/或函数的过程编程语言。
在示例实施例中,传统键盘650和鼠标655可以耦合到输入/输出控制器635。诸如I/O设备645的其它输出设备可以包括输入设备,例如但不限于打印机、扫描仪、麦克风等。最后,I/O设备10、645可以进一步包括传送输入和输出两者的设备,例如但不限于网络接口卡(NIC)或调制器/解调器(用于访问其它文件、设备、系统或网络)、射频(RF)或其它收发器、电话接口、桥接器、路由器等。I/O设备10、645可以是本领域中已知的任何通用密码卡或智能卡。系统600可进一步包括耦合到显示器630的显示控制器625。在一些实施例中,系统600可进一步包括用于耦合到网络665的网络接口。网络665可以是用于经由宽带连接在计算机601与任何外部服务器、客户端等之间的通信的基于IP的网络。网络665在计算机601与外部系统30之间发送和接收数据,该数据可被涉及以执行在此所讨论的方法的部分或全部步骤。在示例性实施例中,网络665可以是由服务提供商监管的受管理IP网络。网络665可以例如使用无线协议和技术(诸如Wi-Fi、WiMAX等)以无线方式实现。网络665还可以是分组交换网络,诸如局域网、广域网、城域网、互联网和/或其它类似类型的网络环境。网络665可为固定无线网络、无线局域网W(LAN)、无线广域网(WWAN)、个域网(PAN)、虚拟专用网(VPN)、内联网和/或其它合适网络系统,并且包括用于接收和发送信号的设备。
如果计算机601是PC、工作站、智能设备等,则存储器610中的软件可以进一步包括基本输入输出系统(BIOS)622。BIOS是在启动时初始化和测试硬件、启动OS 611并且支持硬件设备之间的数据传送的基本软件例程的集合。BIOS被存储在ROM中,使得当计算机601被激活时可以执行BIOS。
当计算机601在操作中时,处理器605被配置为执行存储在存储器610内的软件612,传送往来存储器610的数据,并且通常根据软件来控制计算机601的操作。在此描述的方法和OS611整体或部分地(但典型地是后者)被处理器605读取,可能被缓存在处理器605内并且然后被执行。
当在软件612中实现在此描述的系统和方法时,如图6中所示,该方法可被存储在任何计算机可读介质(诸如存储装置620)上,以供任何计算机相关系统或方法使用或结合任何计算机相关系统或方法使用。存储器620可包括磁盘存储装置,诸如硬盘驱动器(HDD)存储装置。
本发明可以是任何可能的集成技术细节水平的系统、方法和/或计算机程序产品。计算机程序产品可包括上面具有计算机可读程序指令的计算机可读存储介质(或媒体),所述计算机可读程序指令用于使处理器执行本发明的方面。
计算机可读存储介质可以是可以保留和存储指令以供指令执行设备使用的有形设备。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述的任何合适的组合。计算机可读存储介质的更具体示例的非穷举列表包括以下:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式致密盘只读存储器(CD-ROM)、数字通用盘(DVD)、记忆棒、软盘、机械编码设备(诸如穿孔卡片,或具有记录在其上的指令的凹槽中的凸起结构),以及上述的任何合适的组合。如在此所使用的计算机可读存储介质不应被解释为瞬态信号本身,诸如无线电波或其它自由传播的电磁波、通过波导或其它传输介质传播的电磁波(例如,通过光纤电缆传递的光脉冲),或通过导线传输的电信号。
在此所述的计算机可读程序指令可从计算机可读存储介质下载到相应的计算/处理设备,或经由网络(例如,互联网、局域网、广域网和/或无线网络)下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每一个计算/处理设备中的网络适配器卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、用于集成电路的配置数据,或以一种或多种编程语言的任何组合编写的源代码或对象代码,包括诸如Smalltalk、C++等的面向对象的编程语言,以及过程式编程语言,诸如“C”编程语言或类似的编程语言。计算机可读程序指令可完全在用户的计算机上执行、部分地在用户的计算机上执行、作为独立软件包执行、部分地在用户的计算机上并且部分地在远程计算机上执行,或者完全在远程计算机或服务器上执行。在后一种场景中,远程计算机可以通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接到用户的计算机,或者可以连接到外部计算机(例如,通过使用互联网服务提供商的互联网)。在一些实施例中,电子电路(包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA))可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路个性化,以便执行本发明的方面。
在此参考根据本发明的实施例的方法、装置(系统)和计算机程序产品的流程图说明和/或框图来描述本发明的方面。应当理解,流程图说明和/或框图的每一个框以及流程图说明和/或框图中框的组合,都可以由计算机可读程序指令来实现。
这些计算机可读程序指令可以被提供给计算机的处理器或其它可编程数据处理装置以产生机器,使得经由计算机或其它可编程数据处理装置的处理器执行的指令创建用于实现在流程图和/或一个或多个框图框中指定的功能/动作的部件。这些计算机可读程序指令还可存储在计算机可读存储介质中,该计算机可读存储介质可引导计算机、可编程数据处理装置,和/或其它设备以特定方式起作用,使得具有存储在其中的指令的计算机可读存储介质包括制品,该制品包括实现流程图和/或一个或多个框图框中指定的功能/动作的各方面的指令。
计算机可读程序指令还可以加载到计算机、其它可编程数据处理装置、或其他设备上,以使得在计算机、其它可编程装置或其它设备上执行一系列操作步骤,使得在计算机、其它可编程装置或其它设备上执行的指令实现流程图和/或一个或多个框图框中指定的功能/动作。
附图中的流程图和框图示出根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。对此,流程图或框图中的每一个框可表示模块、段或指令的一部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些替代实施例中,框中所标注的功能可以不以图中所标注的次序发生。例如,取决于所涉及的功能,连续示出的两个框实际上可以作为一个步骤完成、同时执行、基本上同时地、以部分或全部时间上重叠的方式执行,或者该框有时可以以相反的顺序执行。还将注意的是,框图和/或流程图说明中的每一个框,以及框图和/或流程图说明中的框的组合可以由基于专用硬件的系统来实现,该基于专用硬件的系统执行指定的功能或动作或执行专用硬件与计算机指令的组合。
定义
本发明:不应被视为对于以下内容的绝对指示:由术语“本发明”所描述的主题由所提交的权利要求书、或由在专利审查之后可能最终发布的权利要求书覆盖;虽然术语“本发明”用于帮助读者对本文中被认为可能是新的公开内容具有总体感觉,但是如通过使用术语“本发明”所指示的这种理解是暂时的和临时的,并且经受在发展相关信息并且潜在地修改权利要求书时在专利审查过程中的改变。
实施例:参见以上“本发明”的定义一一类似的注意事项适用于术语“实施例”。
和/或:包含性或;例如,A、B“和/或”C是指A或B或C中的至少一个是真实的和适用的。
包括/包含/具有:除非另外明确指出,否则是指“包括但不必限于”。
数据通信:现在已知或未来待开发的任何类型的数据通信方案,包括无线通信、有线通信以及具有无线和有线部分的通信路径;数据通信不一定限于:(i)直接数据通信;(ii)间接数据通信;和/或(iii)数据通信,其中格式、分组状态、介质、加密状态和/或协议在数据通信的整个过程中保持恒定。
接收/提供/发送/输入/输出/报告:除非另外明确规定,否则这些词语不应被视为暗示:(i)关于它们的对象与主体之间的关系的任何特定直接程度;和/或(ii)不存在插入在其对象和主体之间的中间组件、动作和/或事物。
模块/子模块:可操作地工作以进行一些功能的任何硬件、固件和/或软件集,而不考虑该模块是否:(i)在单个局部邻近范围中;(ii)分布在宽广区域上;(iii)在较大软件代码段内的单个邻近范围中;(iv)位于单件软件代码内;(v)位于单个存储设备、存储器或介质中;(vi)机械连接;(vii)电连接;和/或(viii)数据通信地连接。
计算机:具有显著数据处理和/或机器可读指令读取能力的任何设备,包括但不限于:台式计算机、大型计算机、膝上型计算机、基于现场可编程门阵列(FPGA)的设备、智能电话、个人数字助理(PDA)、身佩式或插入式计算机、嵌入式设备式计算机、基于专用集成电路(ASIC)的设备。

Claims (21)

1.一种计算机实现的方法,包括:
获得包括表示第一实体的第一节点和表示在第一实体之间的关系的第一边的第一图形,所述第一节点与描述由所述第一节点表示的所述第一实体的第一实体属性相关联,所述第一边与描述由所述第一边表示的所述关系的第一边属性相关联;
确定针对所述第一图形的所述第一节点中的特定节点的第一子图,所述第一子图包括所述特定节点和所述特定节点的至少一个相邻节点;以及
至少部分地基于将数据质量规则集合中的一个或多个适用规则应用于所述笫一子图的第一实体属性值和笫一边属性值,来确定关于所述特定节点的数据质量问题,其中,所述数据质量规则集合表示在图形节点之间的边的类型与所述图形节点的属性之间的预期关系。
2.根据权利要求1所述的计算机实现的方法,进一步包括确定所述数据质量问题与以下各项中的一项或多项相关联:
所述特定节点的一个或多个第一实体属性值;以及
所述特定节点所连接到的第一边的一个或多个第一边属性值。
3.根据权利要求1所述的计算机实现方法,进一步包括:提供所述数据质量问题与所述特定节点和所述特定节点所连接到的第一边中的至少一个相关联的指示。
4.根据权利要求1所述的计算机实现的方法,其中,所述第一子图中在所述特定节点与所述第一子图的任何其它第一节点之间的距离小于或等于预定义的距离集合中的一个距离。
5.根据权利要求1所述的计算机实现方法,其中,所述第一子图由所述特定节点、经由第一边连接至所述特定节点的另一个第一节点以及与所述特定节点相邻或者与连接至所述特定节点的所述另一个第一节点相邻的至少一个第一节点形成。
6.根据权利要求4所述的计算机实现的方法,进一步包括:
获得包括表示笫二实体的第二节点和表示在第二实体之间的关系的第二边的第二图形,所述第二节点与描述由所述第二节点表示的所述第二实体的第二实体属性相关联,所述第二边与描述由所述第二边表示的所述关系的第二边属性相关联;
针对所述第二图形的每一个第二边生成一个或多个第二子图,所述第二子图的每一个第二子图具有在所述第二边的第二节点与所述第二子图的任何其它第二节点之间的小于或等于预定义最大邻域等级的距离,所述第二子图的所述最大邻域等级定义所述距离集合;
至少部分地基于在所生成的第二子图的笫二实体属性的属性值与第二边属性的属性值之间的关系,来确定所述数据质量规则集合;以及
提供所述数据质量规则集合以用于检测所述数据质量问题。
7.根据权利要求6所述的计算机实现方法,进一步包括:定义所述最大邻域等级,使得所述第二子图中的节点的数量小于最大节点数量。
8.根据权利要求6所述的计算机实现方法,其中,所述确定所述数据质量规则集合进一步包括:
针对所述第二子图中的每一个第二子图生成数据库条目,所述数据库条目包括每一个相应的第二子图的第二节点和笫二边的实体属性值和边属性值;
对所述数据库条目应用关联算法以检测关联规则;以及
至少部分地基于与每一个检测到的关联规则相关联的置信度来从检测到的关联规则中选择关联规则,其中,所述数据质量规则包括所选择的关联规则。
9.根据权利要求8所述的计算机实现的方法,其中,所述选择关联规则进一步包括消除具有小于阈值的置信度的检测到的关联规则。
10.根据权利要求6所述的计算机实现方法,其中,所述第一图形和所述第二图形表示相同的域本体。
11.根据权利要求6所述的计算机实现的方法,所述笫一图形和所述第二图形是相同的图形的子图。
12.根据权利要求6所述的计算机实现方法,其中,所述第一图形和所述第二图形是相同的图形。
13.根据权利要求1所述的计算机实现的方法,进一步包括:
获得第二图形,所述第二图形包括表示第二实体的第二节点和表示在第二实体之间的关系的第二边,所述第二节点与描述由所述第二节点表示的所述第二实体的笫二实体属性相关联,所述第二边与描述由所述第二边表示的所述关系的第二边属性相关联;
生成针对所述第二图形的每一个笫二边的笫二子图,所述笫二子图具有与所述第一子图相同的结构;
至少部分地基于在所生成的第二子图的第二实体属性的属性值与笫二边属性的属性值之间的关系来确定所述数据质量规则集合;以及
提供所述数据质量规则集合以用于检测所述数据质量问题。
14.一种计算机程序产品,包括计算机可读存储介质,所述计算机可读存储介质在其上存储有:
被编程为获得包括表示第一实体的第一节点和表示在第一实体之间的关系的第一边的第一图形的程序指令,所述第一节点与描述由所述第一节点表示的所述第一实体的第一实体属性相关联,所述笫一边与描述由所述第一边表示的所述关系的第一边属性相关联;
被编程为确定针对所述第一图形的所述第一节点中的特定节点的第一图形的程序指令,所述第一子图包括所述特定节点和所述特定节点的至少一个相邻节点;以及
被编程为至少部分地基于将数据质量规则集合中的一个或多个适用规则应用于所述第一子图的第一实体属性值和第一边属性值来确定关于所述特定节点的数据质量问题的程序指令,其中,所述数据质量规则集合表示在图形节点之间的边的类型与所述图形节点的属性之间的预期关系。
15.根据权利要求14所述的计算机程序产品,所述计算机可读存储介质进一步在其上存储有:
被编程为提供所述数据质量问题与所述特定节点和所述特定节点所连接到的第一边中的至少一个相关联的指示的程序指令。
16.根据权利要求14所述的计算机程序产品,其中,所述第一子图由所述特定节点、经由第一边连接至所述特定节点的另一个第一节点以及与所述特定节点相邻或者与连接至所述特定节点的所述另一个第一节点相邻的至少一个第一节点形成。
17.根据权利要求14所述的计算机程序产品,所述计算机可读存储介质进一步在其上存储有:
被编程为获得包括表示第二实体的第二节点和表示在第二实体之间的关系的第二边的第二图形的程序指令,所述第二节点与描述由所述笫二节点表示的所述第二实体的笫二实体属性相关联,所述第二边与描述由所述第二边表示的所述关系的第二边属性相关联;
被编程为针对所述第二图形的每一个第二边生成一个或多个笫二子图的程序指令,所述第二子图的每一个第二子图具有在所述第二边的第二节点与所述第二子图的任何其它第二节点之间的小于或等于预定义最大邻域等级的距离,所述第二子图的所述最大邻域等级定义所述距离集合;
被编程为至少部分地基于在所生成的第二子图的笫二实体属性的属性值与第二边属性的属性值之间的关系来确定所述数据质量规则集合的程序指令;以及
被编程为提供所述数据质量规则集合以用于检测所述数据质量问题的程序指令。
18.根据权利要求17所述的计算机程序产品,其中,所述数据质量规则集合的所述确定进一步包括所述计算机可读存储介质,所述计算机可读存储介质进一步在其上存储有:
被编程为针对所述第二子图中的每一个第二子图生成数据库条目的程序指令,所述数据库条目包括每一个相应的笫二子图的第二节点和第二边的实体属性值和边属性值;
被编程为对所述数据库条目应用关联算法以检测关联规则的程序指令;以及
被编程为至少部分地基于与每一个检测到的关联规则相关联的置信度来从检测到的关联规则中选择关联规则的程序指令,其中,所述数据质量规则包括所选择的关联规则。
19.一种计算机系统,包括:
处理器组;以及
计算机可读存储介质;
其中:
所述处理器组被构造、定位、连接和编程为运行存储在所述计算机可读存储介质上的程序指令;并且
所述存储的程序指令包括:
被编程为获得包括表示第一实体的第一节点和表示在笫一实体之间的关系的第一边的第一图形的程序指令,所述第一节点与描述由所述第一节点表示的所述第一实体的第一实体属性相关联,所述第一边与描述由所述第一边表示的所述关系的第一边属性相关联;
被编程为确定针对所述第一图形的所述笫一节点中的特定节点的笫一图形的程序指令,所述第一子图包括所述特定节点和所述特定节点的至少一个相邻节点;以及
被编程为至少部分地基于将数据质量规则集合中的一个或多个适用规则应用于所述第一子图的第一实体属性值和第一边属性值来确定关于所述特定节点的数据质量问题的程序指令,其中,所述数据质量规则集合表示在图形节点之间的边的类型与所述图形节点的属性之间的预期关系。
20.根据权利要求19所述的计算机系统,其中,所述存储的程序指令进一步包括:
被编程为提供所述数据质量问题与所述特定节点和所述特定节点所连接到的第一边中的至少一个相关联的指示的程序指令。
21.一种系统,包括分别用于执行根据权利要求1至13中任一项所述的方法的步骤的模块。
CN202111266934.6A 2020-10-29 2021-10-28 测量图形数据库中的数据的数据质量 Pending CN114428882A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/083357 2020-10-29
US17/083,357 US11651055B2 (en) 2020-10-29 2020-10-29 Measuring data quality of data in a graph database

Publications (1)

Publication Number Publication Date
CN114428882A true CN114428882A (zh) 2022-05-03

Family

ID=78594980

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111266934.6A Pending CN114428882A (zh) 2020-10-29 2021-10-28 测量图形数据库中的数据的数据质量

Country Status (5)

Country Link
US (1) US11651055B2 (zh)
JP (1) JP2022074045A (zh)
CN (1) CN114428882A (zh)
DE (1) DE102021123578A1 (zh)
GB (1) GB2601888A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115994194A (zh) * 2023-03-23 2023-04-21 河北东软软件有限公司 政务大数据的数据质量检查方法、系统、设备及介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA3169532C (en) * 2022-03-23 2023-08-15 Aleksandar Milojkovic Systems and methods for combination telecommunications and power networks

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7783096B2 (en) * 2005-10-17 2010-08-24 Siemens Corporation Device systems and methods for imaging
US7836004B2 (en) * 2006-12-11 2010-11-16 International Business Machines Corporation Using data mining algorithms including association rules and tree classifications to discover data rules
US8185558B1 (en) * 2010-04-19 2012-05-22 Facebook, Inc. Automatically generating nodes and edges in an integrated social graph
EP2963563A1 (en) * 2014-06-30 2016-01-06 Fujitsu Limited Computing apparatus and method for managing a graph database
US10176609B2 (en) * 2016-05-11 2019-01-08 Runtime Collective Limited Analysis and visualization of interaction and influence in a network
US10068666B2 (en) * 2016-06-01 2018-09-04 Grand Rounds, Inc. Data driven analysis, modeling, and semi-supervised machine learning for qualitative and quantitative determinations
US10685053B2 (en) * 2016-07-02 2020-06-16 Hcl Technologies Limited System and method for generating professional profile for employees
US11392875B2 (en) * 2016-12-06 2022-07-19 Refinitiv Us Organization Llc Risk identification engine and supply chain graph generator

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115994194A (zh) * 2023-03-23 2023-04-21 河北东软软件有限公司 政务大数据的数据质量检查方法、系统、设备及介质
CN115994194B (zh) * 2023-03-23 2023-06-02 河北东软软件有限公司 政务大数据的数据质量检查方法、系统、设备及介质

Also Published As

Publication number Publication date
US11651055B2 (en) 2023-05-16
GB2601888A (en) 2022-06-15
GB202114409D0 (en) 2021-11-24
DE102021123578A1 (de) 2022-05-05
US20220138512A1 (en) 2022-05-05
JP2022074045A (ja) 2022-05-17

Similar Documents

Publication Publication Date Title
USRE47546E1 (en) Techniques for replicating changes to access control lists on investigative analysis data
US10643135B2 (en) Linkage prediction through similarity analysis
US10545945B2 (en) Change monitoring spanning graph queries
US9910875B2 (en) Best-value determination rules for an entity resolution system
CN114428882A (zh) 测量图形数据库中的数据的数据质量
US11531656B1 (en) Duplicate determination in a graph
US11500876B2 (en) Method for duplicate determination in a graph
JP2023539284A (ja) 企業支出の最適化及びマッピングモデルアーキテクチャ
CN108885673B (zh) 用于计算数据隐私-效用折衷的系统和方法
US20210136120A1 (en) Universal computing asset registry
Baqa et al. Quality of Information as an indicator of Trust in the Internet of Things
US20220114603A1 (en) Systems and methods for tracking data shared with third parties using artificial intelligence-machine learning
CN110009371B (zh) 异常行为确定方法、装置、设备及计算机可读存储介质
US11978065B2 (en) Systems and methods to manage transaction disputes using predictions based on anomalous data
US11907267B2 (en) User interface for frequent pattern analysis
CN116244751A (zh) 数据脱敏方法、装置、电子设备、存储介质和程序产品
CN115803726A (zh) 使用合格关系得分的主数据的改进的实体解析
US9672273B2 (en) Representing a machine-to-machine device model based on ontological relationships
JP2023034888A (ja) ユーザに対して因果ループ図を表示するシステム及び方法
CN113869904A (zh) 可疑数据识别方法、装置、电子设备、介质和计算机程序
US11941056B2 (en) Method for weighting a graph
US20190272721A1 (en) Systems and methods for providing an electronic line-of-business gateway
Wang et al. Uncertainty measures of complex preference relations for decision making
US11775532B1 (en) Systems and methods for resolving relationships within data sets
CN117196846A (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