数据模型转换方法、装置、设备及介质与流程

文档序号:33507043发布日期:2023-03-18 02:56阅读:56来源:国知局
数据模型转换方法、装置、设备及介质与流程

1.本技术涉及数据处理技术领域,尤其涉及一种数据模型转换方法、装置、设备及介质。


背景技术:

2.大型业务的统计数据涉及多种维度的查询,还涉及复杂的业务概念、业务逻辑以及业务实体关联关系。以银行业务为例,银行业务的统计数据所涉及的多种查询维度如产品线、产品组、产品种类、机构、币种、业务类型、处室、集团、合约类型、账户状态等等。
3.为了支持复杂庞大的业务运转,对业务系统的底层的关系型数据模型进行了复杂的设计,在关系型数据模型中,表的数目众多、表间关联关系复杂,表间关系常用关联表或者冗余数据进行关联。
4.可见,业务系统中的关系型数据模型的复杂度较高,基于关系型数据模型进行数据查询时,一次查询操作需要关联众多表,查询效率较低。


技术实现要素:

5.本技术提供一种数据模型转换方法、装置、设备及介质,用以解决业务系统中的关系型数据库模型的复杂度较高,导致基于关系型数据库模型进行数据查询时,一次查询操作需要关联众多表,查询效率较低的问题。
6.第一方面,本技术提供一种数据模型转换方法,包括:
7.根据业务场景,确定用于构建图数据模型的业务数据;
8.根据所述业务场景的关系型数据模型,确定所述业务数据对应的业务实体关系,其中,所述业务实体关系包括业务实体、所述业务实体的实体属性、所述业务实体之间的关联关系;
9.根据所述业务实体关系,构建所述图数据模型;
10.其中,所述图数据模型的节点层包括查询层和业务层,所述图数据模型的节点包括位于所述查询层的查询节点和位于所述业务层的业务节点,所述查询节点对应多个业务查询维度,所述业务节点对应业务查询数据。
11.在一种可行的实现方式中,所述根据所述业务实体关系,构建所述图数据模型,包括:
12.以所述业务实体为节点、所述业务实体的实体属性为节点属性、以所述业务实体之间的关联关系为边,初步构建得到所述图数据模型;
13.对所述图数据模型进行优化操作,得到优化后的所述图数据模型,其中,所述优化操作包括如下至少一种:节点拆分操作、节点合并操作、孤点处理操作。
14.在一种可行的实现方式中,所述以所述业务实体为节点、所述业务实体的实体属性为节点属性、以所述业务实体之间的关联关系为边,初步构建得到所述图数据模型,包括:
15.在所述图数据模型中,建立所述业务实体对应的业务节点,并将所述业务实体的实体属性存储至所述业务实体对应的业务节点;
16.从所述业务实体中提取业务类别,建立所述业务类别对应的查询节点,并将所述业务类别存储至所述查询节点;
17.建立连接所述业务类别对应的查询节点与所述业务实体对应的业务节点的边,并建立连接存在关联关系的业务节点的边。
18.在一种可行的实现方式中,所述优化操作包括节点拆分操作,所述对所述图数据模型进行优化操作,包括:
19.在所述图数据模型中,确定存在冗余数据的待优化节点;
20.在所述业务场景的实体类型中,确定所述冗余数据所属的目标实体类型;
21.建立所述目标实体类型对应的业务节点,并将所述冗余数据存储至所述目标实体类型对应的业务节点;
22.建立连接所述待优化节点与所述目标实体类型对应的业务节点的边;
23.在所述待优化节点中删除所述冗余数据。
24.在一种可行的实现方式中,所述优化操作包括节点合并操作,所述对所述图数据模型进行优化操作,包括:
25.在所述图数据模型中,确定满足合并条件的第一节点和第二节点,所述合并条件包括:所述第一节点与所述第二节点存在关联关系、所述第二节点与除所述第一节点以外的剩余节点不存在关联关系以及无需对所述第一节点和所述第二节点进行单独的数据处理;
26.对所述第一节点和所述第二节点进行合并。
27.在一种可行的实现方式中,所述对所述第一节点和所述第二节点进行合并,包括:
28.根据所述第一节点对应的业务优先级和所述第二节点对应的业务优先级,在所述第一节点和所述第二节点中确定主节点和从属节点;
29.将所述从属节点合并至所述主节点。
30.在一种可行的实现方式中,所述将所述从属节点合并至所述主节点,包括:
31.在确定所述主节点与所述从属节点的关联关系为一对一关联关系的情况下,将所述从属节点合并至所述主节点,其中,若所述从属节点不属于所述主节点的共享实体或者共享属性,则在将所述从属节点合并至所述主节点的过程中,在所述主节点中添加所述从属节点对应的合并标签;
32.在确定所述主节点与所述从属节点的关联关系为一对多关联关系的情况下,对所述从属节点与所述主节点不进行合并,并建立连接所述从属节点与所述主节点的边。
33.第二方面,本技术提供一种数据模型转换装置,包括:
34.业务数据确定模块,用于根据业务场景,确定用于构建图数据模型的业务数据;
35.实体关系确定模块,用于根据所述业务场景的关系型数据模型,确定所述业务数据对应的业务实体关系,其中,所述业务实体关系包括业务实体、所述业务实体的实体属性、所述业务实体之间的关联关系;
36.构建模块,用于根据所述业务实体关系,构建所述图数据模型;
37.其中,所述图数据模型的节点层包括查询层和业务层,所述图数据模型的节点包
括位于所述查询层的查询节点和位于所述业务层的业务节点,所述查询节点对应多个业务查询维度,所述业务节点对应业务查询数据。
38.第三方面,本技术提供一种电子设备,包括:至少一个处理器和存储器;
39.所述存储器存储计算机执行指令;
40.所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上述第一方面所述的数据模型转换方法。
41.第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上述第一方面所述的数据模型转换方法。
42.第五方面,本技术提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现如上述第一方面所述的数据模型转换方法。
43.本技术提供的数据模型转换方法、装置、设备及介质,根据业务场景,确定用于构建图数据模型的业务数据;根据业务场景的关系型数据模型,确定业务数据对应的业务实体关系,其中,业务实体关系包括业务实体、业务实体的实体属性、业务实体之间的关联关系;根据业务实体关系,构建图数据模型。如此,实现将业务系统的数据统计模型从结构复杂的、查询效率低的关系型数据库,转换为结构简化、数据查询能力强的图数据模型。其中,图数据模型的节点层包括查询层和业务层,图数据模型的节点包括位于查询层的查询节点和位于业务层的业务节点,查询节点对应多个业务查询维度,业务节点对应业务查询数据。从图数据模型的结构可以看出,图数据模型可实现多维度的业务查询,而且能够有效提高查询效率。
附图说明
44.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
45.图1为本技术实施例提供的应用场景示意图;
46.图2为本技术实施例提供的数据模型转换方法的流程示意图一;
47.图3a为本技术实施例提供的关系型数据库对应的e-r图的示例图;
48.图3b为本技术实施例提供的优化后的e-r图的示例图;
49.图4为本技术实施例提供的图数据模型的结构示例图;
50.图5为本技术实施例提供的多维度查询路径的示例图;
51.图6为本技术实施例提供的数据模型转换方法的流程示意图二;
52.图7为本技术实施例提供的节点拆分示例图;
53.图8为本技术实施例提供的节点合并示例图一;
54.图9为本技术实施例提供的节点合并示例图二;
55.图10为本技术实施例提供的数据模型转换装置的结构示意图;
56.图11为本技术实施例提供的一种电子设备的结构示意图。
57.通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。
具体实施方式
58.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
59.大型业务面临数据量大、业务逻辑复杂的情况。相关技术中,业务系统的数据统计模型采用关系型数据模型,即采用关系型数据结构及关系型数据库。然而,为承载复杂庞大的业务数据、业务逻辑,关系型数据结构及关系型数据库设计复杂、实体众多、实体间关系复杂,表间关系常用关联表或者冗余数据进行关联,在关系型数据结构及关系型数据库的基础上进行多维度的综合统计查询时,存在数据检索量大、响应时间较长、实时性不高等问题。
60.为解决上述问题,本技术提供了一种数据模型转换方法、装置、设备及介质。在本技术中,将业务系统的关系型数据模型,转换为图数据模型,其中,相较于关系型数据模型,图数据模型善于处理大量的复杂、互连接、低结构化数据,支持数据快速变化和数据频繁查询;相较于关系型数据库,图数据库善于维护实体间的复杂关联关系,整体模型复杂度达到降低,遍历关系网络能力强,且图数据库的查询分析操作能够保持常数级时间复杂度。因此,采用图数据模型代替传统关系型数据模型,可有效简化数据统计模型的复杂度,提高数据查询能力和效率,进而提高业务系统的性能,提高业务系统为用户提供服务的质量。
61.其中,图数据库是一种以图结构进行语义查询,使用图结构中的节点、边与属性来表示数据和存储数据的数据库。图数据模型是将数据记录作为节点,将数据记录之间的关系作为边,使用边将节点连接到一起所形成的图谱结构,可用于解决复杂关联的数据检索问题。
62.在本技术中,图数据模型的节点层包括查询层和业务层,图数据模型的节点包括位于查询层的查询节点和位于业务层的业务节点,查询节点对应多个查询维度,业务节点对应业务查询数据。如此,图数据模型结构清晰、查询逻辑简单,而且通过维护多个查询节点实现多维度查询,提高查询效率。
63.本技术实施例提供的数据模型转换方法,可以适用于图1所示的应用场景。如图1所示,应用场景涉及业务系统101、与业务系统101对应的数据统计模型102以及数据模型转换装置103。其中,业务系统101可基于数据统计模型102实现数据查询、数据存储等,数据模型转换装置103可将数据统计模型102从关系型数据模型转换为图数据模型。
64.数据模型转换装置103可为电子设备,电子设备可为终端和/或服务器。其中,终端可以是个人数字处理(personal digital assistant,简称pda)设备、手持设备(例如智能手机、平板计算机)、计算设备(例如个人计算机(personal computer,简称pc))、可穿戴设备(例如智能手表、智能手环)、以及智能家居设备(例如智能显示设备)等。服务器可以是分布式服务器、集中式服务器、云服务器等。
65.下面以具体地实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
66.其中,本技术中各方法实施例的执行主体为数据模型转换装置。
67.参考图2,图2为本技术实施例提供的数据模型转换方法的流程示意图一。如图2所示,该实施例提供的数据模型转换方法包括:
68.s201、根据业务场景,确定用于构建图数据模型的业务数据。
69.其中,业务场景例如银行的存款业务、信贷业务等。
70.本实施例中,可根据业务场景下的业务需求和/或业务指标,从大量数据中提取用于构建图数据模型的业务数据,该业务数据与图数据模型的待展示数据相关,图数据模型的待展示数据是指图数据模型所统计的业务数据。例如,以业务需求和/或业务指标作为查询关键字,在一个或多个业务数据库中,查询并获取用于构建图数据模型的业务数据。
71.其中,用于构建图数据模型的业务数据例如进行数据统计所需要的合约的余额、交易时间、交易状态、账户类型、处室等。
72.s202、根据业务场景的关系型数据模型,确定业务数据对应的业务实体关系,其中,业务实体关系包括业务实体、业务实体的实体属性、业务实体之间的关联关系。
73.其中,业务实体例如业务场景中的产品、合约等,业务实体的实体属性类产品的产品号、产品名称等,业务实体之间的关联关系例如某一产品属于某一合约这一从属关系。
74.本实施例中,在获得用于构建图数据模型的业务数据中,由于这些业务数据中的业务实体、业务实体之间的关系均体现在业务场景的关系型数据模型中,因此,需要基于业务场景的关系型数据模型和业务数据,对业务实体、业务实体的实体关系、业务实体之间的管理关系进行梳理。
75.在一种可行的实现方式中,由于关系型数据模型的模型结构复杂,可先对关系型数据模型进行梳理,得到关系型数据模型对应的实体-联系图(entity relationship diagram,e-r图);接着,基于业务数据,对关系型数据模型对应的e-r图进行字段以及业务实体的筛选,得到优化后的e_r图。其中,优化后的e-r图用于反映业务数据对应的业务实体关系。从而,一方面通过e-r图使得业务实体关系更为清晰、简明;另一方面,通过基于业务数据对关系型数据模型对应的e-r图进行字段以及业务实体的筛选的方式,使得e-r图更为简洁且与用于构建图数据模型的业务数据的关系更为紧密。
76.具体地,在筛选过程中,以业务数据中的字词作为关键字,从关系型数据模型对应的e-r图中筛选出与业务数据相关的字段以及字段归属表,字段归属表即字段所属的实体表,其中,业务实体可表现为实体表的形式,所以字段归属表可理解为业务实体,字段可理解为业务实体的业务属性。之后,保留关系型数据模型对应的e-r图中与业务数据相关的字段以及字段归属表,并删除关系型数据模型对应的e-r图中的其他数据。
77.作为示例地,图3a为本技术实施例提供的关系型数据库对应的e-r图的示例图,图3b为本技术实施例提供的优化后的e-r图的示例图。
78.如图3a所示,业务实体包括产品组、产品线、可售产品、产品a、汇率参数、客户、合约a、合约与参与人关系表、余额a、条件参数、外部服务标识a、合约类型配置、日终余额调整信息、账户余额类型信息;产品a的实体属性包括产品号、业务种类代码、可售产品名称、其他a、其他b、其他c;合约a的实体属性包括:币种、客户号、产品号、省市代码、合约号、生命周期状态码、其他a、其他b、其他c;余额a的实体属性包括顺序号、子合约号、合约号、币种代码、产品号、业务品种代码、次末动账日期、次末动账余额、合约账户余额、最后动账日期、账户余额类型、其他a、其他b、其他c;条件参数的实体属性包括条件参数号、生效日期、失效日
期、生命周期状态码、合约号、简单产品号、其他a、其他b、其他c;外部服务标识a的实体属性包括:合约号、子合约号、省市代码、金融实体代码、合约外部服务标识号码、其他a、其他b、其他c。
79.相较于图3a中关系型数据模型对应的e-r图,图3b中优化后的e-r图删除了如下业务实体:可售产品、合约与参与人关系表、合约类型配置、日终余额调整信息、账户余额类型信息,产品a、合约a、余额a、条件参数、外部服务标识这些业务实体的实体属性也减少了。可见,e-r图的结构明显简化了,能够更清晰、紧密地体现出业务数据对应的业务实体关系。
80.s203、根据业务实体关系,构建图数据模型。
81.本实施例中,在得到业务数据对应的业务实体关系后,以业务实体关系中的业务实体为图数据模型中的节点,以业务实体的实体属性为图数据模型中节点的节点属性,以业务实体之间的关系为图数据模型中的边,构建得到图数据模型。换句话说,以实体表为节点、以实体表的字段为节点属性、以实体表的表间关联作为边,构建得到图数据模型。
82.其中,图数据模型的节点层包括查询层和业务层,图数据模型的节点包括位于查询层的查询节点和位于业务层的业务节点,查询节点对应多个业务查询维度,业务节点对应业务查询数据。
83.其中,业务查询维度相当于业务查询角度,不同的业务查询维度为不同的查询条件(或称为查询业务种类,其中,每一个条件代表一个查询业务种类),比如,币种维度、产品类别维度等;业务查询数据相当于业务查询结果(或者称为待查询业务数据),比如查询到具体的币种、具体的产品。
84.在图数据模型中,查询层位于图数据模型的外层,业务层位于图数据模型的内层,多维度的查询路径需要交汇到常用的业务节点。因此,对于一组业务数据而言,图数据模型的结构类似于星形结构。在基于图数据模型进行业务查询时,从查询节点依次查询至业务层,最终得到业务查询数据。
85.所以,在构建图数据模型时,将可具备业务查询维度特征的业务实体确定为查询节点,将具备业务查询数据特征的业务实体确定为业务节点,将查询节点设置在图数据模型的外层,将业务节点设置在图数据模型的内层。
86.作为示例地,图4为本技术实施例提供的图数据模型的结构示例图。如图4所示,图数据模型的外圈为查询层、内圈为业务层,查询层包括查询维度a、查询维度b、查询维度c、查询维度d、查询维度e、查询维度f这些查询维度对应的查询节点,业务层包括业务实体a、业务实体b、业务实体c、业务实体d、核心业务实体e这些业务实体对应的业务节点。其中,核心业务实体是多维度查询路径的交汇点。
87.可选地,查询节点包括查询头节点和查询实体节点,一个查询维度可由一组查询头节点和查询实体节点组成,其中,在图数据模型中,可包括多个同类型的查询头节点和多个查询实体节点。一组查询头节点和查询实体节点可加注同一种标签。从而,通过将查询节点细分为查询头节点和查询实体节点,能够实现更细粒度、更全面、更准确的业务查询。其中,查询头节点相当于是业务大类、查询实体节点相当于是业务大类下的细分类别。
88.例如,查询头节点包括《币种头节点:综合币种a》、《币种头节点:综合币种b》,在《币种头节点:综合币种a》这一查询头节点下,可对应查询实体节点《币种=子币种a》、《币种=子币种b1》、《币种=子币种b2》,在《币种头节点:综合币种b》这一查询头节点下,可对应
查询实体节点《币种=子币种b1》、《币种=子币种b2》。所以,如图5(图5为本技术实施例提供的多维度查询路径的示例图。)所示,在查询层,查询维度可包括:《币种头节点:综合币种a》

