CN109408601B - 基于图数据的数据模型转换方法及图数据结构转换器 - Google Patents

基于图数据的数据模型转换方法及图数据结构转换器 Download PDF

Info

Publication number
CN109408601B
CN109408601B CN201811118595.5A CN201811118595A CN109408601B CN 109408601 B CN109408601 B CN 109408601B CN 201811118595 A CN201811118595 A CN 201811118595A CN 109408601 B CN109408601 B CN 109408601B
Authority
CN
China
Prior art keywords
data
entity
link
type
attribute list
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
CN201811118595.5A
Other languages
English (en)
Other versions
CN109408601A (zh
Inventor
王海波
史晔翎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cognitive Computing Nanjing Information Technology Co ltd
Original Assignee
Cognitive Computing Nanjing Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cognitive Computing Nanjing Information Technology Co ltd filed Critical Cognitive Computing Nanjing Information Technology Co ltd
Priority to CN201811118595.5A priority Critical patent/CN109408601B/zh
Publication of CN109408601A publication Critical patent/CN109408601A/zh
Application granted granted Critical
Publication of CN109408601B publication Critical patent/CN109408601B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于图数据的数据模型转换方法及图数据结构转换器,其中,该数据模型转换方法,包括:S1根据数据模型转换需求,读取相应的模型转换配置,模型转换配置中包括实体拆分配置信息和/或实体合并配置信息和/或链接拆分配置信息;S2根据模型转换配置构建至少一个数据转换过滤器;S3根据构建的数据转换过滤器,按照配置顺序对当前图数据进行修改得到新的图数据并输出,实现数据模型的转换。有效避免重复的模型转换开发工作,大大节约了人力物力,同时开发人员能够基于配置信息清晰地推理出经转换后的图数据模型。

Description

基于图数据的数据模型转换方法及图数据结构转换器
技术领域
本发明涉及数据处理技术领域,特别涉及一种数据模型转换方法及图数据结构转换器。
背景技术
随着互联网的高速发展,网络数据呈爆炸式增长,为了提高对数据分析的效率,需将数据通过特定的模型进行表达。图(Graph)是一种灵活的数据存储结构,由顶点和顶点之间的边构成,能够直观地表达具有相互联系的实体(Entity)及实体之间的关系,其中,实体对应图中的顶点,链接(Link)对应图中的边,实体与链接都可以包含属性(Property)以描述实体与链接的内部结构。也有系统称这一模型为实体关系模型。
目前,应用实体链接模型(ELP)的系统绝大部分都是以它为基础建模的描述语言,构建一个方便灵活扩展的基础图数据库。但在数据具体使用的过程中,数据的结构和模型很多时候需要根据分析处理的场景进行相应的调整转换。较为常用的方法是通过特定的代码程序为每个分析场景开发定制化的数据转换逻辑。但是,每个场景单独开发的成本相对较高,无疑会浪费大量的人力物力。
发明内容
本发明的目的是提供一种基于图数据的数据模型转换方法及图数据结构转换器,有效解决现有技术中数据模型不能根据不同的应用场景进行转换的技术问题。
本发明提供的技术方案如下:
一种基于图数据的数据模型转换方法,包括:
S1根据数据模型转换需求,读取相应的模型转换配置,所述模型转换配置中包括实体拆分配置信息和/或实体合并配置信息和/或链接拆分配置信息;
S2根据模型转换配置构建至少一个数据转换过滤器;
S3根据构建的数据转换过滤器,按照配置顺序对当前图数据进行修改得到新的图数据并输出,实现数据模型的转换。
在本技术方案中,实体(Entity)的定义中包括实体的ID(身份标识)、名字及其属性列表;链接(Link)的定义包括ID、名字、源实体、目标实体、方向性及其属性列表。
进一步优选地,在步骤S2中,根据实体拆分配置信息构建得到第一数据转换过滤器,则在步骤S3中,从当前图数据中的第一实体类型拆分得到配置的第二实体类型,并建立其与第一实体类型之间的链接进行输出;和/或,
在步骤S2中,根据实体合并配置信息构建得到第二数据转换过滤器,则在步骤S3中,将当前图数据一链接关系两端包括的实体类型进行合并得到配置的第三实体类型进行输出,其中,该链接关系链接关系的两端分别包括多个实体类型;和/或,
在步骤S2中,根据链接拆分配置信息构建得到第三数据转换过滤器,则在步骤S3中,从当前图数据一链接关系中提取配置的第四实体类型,并根据配置的链接类型分别建立其与该链接关系两端的实体类型之间的链接进行输出。
进一步优选地,在步骤S3,从当前图数据中的第一实体类型拆分得到配置的第二实体类型,并建立其与第一实体类型之间的链接进行输出中,包括:
S11获取配置的第二实体类型及第一链接类型,其中,所述第二实体类型中包括第二实体属性列表,第一链接类型中包括第一链接属性列表;
S12遍历当前图数据,获取当前图数据中第一实体类型对应的第一实体数据;
S13根据所述第二实体属性列表,从第一实体数据中拆分得到第二实体数据;
S14根据所述第一链接属性列表,生成第二实体数据与第一实体数据之间的链接数据;
S15将第一实体数据、第二实体数据及其之间的链接数据写入图数据进行输出。
进一步优选地,在步骤S3,将当前图数据一链接关系两端包括的实体类型进行合并得到配置的第三实体类型进行输出中包括:
S21获取配置的第三实体类型,其中,所述第三实体类型中包括第三实体属性列表;
S22遍历当前图数据,根据其一链接关系得到链接数据及该链接关系两端的实体类型对应的实体数据,该链接关系的两端分别包括多个实体类型对应的实体数据;
S23根据所述第三实体属性列表,从链接关系两端实体类型对应的实体数据及链接数据中提取数据作为第三实体数据;
S24获取第三实体数据链接到链接关系两端实体数据的链接数据;
S25将第三实体数据及其与链接关系两端实体数据的链接数据写入图数据进行输出。
进一步优选地,在步骤S3,从当前图数据一链接关系中提取配置的第四实体类型,并根据配置的链接类型分别建立其与该链接关系两端的实体类型之间的链接进行输出中包括:
S31获取配置的第三实体类型、第二链接类型及第三链接类型,其中,所述第三实体类型中包括第三实体属性列表,第二链接类型中包括第二链接属性列表,第三链接类型中包括第三链接属性列表;
S32遍历当前图数据,根据其一链接关系得到链接数据;
S33根据第三实体属性列表,从该链接关系的链接数据中提取数据作为第三实体数据;
S34根据第二链接属性列表和第三链接属性列表生成第三实体数据与该链接关系两端的实体数据之间的链接数据;
S35将第三实体数据及根据第二链接属性列表和第三链接属性列表生成的链接数据写入图数据进行输出。
本发明还提供了一种图数据结构转换器,包括:
配置读取模块,用于根据数据模型转换需求,读取相应的模型转换配置,所述模型转换配置中包括实体拆分配置信息和/或实体合并配置信息和/或链接拆分配置信息;
过滤器构建模块,用于根据配置读取模块读取的模型转换配置至少一个数据转换过滤器;
模型修改模块,用于按照配置顺序,使用相应的数据转换过滤器对当前图数据进行修改得到新的图数据并输出,实现数据模型的转换。
进一步优选地,过滤器构建模块根据实体拆分配置信息构建得到第一数据转换过滤器,该第一数据转换过滤器从当前图数据中的第一实体类型拆分得到配置的第二实体类型,并建立其与第一实体类型之间的链接进行输出;和/或,
过滤器构建模块根据实体合并配置信息构建得到第二数据转换过滤器,该第二数据转换过滤器将当前图数据一链接关系两端包括的实体类型进行合并得到配置的第三实体类型进行输出,其中,该链接关系链接关系的两端分别包括多个实体类型;和/或,
过滤器构建模块根据链接拆分配置信息构建得到第三数据转换过滤器,该第三数据转换过滤器从当前图数据一链接关系中提取配置的第四实体类型,并根据配置的链接类型分别建立其与该链接关系两端的实体类型之间的链接进行输出。
进一步优选地,过滤器构建模块根据实体拆分配置信息构建得到第一数据转换过滤器,该第一数据转换过滤器中包括:
第一配置获取单元,用于获取配置的第二实体类型及第一链接类型,其中,所述第二实体类型中包括第二实体属性列表,第一链接类型中包括第一链接属性列表;
第一数据获取单元,用于遍历当前图数据,获取当前图数据中第一实体类型对应的第一实体数据;
数据拆分单元,用于根据所述第二实体属性列表,从第一实体数据中拆分得到第二实体数据;
第一链接数据生成单元,用于根据所述第一链接属性列表,生成第二实体数据与第一实体数据之间的链接数据;
第一图数据输出单元,用于将第一实体数据、第二实体数据及其之间的链接数据写入图数据进行输出。
进一步优选地,过滤器构建模块根据实体拆分配置信息构建得到第二数据转换过滤器,该第二数据转换过滤器中包括:
第二配置获取单元,用于获取配置的第三实体类型,其中,所述第三实体类型中包括第三实体属性列表;
第二数据获取单元,用于遍历当前图数据,根据其一链接关系得到链接数据及该链接关系两端的实体类型对应的实体数据,该链接关系的两端分别包括多个实体类型对应的实体数据;
第一数据提取单元,用于根据所述第三实体属性列表,从链接关系两端实体类型对应的实体数据及链接数据中提取数据作为第三实体数据;
第二链接数据生成单元,获取第三实体数据链接到链接关系两端实体数据的链接数据;
第二图数据输出单元,用于将第三实体数据及其与链接关系两端实体数据的链接数据写入图数据进行输出。
进一步优选地,过滤器构建模块根据实体拆分配置信息构建得到第三数据转换过滤器,该第三数据转换过滤器中包括:
第三配置获取单元,用于获取配置的第三实体类型、第二链接类型及第三链接类型,其中,所述第三实体类型中包括第三实体属性列表,第二链接类型中包括第二链接属性列表,第三链接类型中包括第三链接属性列表;
第三数据获取单元,遍历当前图数据,根据其一链接关系得到链接数据;
第二数据提取单元,用于根据第三实体属性列表,从该链接关系的链接数据中提取数据作为第三实体数据;
第三链接数据生成单元,用于根据第二链接属性列表和第三链接属性列表生成第三实体数据与该链接关系两端的实体数据之间的链接数据;
第三图数据输出单元,用于将第三实体数据及根据第二链接属性列表和第三链接属性列表生成的链接数据写入图数据进行输出。
在本发明提供的基于图数据的数据模型转换方法及图数据结构转换器中,读取了预先设置的模型转换配置信息之后,解析配置信息中每个算子指定的规则(实体拆分配置信息或实体合并配置信息或链接拆分配置信息),并将其构建成数据转换管道中的一个数据转换过滤器。在每个数据转换过滤器中,根据自身特定逻辑对图数据的模型和数据进行修改,作为新的图数据进行输出,作为下一环节的输入,自动完成数据模型的转换。这种采用固定算子组合图数据转换方式配置来驱动图数据转换装置执行数据模型转换的方式,有效避免重复的模型转换开发工作,将实体拆分配置信息、实体合并配置信息及链接拆分配置信息对应的转换算子按照特定组合和特定顺序进行运算即可实现发明目的,开发人员无需针对每个分析场景开发一套相应的数据转换逻辑,大大节约了人力物力,同时开发人员能够基于配置信息清晰地推理出经转换后的图数据模型。
附图说明
下面将以明确易懂的方式,结合附图说明优选实施方式,对一种一种日志处理方法及系统的上述特性、技术特征、优点及其实现方式予以进一步说明。
图1为本发明中数据模型转换方法流程示意图;
图2为一实例中实体合并示意图;
图3为本发明中图数据结构转换器示意图;
图4为一实例中张三与李四分别拥有的多个账户信息及其之间转账交易记录的图数据;
图5为该实例中实体拆分后人员实体与对应的账户实体之间拥有关系的图数据;
图6为该实例中实体之间的经济往来关系的图数据。
附图标记说明:
100-图数据结构转换器,110-实体拆分模块,120-实体合并模块,130-链接拆分模块。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
为使图面简洁,各图中只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。
如图1所示为本发明提供的基于图数据的数据模型转换方法的流程示意图,从图中可看出,在该数据模型转换方法中包括:S1根据数据模型转换需求,读取相应的模型转换配置,模型转换配置中包括实体拆分配置信息和/或实体合并配置信息和/或链接拆分配置信息;S2根据模型转换配置构建至少一个数据转换过滤器;S3根据构建的数据转换过滤器,按照配置顺序对当前图数据进行修改得到新的图数据并输出,实现数据模型的转换。
在该数据模型转换方法中,使用ELP模型转换逻辑描述语言(Graph ModelTransformation GMT)对ELP模型中实体和链接需要进行的转换逻辑进行描述。通过转换逻辑描述语言提供实体拆分、实体合并及链接拆分转换算子,按照特定的顺序与组合运行,形成ELP模型转换规则文件,作为图数据结构转换器的配置进行输入。在模型转换的过程中,根据数据模型转换需求,读取相应的配置信息构建成数据转换管道中的数据转换过滤器,在每个数据转换过滤的环节中,根据自身特定的逻辑对图数据的模型和数据进行修改,输出新的图数据,其中,若构建了多个数据转换过滤器,将前一级数据转换过滤器输出的图数据作为下一级数据转换过滤器的输入,最后一级数据转换过滤器输出的图数据为最终输出。
若在步骤S2中,根据实体拆分配置信息构建得到第一数据转换过滤器,则在步骤S3中,从当前图数据中的第一实体类型中拆分得到配置的第二实体类型,并建立其与第一实体类型之间的链接进行输出。在这一过程中,第一实体类型为当前图数据(具体为执行该步骤时使用的图数据,该图数据可以由前一级的数据转换过滤器输出而来,也可以为当前数据库中已有的图数据)中现存的实体类型,若在一应用场景中,需要基于当前图数据中的实体类型构建新的实体类型,则可以使用该方法拆分得到新的实体类型实现目的。
第一数据转换过滤器对实体进行拆分的具体过程包括:将配置的第二实体类型E2及第一链接类型L21添加入ELP模型,其中,第二实体类型L21中包括第二实体属性列表,第一链接类型L21中包括第一链接属性列表;之后,遍历当前图数据,当访问到图数据中第一实体类型E1对应的第一实体数据e1时,根据第二实体属性列表,从第一实体数据e1中拆分得到第二实体数据e2;接着,根据第一链接属性列表,生成第二实体数据e2与第一实体数据e1之间的链接数据l,并将第一实体数据e1、第二实体数据e2及其之间的链接数据l写入图数据进行输出,对ELP模型进行修改。当图数据遍历完成之后,将修改后的ELP模型与图数据进行合并作为完整的图数据进行输出。
若在步骤S2中,根据实体合并配置信息构建得到第二数据转换过滤器,则在步骤S3中,将当前图数据一链接关系两端包括的实体类型进行合并得到配置的第三实体类型进行输出,其中,该链接关系链接关系的两端分别包括多个实体类型。在这一过程中涉及到的链接关系为当前图数据中现存的链接关系,若根据模型转换需求,需要将该链接关系两端分别包括的实体类型进行合并,则可以使用该方法合并得到新的实体类型实现目的。
以链接两端分别包括2个实体类型为例,对第二数据转换过滤器对实体进行合并的具体过程进行阐述,包括:将配置的第三实体类型E3添加入ELP模型,同时将现有链接关系L1从ELP模型中删除,其中,第三实体类型E3中包括第三实体属性列表;之后,遍历当前图数据,当访问到现有链接关系L1(链接两端分别包括第五实体类型E5和第六实体类型E6,即链接的一端包括第五实体类型E5和第六实体类型E6,另一端也包括第五实体类型E5和第六实体类型E6)对应链接数据l1时,从图数据中查询到链接数据l1两端的第五实体数据e5和第六实体数据e6;接着,根据第三实体属性列表,从第五实体数据e5、第六实体数据e6及链接数据l1中提取部分作为第三实体数据e3,并删除第五实体数据e5、第六实体数据e6及链接数据l1,将第三实体数据e3作为图的实体数据进行输出;之后,记录第五实体数据e5和第六实体数据e6到第三实体数据e3的映射关系,得到第三实体数据e3链接到第五实体数据e5和第六实体数据e6的链接数据,作为图的链接数据进行输出。当图数据遍历完成之后,将第三实体数据e3及其与第五实体数据e5和第六实体数据e6间的链接数据写入图数据进行输出。
在一实例中,一链接M两端分别包括两个实体类型:实体a和实体b(两个实体间存在另一链接N,该实例中合并的对象为链接M两端的实体),根据需求,分别将链接两端的两个实体类型均进行合并得到实体c,完成实体类型的合并,如图2所示,链接一端的实体a1和实体b1合并得到实体c1,另一端的实体a2和实体b2合并得到实体c2,删除合并前的实体a1、实体b1、实体a2和实体b2,将合并后的实体c1和c2作为图数据的输出实体,合并后实体c1和c2之间存在链接Q。如在一应用中,实体a1为张三,实体b1为账户1,两个实体之间的链接为账户拥有关系,则合并后实体c1为张三及其拥有的账户1。在其他实例中,可以根据应用需求对一链接两端包含的3个实体类型/4个实体类型甚至更多进行合并,要注意的是,链接两端包括的多个实体类型不限于存在该链接关系的实体类型(如图2,存在链接关系M的实体具体为实体b1和实体b2,但是链接M两端包括的实体为实体a1、实体b1、实体a2和实体b2)。此外,涉及的实体合并并不是简单的将多个实体的名字、属性等所有信息进行合并,而是根据配置的第三实体类型及其属性列表进行合并。
若在步骤S2中,根据链接拆分配置信息构建得到第三数据转换过滤器,则在步骤S3中,从当前图数据一链接关系中提取配置的第四实体类型,并根据配置的链接类型分别建立其与该链接关系两端的实体类型之间的链接进行输出。在这一过程中涉及到的链接关系为当前图数据中现存的链接关系,若根据模型转换需求,需要从该链接关系中提取部分信息得到新的链接关系,则可以使用该方法拆分得到新的链接类型实现目的。如在一实际应用中,实体张三和实体李四之间的链接关系为通信,在该链接关系中包括通信时长和通信基站,若现需统计通信基站的使用情况,则可以使用第三数据转换器,从该链接关系中提取基站信息作为新的实体,并分别建立其与实体张三和实体李四之间的链接关系实现目的。
第三数据转换过滤器对链接进行拆分的过程中包括:将配置的第四实体类型E4、第二链接类型L47及第三链接类型L48添加入ELP模型,同时将现有链接关系L2从ELP模型中删除,其中,第四实体类型E4中包括第三实体属性列表,第二链接类型L47中包括第二链接属性列表,第三链接类型L48中包括第三链接属性列表;之后,遍历当前图数据,当访问到现有链接关系L2(链接一端为第七实体类型E7,另一端为第八实体类型E8)对应链接数据l2时,根据第三实体属性列表,从现有链接关系L2的链接数据l2中提取部分数据作为第四实体数据e4;接着,根据第二链接属性列表和第三链接属性列表生成相应的链接数据,删除现有链接关系L2的链接数据l2,并将第四实体数据e4及根据第二链接属性列表和第三链接属性列表生成的链接数据L47(第四实体类型E4与第七实体类型E7之间的链接数据)和L48(第四实体类型E4与第八实体类型E8之间的链接数据)分别作为图数据的实体和链接数据进行输出。当图数据遍历完成之后,将修改后的ELP模型与图数据进行合并作为完整的图数据进行输出,完成数据模型的转换。
基于以上针对实体拆分配置信息、实体合并配置信息及链接拆分配置信息构建的数据转换过滤器的描述,在实际应用中,可以根据需求从中选定至少一个对当前图数据进行数据模型的转换得到新的图数据,如,在一实例中,选定由实体拆分配置信息构建的第一数据转换过滤器和由实体合并配置信息构建的第二数据转换过滤器、且逻辑顺序为先执行第一数据转换过滤器再执行第二数据转换过滤器对当前的图数据进行模型转换;又如,在一实例中,仅选定由链接拆分配置信息构建的第三数据转换过滤器对当前的图数据进行模型转换等。
如图3所示为本发明还提供的图数据结构转换器100示意图,从图中可看出,在该图数据结构转换器100中包括:配置读取模块110、过滤器构建模块120及模型修改模块130,其中,过滤器构建模块120分别与配置读取模块110和模型修改模块130连接,其中,配置读取模块110,用于根据数据模型转换需求,读取相应的模型转换配置,模型转换配置中包括实体拆分配置信息和/或实体合并配置信息和/或链接拆分配置信息;过滤器构建模块120,用于根据配置读取模块110读取的模型转换配置至少一个数据转换过滤器(构建的数据转换过滤器的数量与读取的实体合并/实体拆分/链接拆分配置信息的数量匹配);模型修改模块130,用于按照配置顺序,使用相应的数据转换过滤器对当前图数据进行修改得到新的图数据并输出,实现数据模型的转换。
在该图数据结构转换器100中,使用ELP模型转换逻辑描述语言对ELP模型中实体和链接需要进行的转换逻辑进行描述。通过转换逻辑描述语言提供实体拆分、实体合并及链接拆分转换算子,按照特定的顺序与组合运行,形成ELP模型转换规则文件,作为图数据结构转换器100的配置进行输入。在模型转换的过程中,根据数据模型转换需求,读取相应的配置信息构建成数据转换管道中的数据转换过滤器,在每个数据转换过滤的环节中,根据自身特定的逻辑对图数据的模型和数据进行修改,输出新的图数据,其中,若构建了多个数据转换过滤器,将输出的图数据作为下一环节的输入。
当过滤器构建模块120根据实体拆分配置信息构建得到第一数据转换过滤器,该第一数据转换过滤器从当前图数据中的第一实体类型中拆分得到配置的第二实体类型,并建立其与第一实体类型之间的链接进行输出。在这一过程中,第一实体类型为当前图数据中现存的实体类型。
具体,第一数据转换过滤器中包括:第一配置获取单元、第一数据获取单元、数据拆分单元、第一链接数据生成单元及第一图数据输出单元。在对实体进行拆分的具体过程包括:第一配置获取单元获取配置的第二实体类型E2及第一链接类型L21,并将其添加入ELP模型,其中,第二实体类型L21中包括第二实体属性列表,第一链接类型L21中包括第一链接属性列表;之后,第一数据获取单元遍历当前图数据,当访问到图数据中第一实体类型E1对应的第一实体数据e1时,数据拆分单元根据第二实体属性列表,从第一实体数据e1中拆分得到第二实体数据e2;接着,第一链接数据生成单元根据第一链接属性列表,生成第二实体数据e2与第一实体数据e1之间的链接数据l,并将第一实体数据e1、第二实体数据e2及其之间的链接数据l写入图数据进行输出,对ELP模型进行修改。当图数据遍历完成之后,将修改后的ELP模型与图数据进行合并作为完整的图数据通过第一图数据输出单元输出。
当过滤器构建模块120根据实体合并配置信息构建得到第二数据转换过滤器,该第二数据转换过滤器将当前图数据一链接关系两端包括的实体类型进行合并得到配置的第三实体类型进行输出,其中,该链接关系链接关系的两端分别包括多个实体类型。在这一过程中涉及到的链接关系为当前图数据中现存的链接关系,若根据模型转换需求,需要将该链接关系两端分别包括的实体类型进行合并,则可以使用该方法合并得到新的实体类型实现目的。
第二数据转换过滤器中包括:第二配置获取单元、第二数据获取单元、第一数据提取单元、第二链接数据生成单元以及第二图数据输出单元。以链接两端分别包括2个实体类型为例,第二数据转换过滤器对实体进行合并的过程中包括:第二配置获取单元获取配置的第三实体类型E3,并将其添加入ELP模型,同时将现有链接关系L1从ELP模型中删除,其中,第三实体类型E3中包括第三实体属性列表;之后,第二数据获取单元遍历当前图数据,当访问到现有链接关系L1(链接两端分别包括第五实体类型E5和第六实体类型E6)对应链接数据l1时,从图数据中查询链接数据l1两端的第五实体数据e5和第六实体数据e6;接着,第一数据提取单元根据第三实体属性列表,从第五实体数据e5、第六实体数据e6及链接数据l1中提取部分作为第三实体数据e3,并删除第五实体数据e5、第六实体数据e6及链接数据l1,将第三实体数据e3作为图的实体数据进行输出;之后,第二链接数据生成单元记录第五实体数据e5和第六实体数据e6到第三实体数据e3的映射关系,得到第三实体数据e3链接到第五实体数据e5和第六实体数据e6的链接数据,作为图的链接数据进行输出。当图数据遍历完成之后,将第三实体数据e3及其与第五实体数据e5和第六实体数据e6间的链接数据写入图数据通过第二图数据输出单元输出。
当过滤器构建模块120根据链接拆分配置信息构建得到第三数据转换过滤器,该第三数据转换过滤器从当前图数据一链接关系中提取配置的第四实体类型,并根据配置的链接类型分别建立其与该链接关系两端的实体类型之间的链接进行输出。在这一过程中涉及到的链接关系为当前图数据中现存的链接关系,若根据模型转换需求,需要从该链接关系中提取部分信息得到新的链接关系,则可以使用该方法拆分得到新的链接类型实现目的。
该第三数据转换过滤器中包括:第三配置获取单元、第三数据获取单元、第二数据提取单元、第三链接数据生成单元及第三图数据输出单元。第三数据转换过滤器对链接进行拆分的过程中包括:第三配置获取单元获取配置的第四实体类型E4、第二链接类型L47及第三链接类型L48,并将其添加入ELP模型,同时将现有链接关系L2从ELP模型中删除,其中,第四实体类型E4中包括第三实体属性列表,第二链接类型L47中包括第二链接属性列表,第三链接类型L48中包括第三链接属性列表;之后,第三数据获取单元遍历当前图数据,当访问到现有链接关系L2(链接一端为第七实体类型E7,另一端为第八实体类型E8)对应链接数据l2时,第二数据提取单元根据第三实体属性列表,从现有链接关系L2的链接数据l2中提取部分数据作为第四实体数据e4;接着,第三链接数据生成单元根据第二链接属性列表和第三链接属性列表生成相应的链接数据,删除现有链接关系L2的链接数据l2,并将第四实体数据e4及根据第二链接属性列表和第三链接属性列表生成的链接数据L47(第四实体类型E4与第七实体类型E7之间的链接数据)和L48(第四实体类型E4与第八实体类型E8之间的链接数据)分别作为图数据的实体和链接数据进行输出。当图数据遍历完成之后,将修改后的ELP模型与图数据进行合并作为完整的图数据通过第三图数据输出单元输出,完成数据模型的转换。
在一实例中,如图4所示为一份记录了张三与李四分别拥有的多个账户信息及其之间转账交易记录的图数据,其中,椭圆表示账户实体(Account),链接线表示转账关系(Transfer),账户实体包含户主姓名与账户ID属性,转账关系包含转账金额信息。
基于该图数据,倘若现需要汇总张三与李四两个人之间的资金往来,但不希望账户信息干扰其分析,则在数据模型转换过程中,预先设定的GMT配置文件包括:1)实体拆分:1.1从“账户实体”中拆分出“人员实体”,1.2在“人员”与“账户”之间建立拥有账户关系;2)实体合并:合并“拥有账户”关系,将账户实体合并入人员实体。
根据该GMT配置文件,图数据结构转换器首先处理实体拆分规则:遍历当前图数据中的实体,从账户实体301、账户实体302及账户实体303中拆分出人员实体张三;从账户实体401和账户实体402中拆分出人员实体李四(在拆分过程中,同一实体自动去除重复)。之后,在人员实体与对应的账户实体之间建立拥有关系,输出的图结构如图5所示,其中,椭圆表示账户实体,链接线表示转账关系,圆形表示人员实体,带竖线的链接线表示拥有账户关系。
之后,图数据结构转换器处理实体合并规则:遍历当前图数据中的“拥有账户”关系数据,将账户实体与人员实体进行合并,移除拥有关系,并将图数据中的所有转账关系修改为人员之间的关联关系。经过实体合并规则处理后,图的结构调整为只包含两个实体之间的经济往来关系,如图6所示。
应当说明的是,上述实施例均可根据需要自由组合。以上仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (8)

