多源树形数据和链式数据的合并溯源方法、装置及设备与流程

文档序号:33561004发布日期:2023-03-22 14:20阅读:30来源:国知局
多源树形数据和链式数据的合并溯源方法、装置及设备与流程

1.本发明实施例涉及数据处理技术领域,具体涉及一种多源树形数据和链式数据的合并溯源方法、装置及设备。


背景技术:

2.通常企业中会包括多个组织部门,各组织部门中通常会运行多个系统,也就是说企业中数据来源多样化。在进行数据化决策时,通常需要对多种来源的数据进行综合分析。不同来源的数据通常具有不同的数据结构,树形数据结构和链式数据结构是两种常用的数据结构。对树形数据和链式数据的统一分析对于企业的数据分析来说具有重要意义。
3.现有技术中通常由源系统各自处理各自来源的数据,即由数据提供方对数据进行处理,按照数据接收方的要求进行统一归并,这种方式数据处理效率低下,尤其是当源系统需要向多个数据接收方提供数据时表现尤为明显。


技术实现要素:

4.本发明实施例提供一种多源树形数据和链式数据的合并溯源方法、装置及设备,用以解决现有技术中数据处理效率低下的问题。
5.第一方面,本发明实施例提供一种多源树形数据和链式数据的合并溯源方法,包括:
6.获取待处理的多源数据,多源数据的数据结构包括树形数据结构和链式数据结构;
7.根据预设规则确定多源数据的层级信息;
8.对多源数据中具有相同层级信息的数据节点进行合并,得到合并后的数据;
9.将合并后的数据存入数据库中。
10.一种实施例中,所述方法还包括:
11.获取待处理的增量数据,增量数据的数据结构为树形数据结构或者链式数据结构;
12.根据预设规则确定增量数据的层级信息;
13.将增量数据与合并后的数据中具有相同层级信息的数据节点进行合并,得到增量合并后的数据;
14.根据增量合并后的数据对数据库中存储的数据进行更新。
15.一种实施例中,所述方法还包括:
16.从数据库中获取目标节点的相关数据;
17.遍历目标节点的子节点;
18.遍历子节点的父节点,父节点的深度小于目标节点的深度;
19.将遍历到的节点数据确定为目标节点的深层节点信息。
20.一种实施例中,所述方法还包括:
21.从目标节点的深层节点信息中获取层级深度为1的节点数据,得到目标节点的单层节点信息。
22.一种实施例中,待处理的多源数据源自应用程序接口、结构化查询语言或者页面数据。
23.第二方面,本发明实施例提供一种多源树形数据和链式数据的合并溯源装置,包括:
24.获取模块,用于获取待处理的多源数据,多源数据的数据结构包括树形数据结构和链式数据结构;
25.确定模块,用于根据预设规则确定多源数据的层级信息;
26.合并模块,用于对多源数据中具有相同层级信息的数据节点进行合并,得到合并后的数据;
27.存储模块,用于将合并后的数据存入数据库中。
28.一种实施例中,获取模块,还用于获取待处理的增量数据,增量数据的数据结构为树形数据结构或者链式数据结构;
29.确定模块,还用于根据预设规则确定增量数据的层级信息;
30.合并模块,还用于将增量数据与合并后的数据中具有相同层级信息的数据节点进行合并,得到增量合并后的数据;
31.存储模块,还用于根据增量合并后的数据对数据库中存储的数据进行更新。
32.一种实施例中,所述装置还包括遍历模块;
33.获取模块,还用于从数据库中获取目标节点的相关数据;
34.遍历模块,用于遍历目标节点的子节点;
35.遍历模块,还用于遍历子节点的父节点,父节点的深度小于目标节点的深度;
36.确定模块,还用于将遍历到的节点数据确定为目标节点的深层节点信息。
37.第三方面,本发明实施例提供一种电子设备,包括:
38.至少一个处理器和存储器;
39.存储器存储计算机执行指令;
40.至少一个处理器执行存储器存储的计算机执行指令,使得至少一个处理器执行如第一方面任一项所述的多源树形数据和链式数据的合并溯源方法。
41.第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现如第一方面任一项所述的多源树形数据和链式数据的合并溯源方法。
42.本发明实施例提供的多源树形数据和链式数据的合并溯源方法、装置及设备,通过获取待处理的多源数据,并根据预设规则确定多源数据的层级信息,再对多源数据中具有相同层级信息的数据节点进行合并,得到合并后的数据,最后将合并后的数据存入数据库中。基于层级信息实现了对链式数据和树形数据的数据整合,无需源系统再对数据分别进行处理,提高了数据处理效率。在数据来源多源化,数据构成混乱的场景下或者数据处理资源紧张的情况下,可以用来对数据层级结构进行梳理和清洗。可以处理几乎所有的层级链路结构数据,具有更高的兼容性;相较于针对大体量数据的重量级数据处理系统来说,本实施例提供的方法部署方便,需求资源小,轻量级对于使用环境和部署配置的要求更低。
附图说明
43.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
44.图1为本发明一实施例提供的多源树形数据和链式数据的合并溯源方法的流程图;
45.图2为本发明一实施例提供的合并过程示意图;
46.图3为本发明又一实施例提供的多源树形数据和链式数据的合并溯源方法的流程图;
47.图4为本发明又一实施例提供的合并过程示意图;
48.图5为本发明另一实施例提供的多源树形数据和链式数据的合并溯源方法的流程图;
49.图6为本发明另一实施例提供的处理过程示意图;
50.图7为本发明一实施例提供的多源树形数据和链式数据的合并溯源装置的结构示意图;
51.图8为本发明一实施例提供的电子设备的结构示意图。
52.通过上述附图,已示出本发明明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本发明构思的范围,而是通过参考特定实施例为本领域技术人员说明本发明的概念。
具体实施方式
53.下面通过具体实施方式结合附图对本发明作进一步详细说明。其中不同实施方式中类似元件采用了相关联的类似的元件标号。在以下的实施方式中,很多细节描述是为了使得本技术能被更好的理解。然而,本领域技术人员可以毫不费力的认识到,其中部分特征在不同情况下是可以省略的,或者可以由其他元件、材料、方法所替代。在某些情况下,本技术相关的一些操作并没有在说明书中显示或者描述,这是为了避免本技术的核心部分被过多的描述所淹没,而对于本领域技术人员而言,详细描述这些相关操作并不是必要的,他们根据说明书中的描述以及本领域的一般技术知识即可完整了解相关操作。
54.另外,说明书中所描述的特点、操作或者特征可以以任意适当的方式结合形成各种实施方式。同时,方法描述中的各步骤或者动作也可以按照本领域技术人员所能显而易见的方式进行顺序调换或调整。因此,说明书和附图中的各种顺序只是为了清楚描述某一个实施例,并不意味着是必须的顺序,除非另有说明其中某个顺序是必须遵循的。
55.本文中为部件所编序号本身,例如“第一”、“第二”等,仅用于区分所描述的对象,不具有任何顺序或技术含义。而本技术所说“连接”、“联接”,如无特别说明,均包括直接和间接连接(联接)。
56.实施例一
57.图1为本发明一实施例提供的多源树形数据和链式数据的合并溯源方法的流程图。本实施例提供的方法可以应用于数据接收方。如图1所示,本实施例提供的多源树形数据和链式数据的合并溯源方法可以包括:
58.s101、获取待处理的多源数据,多源数据的数据结构包括树形数据结构和链式数
据结构。
59.本实施例中待处理的多源数据可以源自应用程序接口(application programming interface,api)、结构化查询语言(structured query language,sql)或者页面数据。本实施例中待处理的数据可以来自多个源系统,因此可以异步地从不同的源系统中来获取数据。
60.本实施例中多源数据的数据结构包括树形数据结构和链式数据结构。其中,链式数据结构是指多个数据线性、有序的组合,在链式数据结构中,数据之间关系是一对一的;树形数据结构是指多个数据如同树一样形成的有序组合,在树形数据结构中可以分为父节点和子节点,通常情况下,一个父节点可以关联多个子节点。本实施例中的树形数据结构还包括逆树。请参考图2中(a)所示,一实施例中可以通过api获取一链式数据,在获取数据之后可以将其存入数据库中;还可以通过sql获取一树形数据,同样在获取数据之后可以将其存入数据库中。
61.s102、根据预设规则确定多源数据的层级信息。
62.本实施例中预设规则例如可以是预设数据类型与层级信息之间的映射关系,具体的如组织部门数据类型对应1级,用户数据类型对应2级,系统数据类型对应3级等。本实施例中预设规则例如还可以是预设解析规则,通过对多源数据进行解析获取多源数据对应的层级信息。请参考图2中(b)所示,根据预设规则得到源自api的链式数据第一个节点的层级信息为1级;根据预设规则得到源自sql的树形数据的父节点的层级信息为1级,最右侧孙子节点的层级信息为3级。
63.s103、对多源数据中具有相同层级信息的数据节点进行合并,得到合并后的数据。
64.对多源数据中具有相同层级信息的数据节点进行合并,如图2中(b)所示的链式数据中层级信息为1级的数据节点与树形数据中层级信息为1级的父节点,可以将两个数据节点合并为一个新的数据节点,同时保留原有数据节点之间的连接关系,如图2中(c)所示,合并后将得到虚线框中所示的数据。通过对多源数据中具有相同层级信息的数据节点进行合并,可以收缩原始数据的结构,例如可以减少数据节点的数量。
65.s104、将合并后的数据存入数据库中。
66.在得到合并后的数据之后,可以将合并后的数据存入数据库中,更行之前的存储信息。如图2中(c)所示,将虚线框中合并后的数据存入数据库中。
67.本实施例提供的多源树形数据和链式数据的合并溯源方法,通过获取待处理的多源数据,并根据预设规则确定多源数据的层级信息,再对多源数据中具有相同层级信息的数据节点进行合并,得到合并后的数据,最后将合并后的数据存入数据库中。基于层级信息实现了对链式数据和树形数据的数据整合,无需源系统再对数据分别进行处理,提高了数据处理效率。在数据来源多源化,数据构成混乱的场景下或者数据处理资源紧张的情况下,可以用来对数据层级结构进行梳理和清洗。可以处理几乎所有的层级链路结构数据,具有更高的兼容性;相较于针对大体量数据的重量级数据处理系统来说,本实施例提供的方法部署方便,需求资源小,轻量级对于使用环境和部署配置的要求更低。
68.实施例二
69.可以理解的是,在对多源数据中具有相同层级信息的数据节点进行合并,得到合并后的数据之后,随着时间的推移,系统功能的不断完善等,毫无疑问地还会产生新的待处
理数据。在上述实施例的基础上,为了进一步提高数据处理效率,本实施例针对增量数据的合并进行了进一步说明。请参考图3,图3为本发明又一实施例提供的多源树形数据和链式数据的合并溯源方法的流程图。如图3所示,本实施例提供的方法在图1所示实施例的基础上,还可以包括:
70.s301、获取待处理的增量数据,增量数据的数据结构为树形数据结构或者链式数据结构。
71.本实施例中的增量数据例如可以是在步骤s103之后,即在对多源数据中具有相同层级信息的数据节点进行合并,得到合并后的数据之后,数据接收方新接收到的待处理出具;也可以是在步骤s103中未进行合并的剩余数据,如一次获取的待处理多源数据量过大,进行分批次处理。请参考图4中(a)所示,一实施例中可以从页面数据中获取一树形数据,该树形数据为逆树,在获取数据之后可以将其存入数据库中。
72.s302、根据预设规则确定增量数据的层级信息。
73.本实施例中可以根据与步骤s102中相同的预设规则来确定增量数据的层级信息。请参考图4中(b)所示,根据预设规则得到源自页面数据的树形数据最下端节点的层级信息为3级,左上端处节点的层级信息为1级。
74.s303、将增量数据与合并后的数据中具有相同层级信息的数据节点进行合并,得到增量合并后的数据。
75.本实施例中可以将增量数据与步骤s103中得到的合并后的数据中具有相同层级信息的数据节点合并为一个新的数据节点,同时保留原有数据节点之间的连接关系。请参考图4中(c)所示,可以将图2中(c)得到的合并后的数据中层级信息分别为1和3的数据节点与图4中(b)所示的增量数据中层级信息分别为1和3的数据节点分别进行合并,合并后可以得到虚线框中所示的增量合并后的数据。通过对增量数据与合并后的数据中具有相同层级信息的数据节点进行合并,可以进一步收缩数据结构。
76.s304、根据增量合并后的数据对数据库中存储的数据进行更新。
77.在得到增量合并后的数据之后,可以根据增量合并后的数据对数据库中存储的数据进行更新,例如可以使用图4中(c)所示的虚线框内的数据替换图2中(c)所示的虚线框内的数据。
78.本实施例提供的多源树形数据和链式数据的合并溯源方法,在上述实施例的基础上,进一步地通过获取待处理的增量数据,增量数据的数据结构为树形数据结构或者链式数据结构;根据预设规则确定增量数据的层级信息;将增量数据与合并后的数据中具有相同层级信息的数据节点进行合并,得到增量合并后的数据;根据增量合并后的数据对数据库中存储的数据进行更新,实现了对于增量数据的轻量级合并,进一步提高了数据处理效率。
79.实施例三
80.图5为本发明另一实施例提供的多源树形数据和链式数据的合并溯源方法的流程图。如图5所示,本实施例提供的方法,在上述任一实施例的基础上,还可以包括:
81.s501、从数据库中获取目标节点的相关数据。
82.本实施例中的目标节点可以为数据库中任一数据节点。请参考图6中(a)所示,以合并后得到的新的数据节点a作为目标节点,从数据库中获取到的目标节点的相关数据如
图6中(a)所示。
83.s502、遍历目标节点的子节点。
84.s503、遍历子节点的父节点,父节点的深度小于目标节点的深度。
85.通过遍历目标节点a的子节点以及小于目标节点a的深度的父节点,可以得到如图6中(b)所示的节点数据。
86.s504、将遍历到的节点数据确定为目标节点的深层节点信息。
87.一个节点的全部深层节点,除了这个节点的全部子节点,还包括子节点可以到达的、深度在目标节点之下的节点。以获取目标节点a的全部深层节点为例,那么需要先遍历a全部的子节点,再遍历所有子节点的父节点,以深度为遍历标记,最终可以得到如图6中(b)所示的数据结构,将其确定为目标节点a的深层节点信息。一种可选的实施方式中,还可以进一步地从目标节点的深层节点信息中获取层级深度为1的节点数据,得到目标节点的单层节点信息,以获取目标节点a的单层节点信息为例,可以得到如图6中(c)所示的数据结构,将其确定为目标节点a的单层节点信息。
88.通过层级信息和关联关系,可以将一个来源的数据与别的来源的数据进行关联,并达成父信息的追溯。例如在以下实际应用场景中:可以从api中获取组织部门和用户的一对多关系,从页面数据中获取系统和组织部门的一对多关系,借助于组织部门具有相同的层级信息,可以将源自api的数据和源自页面数据中的数据进行关联,并可以据此追溯用户所属的系统信息。
89.本实施例提供的多源树形数据和链式数据的合并溯源方法,在上述任一实施例的基础上,进一步地通过遍历目标节点的子节点,并继续遍历子节点的父节点,其中父节点的深度小于目标节点的深度,从而可以确定出目标节点的深层节点信息,进而实现了数据溯源。
90.实施例四
91.图7为本发明一实施例提供的多源树形数据和链式数据的合并溯源装置的结构示意图。如图7所示,本实施例提供的多源树形数据和链式数据的合并溯源装置70可以包括:获取模块701、确定模块702、合并模块703和存储模块704。
92.获取模块701,用于获取待处理的多源数据,多源数据的数据结构包括树形数据结构和链式数据结构;
93.确定模块702,用于根据预设规则确定多源数据的层级信息;
94.合并模块703,用于对多源数据中具有相同层级信息的数据节点进行合并,得到合并后的数据;
95.存储模块704,用于将合并后的数据存入数据库中。
96.本实施例的装置,可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
97.实施例五
98.在上述实施例的基础上,为了进一步提高数据处理效率,本实施例提供的多源树形数据和链式数据的合并溯源装置进一步实现了增量数据的合并。本实施例提供的多源树形数据和链式数据的合并溯源装置中,获取模块701还用于获取待处理的增量数据,增量数据的数据结构为树形数据结构或者链式数据结构;确定模块702还用于根据预设规则确定
增量数据的层级信息;合并模块703还用于将增量数据与合并后的数据中具有相同层级信息的数据节点进行合并,得到增量合并后的数据;存储模块704还用于根据增量合并后的数据对数据库中存储的数据进行更新。
99.本实施例的装置,可以用于执行图3所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
100.实施例六
101.在上述任一实施例的基础上,本实施例提供的多源树形数据和链式数据的合并溯源装置还可以包括遍历模块(图中未示出);具体的,获取模块701还用于从数据库中获取目标节点的相关数据;遍历模块用于遍历目标节点的子节点;遍历模块还用于遍历子节点的父节点,父节点的深度小于目标节点的深度;确定模块702还用于将遍历到的节点数据确定为目标节点的深层节点信息。
102.本实施例的装置,可以用于执行图5所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
103.实施例七
104.本发明实施例还提供一种电子设备,请参见图8所示,本发明实施例仅以图8为例进行说明,并不表示本发明仅限于此。图8为本发明一实施例提供的电子设备的结构示意图。如图8所示,本实施例提供的电子设备80可以包括:存储器801、处理器802和总线803。其中,总线803用于实现各元件之间的连接。
105.存储器801中存储有计算机程序,计算机程序被处理器802执行时可以实现上述任一方法实施例的技术方案。
106.其中,存储器801和处理器802之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可以通过一条或者多条通信总线或信号线实现电性连接,如可以通过总线803连接。存储器801中存储有实现多源树形数据和链式数据的合并溯源方法的计算机程序,包括至少一个可以软件或固件的形式存储于存储器801中的软件功能模块,处理器802通过运行存储在存储器801内的软件程序以及模块,从而执行各种功能应用以及数据处理。
107.存储器801可以是,但不限于,随机存取存储器(random access memory,简称:ram),只读存储器(read only memory,简称:rom),可编程只读存储器(programmable read-only memory,简称:prom),可擦除只读存储器(erasable programmable read-only memory,简称:eprom),电可擦除只读存储器(electric erasable programmable read-only memory,简称:eeprom)等。其中,存储器801用于存储程序,处理器802在接收到执行指令后,执行程序。进一步地,上述存储器801内的软件程序以及模块还可包括操作系统,其可包括各种用于管理系统任务(例如内存管理、存储设备控制、电源管理等)的软件组件和/或驱动,并可与各种硬件或软件组件相互通信,从而提供其他软件组件的运行环境。
108.处理器802可以是一种集成电路芯片,具有信号的处理能力。上述的处理器802可以是通用处理器,包括中央处理器(central processing unit,简称:cpu)、网络处理器(network processor,简称:np)等。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。可以理解,图8的结构仅为示意,还可以包括比图8中所示更多或者更少的组件,或者具有与
图8所示不同的配置。图8中所示的各组件可以采用硬件和/或软件实现。
109.本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行以实现上述任一方法实施例的技术方案。
110.本公开中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
111.本公开的保护范围不限于上述的实施例,显然,本领域的技术人员可以对本公开进行各种改动和变形而不脱离本公开的范围和精神。倘若这些改动和变形属于本公开权利要求及其等同技术的范围,则本公开的意图也包含这些改动和变形在内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1