《币种=子币种a》,《币种头节点:综合币种a》

《币种=子币种b1》,《币种头节点:综合币种a》

《币种=子币种b2》、《币种头节点:综合币种b》

《币种=子币种b1》,《币种头节点:综合币种b》

《币种=子币种b2》。
89.综上,对图数据模型中的概念的总结如下:
90.查询维度:每个查询条件代表一个查询业务种类,称为图数据模型的一个查询维度;一个查询维度可由一组查询头节点+查询实体节点组成,可有多个同类型查询头节点与多个查询实体节点,一组查询头节点+查询实体节点可加注同一种标签。
91.多维度查询路径交汇点:核心业务实体对应的业务节点,是图数据模型的主要的待统计查询数据的业务载体,比如合约。
92.多维度查询路径:多维度查询路径串联查询节点和与该查询节点相关的业务节点。在图数据模型中,每一个查询维度必与某个业务节点建立关系,多维度查询路径的终端可为多维度查询路径交汇点。例如,多维度查询路径包括:《币种头节点:综合币种a》

《币种=子币种a》

《合约》。
93.作为示例地,如图5所示,查询维度a对应币种查询,查询维度b对应产品分类查询,从查询维度a和查询维度b可以查询到业务节点群中的各个业务节点。具体的,在查询维度a一侧,可通过币种头节点:综合币种a、综合币种b,查询到查询实体节点:子币种a、子币种b1、子币种b2,再查询到业务节点:合约a、合约b、合约c;在查询维度b一侧,可通过币种头节点:产品线a,查询到查询实体节点;产品组a,再查询到业务节点:产品a、产品b,再查询到业务节点:合约a、合约b、合约c。
94.本技术实施例中,基于业务场景下的关系型数据模型中纷繁复杂的业务实体及业务实体间的关联关系,利用图模型思维进行业务实体关系的提取、归纳和模型构建,得到能够实现多维数据统计和多维数据查询的图数据模型,有效地降低数据统计模型的复杂度,增大数据统计模型的可读性与可扩展性,提高了基于数据统计模型进行业务查询的效率。
95.参考图6,图6为本技术实施例提供的数据模型转换方法的流程示意图二。如图6所示,该实施例提供的数据模型转换方法包括:
96.s601、根据业务场景,确定用于构建图数据模型的业务数据;
97.s602、根据业务场景的关系型数据模型,确定业务数据对应的业务实体关系,其中,业务实体关系包括业务实体、业务实体的实体属性、业务实体之间的关联关系。
98.s603、以业务实体为节点、业务实体的实体属性为节点属性、以业务实体之间的关联关系为边,初步构建得到图数据模型。
99.其中,s601~s603的实现原理和技术效果可参照前述实施例。不再赘述。
100.在一种可行的实现方式中,如图6所示,s603包括s6031~s6033:
101.s6031、在图数据模型中,建立业务实体对应的业务节点,并将业务实体的实体属性存储至业务实体对应的业务节点。
102.在s6031中,图数据模型中的节点作为存储单元,其中,业务节点用于存储业务实体的实体属性。因此,在梳理得到业务数据对应的业务实体关系后,可根据业务实体关系中的业务实体,建立与业务实体对应的业务节点,并将业务实体的实体属性存储至业务节点
中。
103.s6032、从业务实体中提取业务类别,建立业务类别对应的查询节点,并将业务类别存储至查询节点。
104.在s6032中,在业务实体中包括可动态变化的业务信息,也可包括静态不变的业务信息,比如,产品、合约可以随着业务开展而发生动态的变化,比如币种、产品组不会随着业务开展而发生动态变化。因此,可从业务实体中提取出静态不变的业务类别(比如币种、产品组),建立业务类别对应的查询节点,将业务类别存储至查询节点。其中,查询节点相当于业务静态节点,由于业务类别静态不变,查询节点也保持不变,提高了查询节点的稳定性,进而提高了查询维度的稳定性。并且,通过模糊掉分类的概念,将业务节点的业务类别抽离业务节点而单独业务静态实体节点(即查询节点)的方式,有效地降低了业务节点的复杂度。
105.s6033、建立连接业务类别对应的查询节点与业务实体对应的业务节点的边,并建立连接存在关联关系的业务节点的边。
106.在s6033中,在建立业务节点和查询节点后,基于业务类别与业务实体之间的逻辑关系,即关联关系,建立用于连接业务类别对应的查询节点与业务实体对应的业务节点的边,并建立存在关联关系的业务节点的边。如此,初步构建得到图数据模型。
107.s604、对图数据模型进行优化操作,得到优化后的图数据模型,其中,优化操作包括如下至少一种:节点拆分操作、节点合并操作、孤点处理操作。
108.其中,节点拆分操作是指将图数据模型中的一个节点拆分为至少两个节点,节点合并操作指示将图数据模型中的至少两个节点合并至一个节点,孤点处理操作是指对图数据模型中位于其他任何节点连接的节点进行处理。
109.本实施例中,初步建立的图数据模型还可能存在节点冗余、节点不够细化等缺点,因此可对图数据模型中的各个节点进行遍历,并对遍历到的节点指向如下至少一种操作:确定节点是否符合节点拆分条件,如果符合节点拆分条件,则对该节点进行节点拆分操作;确定节点是否符合节点合并条件,如果符合节点合并条件,则对该节点进行节点合并操作;确定节点是否为孤点,如果节点是孤点,则对该节点进行孤点处理操作。如此,通过节点拆分、节点合并和/或孤点处理,提高图数据模型的结构合理性。
110.在一种可行的实现方式中,在优化操作包括节点拆分操作的情况下,对图数据模型进行优化操作,包括:在图数据模型中,确定存在冗余数据的待优化节点;在业务场景的实体类型中,确定冗余数据所属的目标实体类型;建立目标实体类型对应的业务节点,并将冗余数据存储至目标实体类型对应的业务节点;建立连接待优化节点与目标实体类型对应的业务节点的边;在待优化节点中删除冗余数据。
111.本实现方式中,在关系型数据模型中,业务实体中可能存在冗余数据,这部分冗余数据比如实为用于表示表间关联关系的表间关联数据,因此,基于关系型数据模型建立得到的图数据模型的节点中也可能存在冗余数据。为简化图数据模型中的节点,使得图数据模型的逻辑清晰,需对这冗余数据进行分离。可通过将节点中的冗余数据提取出来,构建用于存放冗余数据的新节点的方式,实现对冗余数据的分离。
112.首先,在图数据模型中,确定存在冗余数据的待优化节点,例如,可判断节点中的存储数据是否包括冗余数据,如果存在则确定该节点为待优化节点。接着,在业务场景的实
体类型中,识别待优化节点中的冗余数据所属的实体类型,为便于区分,将待优化节点中的冗余数据所属的实体类型称为目标实体类型。之后,建立目标实体类型对应的业务节点,该业务节点为新增节点,将冗余数据存储至该业务节点中;由于冗余数据是从待优化节点中分离出来的,表明冗余数据与待优化节点存在一定的关联关系,建立连接待优化节点与目标实体类型对应的业务节点的边。最终,从待优化节点中删除冗余数据,完成对待优化节点的优化,使得待优化节点的数据更为简洁单一。
113.可选地,除了建立连接待优化节点与目标实体类型对应的业务节点的边,还可建立连接目标实体类型对应的业务节点与目标实体类型所属的业务类别对应的查询节点的边,以完善图数据模型中节点之间关联关系。
114.作为示例地,图7为本技术实施例提供的节点拆分示例图。如图7所示,在合约节点中存储了“省市代码:a市”这一冗余数据,可识别该冗余数据的实体类型,在识别“省市代码:a市”所属的实体类型为机构之后,建立机构对应的业务节点,并将“省市代码:a市”存储至机构对应的业务节点。之后,建立机构对应的业务节点与合约节点之间的边,建立机构对应的业务节点与机构头节点之间的边。其中,机构头节点存储“区域类型:直辖市”。
115.在一种可行的实现方式中,在优化操作包括节点合并操作的情况下,对图数据模型进行优化操作,包括:在图数据模型中,确定满足合并条件的第一节点和第二节点,其中,合并条件包括:第一节点与第二节点存在关联关系、第二节点与除第一节点以外的剩余节点不存在关联关系以及无需对第一节点和第二节点进行单独的数据处理;对第一节点和第二节点进行合并。
116.其中,第一节点与第二节点存在关联关系,即第一节点与第二节点之间存在边;第二节点与除第一节点以外的剩余节点不存在关联关系,即第二节点仅连接第一节点;无需对第一节点和第二节点进行单独的数据处理,表示可对第一节点和第二节点一起进行数据处理(比如数据运算)。
117.本实现方式中,如果第二节点仅与第一节点有关联,又在统计维度、数据加工过程中对第二节点没有独立计算的特殊要求,则需要考虑合并第一节点与第二节点。从而,减少不必要的节点,提高图数据模型的简洁性。
118.进一步的,对第一节点和第二节点进行合并,包括:根据第一节点对应的业务优先级和第二节点对应的业务优先级,在第一节点和第二节点中确定主节点和从属节点;将从属节点合并至主节点。
119.其中,业务节点对应的业务优先级可包含在业务节点的节点属性中,也可以根据业务节点所属的业务类别,即业务节点所连接的查询节点,来确定业务节点对应的业务优先级,也可以由用户输入业务节点对应的业务优先级。
120.在本合并方式中,确定第一节点对应的业务优先级和第二节点对应的业务优先级。比较第一节点对应的业务优先级和第二节点对应的业务优先级,如果第一节点对应的业务优先级高于第二节点对应的业务优先级,则确定第一节点为主节点,确定第二节点为从属节点;否则,确定第一节点为从属节点,第二节点为主节点。之后,将从属节点合并至主节点中,主节点要集成从属节点与其他节点的关联关系。
121.进一步的,将从属节点合并至主节点,包括:在确定主节点与从属节点的关联关系为一对一关联关系的情况下,将从属节点合并至主节点;若从属节点不属于主节点的共享
实体或者共享属性,则在将从属节点合并至主节点的过程中,在主节点中添加从属节点对应的合并标签。从而,通过合并标签来标识主节点中添加了不属于共享实体或者共享属性的从属节点,以和未添加这部分内容的节点进行区分。
122.进一步的,在确定主节点与从属节点的关联关系为一对多关联关系的情况下,对从属节点与主节点不进行合并,并建立连接从属节点与主节点的边。从而,在确定主节点与从属节点的关联关系为一对多关联关系的情况下,虽然不合并主节点和从属节点,但可以通过建立连接从属节点与主节点的边的方式,来完善图数据模型的结构。其中,主节点与从属节点的关联关系为一对多关联关系是指主节点对应多个从属节点。
123.作为示例地,根据业务节点c对应的业务优先级和业务节点d对应的业务优先级,确定业务节点c为主节点,业务节点d为从属节点。之后,可对业务节点c和业务节点d做如下处理:
124.如果业务节点c和业务节点d的对应关系为1:n,则不合并业务节点c和业务节点d,为业务节点c和业务节点d的每个对应关系创建一条边。例如,业务系统存在合约表与冻结记录表,冻结记录仅与合约的冻结状态关联,但合约与冻结记录是1:n的关系,因此冻结记录表与合约表不合并,为每一条冻结记录创建一个业务实体节点,并建立与合约节点的关系。
125.如果业务节点c和业务节点d的对应关系为1:1且业务节点d为通用实体/属性(即共享实体/共享属性),则可将业务节点d直接合并到业务节点c中。例如,图8为本技术实施例提供的节点合并示例图一,如图8所示,合约节点与余额节点满足合并条件,且余额节点属于合约节点的通用属性,将余额节点直接合并至合约节点,即将余额节点的节点属性“最后动账日期:xx、最后动账余额:xx”存储至合约节点中。
126.如果业务节点c和业务节点d的对应关系为1:1且业务节点d为非通用实体/属性,则可将业务节点d直接合并到业务节点c中,在业务节点c上加注专属标签(label:d)以示区别。从而,通过该方式可以拓展业务实体节点的信息存储维度,即用多标签(label)加注合并多实体属性后的综合实体,标识该实体拥有何种专有实体属性,便于使用图数据库查询语句进行多类别多条件的筛选查询。
127.作为示例地,图9为本技术实施例提供的节点合并示例图二,如图9所示,合约节点包括合约a、合约b和合约c,条件参数节点包括条件参数a、条件参数b和条件参数c,条件参数节点的节点属性包括“参数:xxx”。其中,合约a与条件参数a满足合并条件,合约b与条件参数b、条件参数c满足合并条件。由于条件参数节点中的参数不属于合约节点的通用属性,所以将条件参数a合并至合约a之后,可为合约a添加标签a,表示合约a合并了条件参数a;将条件参数b和条件参数c合并至合约b后,可为合约b添加标签b,表示合约b合并了条件参数b和条件参数c。
128.在一种可行的实现方式中,在优化操作包括孤点处理操作的情况下,对图数据模型进行优化操作,包括:对孤点与图数据模型中的剩余节点的潜在关联关系进行挖掘,根据孤点与剩余节点之间的潜在关联关系,建立孤点与剩余节点之间的边;或者,根据业务逻辑,确定孤点与图数据模型中的业务节点之间的关联关系,根据孤点与业务节点之间的关联关系,建立孤点与业务节点之间的边。进一步的,如果孤点与图数据模型中的业务节点无直接的业务逻辑,则可在关系型数据模型中查找孤点与业务节点之间的间接业务逻辑,将
间接业务逻辑对应的字段一并添加至图数据模型中,并与孤点建立关系;或者,针对孤点新建查询节点,将新建的查询节点作为孤点与图数据模型的连接节点,建立新建的查询节点与孤点之间的边。从而,解决图数据模型中的孤点,提高图数据模型的模型完整性。
129.下述为本技术装置实施例,可以用于执行本技术对应的方法实施例。对于本技术装置实施例中未披露的细节,请参照本技术对应的方法实施例。
130.图10为本技术实施例提供的数据模型转换装置的结构示意图。如图10所示,本实施例提供的数据模型转换装置1000,包括:
131.业务数据确定模块1001,用于根据业务场景,确定用于构建图数据模型的业务数据,图数据模型的模型类型属于图数据模型;
132.实体关系确定模块1002,用于根据业务场景的关系型数据模型,确定业务数据对应的业务实体关系,其中,业务实体关系包括业务实体、业务实体的实体属性、业务实体之间的关联关系;
133.构建模块1003,用于根据业务实体关系,构建图数据模型;
134.其中,图数据模型的节点层包括查询层和业务层,图数据模型的节点包括位于查询层的查询节点和位于业务层的业务节点,查询节点对应多个业务查询维度,业务节点对应业务查询数据。
135.在一种可行的实现方式中,构建模块1003具体用于:以业务实体为节点、业务实体的实体属性为节点属性、以业务实体之间的关联关系为边,初步构建得到图数据模型;对图数据模型进行优化操作,得到优化后的图数据模型,其中,优化操作包括如下至少一种:节点拆分操作、节点合并操作、孤点处理操作。
136.在一种可行的实现方式中,在以业务实体为节点、业务实体的实体属性为节点属性、以业务实体之间的关联关系为边,初步构建得到图数据模型的过程中,构建模块1003具体用于:在图数据模型中,建立业务实体对应的业务节点,并将业务实体的实体属性存储至业务实体对应的业务节点;从业务实体中提取业务类别,建立业务类别对应的查询节点,并将业务类别存储至查询节点;建立连接业务类别对应的查询节点与业务实体对应的业务节点的边,并建立连接存在关联关系的业务节点的边。
137.在一种可行的实现方式中,优化操作包括节点拆分操作,在对图数据模型进行优化操作的过程中,构建模块1003具体用于:在图数据模型中,确定存在冗余数据的待优化节点;在业务场景的实体类型中,确定冗余数据所属的目标实体类型;建立目标实体类型对应的业务节点,并将冗余数据存储至目标实体类型对应的业务节点;建立连接待优化节点与目标实体类型对应的业务节点的边;在待优化节点中删除冗余数据。
138.在一种可行的实现方式中,优化操作包括节点合并操作,在对图数据模型进行优化操作的过程中,构建模块1003具体用于:在图数据模型中,确定满足合并条件的第一节点和第二节点,合并条件包括:第一节点与第二节点存在关联关系、第二节点与除第一节点以外的剩余节点不存在关联关系以及无需对第一节点和第二节点进行单独的数据处理;对第一节点和第二节点进行合并。
139.在一种可行的实现方式中,在对第一节点和第二节点进行合并的过程中,构建模块1003具体用于:根据第一节点对应的业务优先级和第二节点对应的业务优先级,在第一节点和第二节点中确定主节点和从属节点;将从属节点合并至主节点。
140.在一种可行的实现方式中,在将从属节点合并至主节点的过程中,构建模块1003具体用于:在确定主节点与从属节点的关联关系为一对一关联关系的情况下,将从属节点合并至主节点,其中,若从属节点不属于主节点的共享实体或者共享属性,则在将从属节点合并至主节点的过程中,在主节点中添加从属节点对应的合并标签;在确定主节点与从属节点的关联关系为一对多关联关系的情况下,对从属节点与主节点不进行合并,并建立连接从属节点与主节点的边。
141.值得说明的,上述各实施例提供的数据模型转换装置,可用于执行上述任一实施例提供的数据模型转换方法中的各步骤,具体实现方式和技术效果类似,这里不再赘述。
142.本技术所提供的上述各装置实施例仅仅是示意性的,其中的模块划分仅仅是一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个模块可以结合或者可以集成到另一个系统。各个模块相互之间的耦合可以是通过一些界面实现,这些界面通常是电性通信界面,但是也不排除可能是机械界面或其他的形式界面。因此,作为分离部件说明的模块可以是或者也可以不是物理上分开的,既可以位于一个地方,也可以分布到同一个或不同设备的不同位置上。
143.图11为本技术实施例提供的一种电子设备的结构示意图。如图11所示,该电子设备1100可以包括:至少一个处理器1101和存储器1102。图11示出的是以一个处理器为例的电子设备。
144.存储器1102,用于存放处理器1101的程序。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。
145.存储器1102可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
146.处理器1101配置为用于执行存储器902存储的计算机程序,以实现以上各方法实施例中数据模型转换方法中的各步骤。
147.其中,处理器1101可能是一个中央处理器(central processing unit,简称为cpu),或者是特定集成电路(application specific integrated circuit,简称为asic),或者是被配置成实施本技术实施例的一个或多个集成电路。
148.可选地,存储器1102既可以是独立的,也可以跟处理器1101集成在一起。当存储器1102是独立于处理器1101之外的器件时,电子设备1100,还可以包括:总线1103,用于连接处理器1101以及存储器1102。总线可以是工业标准体系结构(industry standard architecture,简称为isa)总线、外部设备互连(peripheral component,pci)总线或扩展工业标准体系结构(extended industry standard architecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等,但并不表示仅有一根总线或一种类型的总线。
149.可选的,在具体实现上,如果存储器1102和处理器1101集成在一块芯片上实现,则存储器1102和处理器1101可以通过内部界面完成通信。
150.本技术还提供了一种计算机可读存储介质,该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁盘或者光盘等各种可以存储程序代码的介质,具体的,该计算机可读存储介质中存储有计算机执行指令,当电子设备的至少一个处理器执行该计算机指令时,电子设备执行上述的各种实施方式提供的数据模型转换方法的各个步骤。
151.本技术实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在可读存储介质中。电子设备的至少一个处理器可以从可读存储介质读取该计算机程序,至少一个处理器执行该计算机程序使得电子设备实施上述的各种实施方式提供的数据模型转换方法的各个步骤。
152.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本技术的其他实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术的真正范围和精神由下面的权利要求书指出。
153.应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求书来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1