1.一种基于图数据的数据模型转换方法,其特征在于,所述数据模型转换方法中包括:
S1根据数据模型转换需求,读取相应的模型转换配置,所述模型转换配置中包括实体拆分配置信息和/或实体合并配置信息和/或链接拆分配置信息;
S2根据模型转换配置构建至少一个数据转换过滤器;
S3根据构建的数据转换过滤器,按照配置顺序对当前图数据进行修改得到新的图数据并输出,实现数据模型的转换;
其中,在步骤S2中,根据实体拆分配置信息构建得到第一数据转换过滤器,则在步骤S3中,从当前图数据中的第一实体类型中拆分得到配置的第二实体类型,并建立其与第一实体类型之间的链接进行输出;和/或,
在步骤S2中,根据实体合并配置信息构建得到第二数据转换过滤器,则在步骤S3中,将当前图数据一链接关系两端包括的实体类型进行合并得到配置的第三实体类型进行输出,其中,该链接关系链接关系的两端分别包括多个实体类型;和/或,
在步骤S2中,根据链接拆分配置信息构建得到第三数据转换过滤器,则在步骤S3中,从当前图数据一链接关系中提取配置的第四实体类型,并根据配置的链接类型分别建立其与该链接关系两端的实体类型之间的链接进行输出。
2.如权利要求1所述的数据模型转换方法,其特征在于,在步骤S3,从当前图数据中的第一实体类型中拆分得到配置的第二实体类型,并建立其与第一实体类型之间的链接进行输出中,包括:
S11获取配置的第二实体类型及第一链接类型,其中,所述第二实体类型中包括第二实体属性列表,第一链接类型中包括第一链接属性列表;
S12遍历当前图数据,获取当前图数据中第一实体类型对应的第一实体数据;
S13根据所述第二实体属性列表,从第一实体数据中拆分得到第二实体数据;
S14根据所述第一链接属性列表,生成第二实体数据与第一实体数据之间的链接数据;
S15将第一实体数据、第二实体数据及其之间的链接数据写入图数据进行输出。
3.如权利要求1所述的数据模型转换方法,其特征在于,在步骤S3,将当前图数据一链接关系两端包括的实体类型进行合并得到配置的第三实体类型进行输出中包括:
S21获取配置的第三实体类型,其中,所述第三实体类型中包括第三实体属性列表;
S22遍历当前图数据,根据其一链接关系得到链接数据及该链接关系两端的实体类型对应的实体数据,该链接关系的两端分别包括多个实体类型对应的实体数据;
S23根据所述第三实体属性列表,从链接关系两端实体类型对应的实体数据及链接数据中提取数据作为第三实体数据;
S24获取第三实体数据链接到链接关系两端实体数据的链接数据;
S25将第三实体数据及其与链接关系两端实体数据的链接数据写入图数据进行输出。
4.如权利要求1所述的数据模型转换方法,其特征在于,在步骤S3,从当前图数据一链接关系中提取配置的第四实体类型,并根据配置的链接类型分别建立其与该链接关系两端的实体类型之间的链接进行输出中包括:
S31获取配置的第三实体类型、第二链接类型及第三链接类型,其中,所述第三实体类型中包括第三实体属性列表,第二链接类型中包括第二链接属性列表,第三链接类型中包括第三链接属性列表;
S32遍历当前图数据,根据其一链接关系得到链接数据;
S33根据第三实体属性列表,从该链接关系的链接数据中提取数据作为第三实体数据;
S34根据第二链接属性列表和第三链接属性列表生成第三实体数据与该链接关系两端的实体数据之间的链接数据;
S35将第三实体数据及根据第二链接属性列表和第三链接属性列表生成的链接数据写入图数据进行输出。
5.一种图数据结构转换器,其特征在于,所述图数据结构转换器中包括:
配置读取模块,用于根据数据模型转换需求,读取相应的模型转换配置,所述模型转换配置中包括实体拆分配置信息和/或实体合并配置信息和/或链接拆分配置信息;
过滤器构建模块,用于根据配置读取模块读取的模型转换配置至少一个数据转换过滤器;
模型修改模块,用于按照配置顺序,使用相应的数据转换过滤器对当前图数据进行修改得到新的图数据并输出,实现数据模型的转换;
其中,过滤器构建模块根据实体拆分配置信息构建得到第一数据转换过滤器,该第一数据转换过滤器从当前图数据中的第一实体类型中拆分得到配置的第二实体类型,并建立其与第一实体类型之间的链接进行输出;和/或,
过滤器构建模块根据实体合并配置信息构建得到第二数据转换过滤器,该第二数据转换过滤器将当前图数据一链接关系两端包括的实体类型进行合并得到配置的第三实体类型进行输出,其中,该链接关系链接关系的两端分别包括多个实体类型;和/或,
过滤器构建模块根据链接拆分配置信息构建得到第三数据转换过滤器,该第三数据转换过滤器从当前图数据一链接关系中提取配置的第四实体类型,并根据配置的链接类型分别建立其与该链接关系两端的实体类型之间的链接进行输出。
6.如权利要求5所述的图数据结构转换器,其特征在于,过滤器构建模块根据实体拆分配置信息构建得到第一数据转换过滤器,该第一数据转换过滤器中包括:
第一配置获取单元,用于获取配置的第二实体类型及第一链接类型,其中,所述第二实体类型中包括第二实体属性列表,第一链接类型中包括第一链接属性列表;
第一数据获取单元,用于遍历当前图数据,获取当前图数据中第一实体类型对应的第一实体数据;
数据拆分单元,用于根据所述第二实体属性列表,从第一实体数据中拆分得到第二实体数据;
第一链接数据生成单元,用于根据所述第一链接属性列表,生成第二实体数据与第一实体数据之间的链接数据;
第一图数据输出单元,用于将第一实体数据、第二实体数据及其之间的链接数据写入图数据进行输出。
7.如权利要求5所述的图数据结构转换器,其特征在于,过滤器构建模块根据实体拆分配置信息构建得到第二数据转换过滤器,该第二数据转换过滤器中包括:
第二配置获取单元,用于获取配置的第三实体类型,其中,所述第三实体类型中包括第三实体属性列表;
第二数据获取单元,用于遍历当前图数据,根据其一链接关系得到链接数据及该链接关系两端的实体类型对应的实体数据,该链接关系的两端分别包括多个实体类型对应的实体数据;
第一数据提取单元,用于根据所述第三实体属性列表,从链接关系两端实体类型对应的实体数据及链接数据中提取数据作为第三实体数据;
第二链接数据生成单元,获取第三实体数据链接到链接关系两端实体数据的链接数据;
第二图数据输出单元,用于将第三实体数据及其与链接关系两端实体数据的链接数据写入图数据进行输出。
8.如权利要求7所述的图数据结构转换器,其特征在于,过滤器构建模块根据实体拆分配置信息构建得到第三数据转换过滤器,该第三数据转换过滤器中包括:
第三配置获取单元,用于获取配置的第三实体类型、第二链接类型及第三链接类型,其中,所述第三实体类型中包括第三实体属性列表,第二链接类型中包括第二链接属性列表,第三链接类型中包括第三链接属性列表;
第三数据获取单元,遍历当前图数据,根据其一链接关系得到链接数据;
第二数据提取单元,用于根据第三实体属性列表,从该链接关系的链接数据中提取数据作为第三实体数据;
第三链接数据生成单元,用于根据第二链接属性列表和第三链接属性列表生成第三实体数据与该链接关系两端的实体数据之间的链接数据;
第三图数据输出单元,用于将第三实体数据及根据第二链接属性列表和第三链接属性列表生成的链接数据写入图数据进行输出。
CN201811118595.5A 2018-09-19 2018-09-19 基于图数据的数据模型转换方法及图数据结构转换器 Active CN109408601B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811118595.5A CN109408601B (zh) 2018-09-19 2018-09-19 基于图数据的数据模型转换方法及图数据结构转换器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811118595.5A CN109408601B (zh) 2018-09-19 2018-09-19 基于图数据的数据模型转换方法及图数据结构转换器

Publications (2)

Publication Number Publication Date
CN109408601A CN109408601A (zh) 2019-03-01
CN109408601B true CN109408601B (zh) 2020-09-22

Family

ID=65466338

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811118595.5A Active CN109408601B (zh) 2018-09-19 2018-09-19 基于图数据的数据模型转换方法及图数据结构转换器

Country Status (1)

Country Link
CN (1) CN109408601B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110263224A (zh) * 2019-05-07 2019-09-20 南京智慧图谱信息技术有限公司 一种基于elp模型的事件型链接数据压缩方法
CN112992301B (zh) * 2019-12-02 2024-03-29 金色熊猫有限公司 数据处理方法、装置、电子设备及存储介质
CN112765283A (zh) * 2021-01-19 2021-05-07 上海明略人工智能(集团)有限公司 实体链接关系的管理方法、装置、电子设备及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8549529B1 (en) * 2009-05-29 2013-10-01 Adobe Systems Incorporated System and method for executing multiple functions execution by generating multiple execution graphs using determined available resources, selecting one of the multiple execution graphs based on estimated cost and compiling the selected execution graph
CN102831264A (zh) * 2012-08-09 2012-12-19 上海市城市建设设计研究总院 基于cad的地图信息转换方法
CN104794244B (zh) * 2015-05-13 2018-02-16 南京大学 一种基于MongoDB实现图转换的方法和装置
CN105389402B (zh) * 2015-12-29 2019-04-12 曙光信息产业(北京)有限公司 一种面向大数据的etl方法和装置
CN106649769B (zh) * 2016-12-27 2020-10-30 中国科学院大学 一种基于语义的xbrl数据到owl数据的转换方法

Also Published As

Publication number Publication date
CN109408601A (zh) 2019-03-01

Similar Documents

Publication Publication Date Title
CN106250987B (zh) 一种机器学习方法、装置及大数据平台
CN109408601B (zh) 基于图数据的数据模型转换方法及图数据结构转换器
CN112579797B (zh) 针对知识图谱的业务处理方法及装置
CN105389402A (zh) 一种面向大数据的etl方法和装置
CN103927314B (zh) 一种数据批量处理的方法和装置
CN112287013B (zh) 数据转换方法及适配器
CN109117377A (zh) 一种基于建表语句的测试数据自动生成方法、装置及设备
US20190050435A1 (en) Object data association index system and methods for the construction and applications thereof
CN112465448A (zh) 基于区块链的跨组织工作流运行方法及系统
CN109697215A (zh) 数据采集方法、数据采集系统和非易失性计算机存储介质
Kuloor et al. Aspect-oriented requirements engineering for software product lines
CN107704620A (zh) 一种档案管理的方法、装置、设备和存储介质
CN108874395A (zh) 一种组件化流处理过程中的硬编译方法及装置
CN112270077A (zh) 技术中台构建方法及装置
CN116226082A (zh) 数据库模型的生成方法、装置、存储介质及电子设备
US20170098160A1 (en) Method and system for building domain intelligent solution
CN110427399A (zh) 实时数据采集方法、系统、装置及存储介质
CN102609571A (zh) 一种自动化ip验证平台
CN112783799B (zh) 软件守护测试方法及装置
CN103823875B (zh) 服务组合的检索方法
CN109088771B (zh) 物联应用平台的物联节点模板继承系统
Buneman et al. Hierarchical Models of Provenance.
CN113741864A (zh) 基于自然语言处理的语义化服务接口自动设计方法与系统
CN112529644A (zh) 一种电子发票开具的方法、装置及存储介质
CN106469086B (zh) 事件处理方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Data model conversion method based on graph data and graph data structure converter

Effective date of registration: 20220425

Granted publication date: 20200922

Pledgee: Bank of Hangzhou Limited by Share Ltd. Nanjing branch

Pledgor: COGNITIVE COMPUTING NANJING INFORMATION TECHNOLOGY Co.,Ltd.

Registration number: Y2022980004810

PE01 Entry into force of the registration of the contract for pledge of patent right