本发明涉及数据存储,具体而言,涉及一种知识图谱数据的多路归并方法、装置、设备及介质。
背景技术:
1、知识图谱作为目前主流的知识存储介质之一,随着知识构建过程的自动化和作为资源库的互联网数据的膨胀,知识图谱数据量出现了大规模增长。利用紧凑存储结构和列存储方法可以较好的利用数据之间的关联性实现大规模知识图谱数据的压缩表示,一般参与压缩的数据规模越大,数据压缩率就越高,但相对地要求更高的临时工作空间。在多路压缩图谱数据的归并过程中,如果需要将全量的数据加载进入内存,则数据压缩的成本会被大幅度放大,相较于磁盘成本的减小,内存开销的提升可能使得数据压缩优化得不偿失。
技术实现思路
1、本发明的目的在于提供一种知识图谱数据的多路归并方法、装置、设备及介质,以改善上述问题。为了实现上述目的,本发明采取的技术方案如下:
2、第一方面,本申请提供了一种知识图谱数据的多路归并方法,包括:
3、获取待归并的知识图谱数据,将所述识图谱数据映射为多个前缀树,所述前缀树包括多个结点,且结点与结点之间设置有前缀字符,每个前缀字符覆盖有至少一个子树;
4、构建位向量,基于预设的编码方式将每个前缀树中的子树的树拓扑数据存储在位向量的区间内,并将每个前缀树中所有的前缀字符分别存储在与位向量对应的字符数组中;
5、计算每个位向量的超限值,基于所述超限值使用预设的数据结构为位向量建立索引;
6、从字符数组中读取前缀字符,并利用所述索引抽取所读取到的前缀字符所覆盖的子树的拓扑数据,直到所有的前缀字符读取完毕;
7、将抽取到的子树的拓扑数据构建为临时数组,归还子树所占用的位向量。
8、第二方面,本申请还提供了一种知识图谱数据的多路归并装置,包括:
9、获取模块:用于获取待归并的知识图谱数据,将所述识图谱数据映射为多个前缀树,所述前缀树包括多个结点,且结点与结点之间设置有前缀字符,每个前缀字符覆盖有至少一个子树;
10、构建模块:用于构建位向量,基于预设的编码方式将每个前缀树中的子树的树拓扑数据存储在位向量的区间内,并将每个前缀树中所有的前缀字符分别存储在与位向量对应的字符数组中;
11、计算模块:用于计算每个位向量的超限值,基于所述超限值使用预设的数据结构为位向量建立索引;
12、读取模块:用于从字符数组中读取前缀字符,并利用所述索引抽取所读取到的前缀字符所覆盖的子树的拓扑数据,直到所有的前缀字符读取完毕;
13、归还模块:用于将抽取到的子树的拓扑数据构建为临时数组,归还子树所占用的位向量。
14、第三方面,本申请还提供了一种知识图谱数据的多路归并设备,包括:
15、存储器,用于存储计算机程序;
16、处理器,用于执行所述计算机程序时实现所述知识图谱数据的多路归并方法的步骤。
17、第四方面,本申请还提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述基于知识图谱数据的多路归并方法的步骤。
18、本发明的有益效果为:
19、本发明通过采用基于位域的深度优先树路径压缩方法,实现了紧凑编码及知识图谱数据中实体和关系属性的自索引压缩,优化了多路精简知识图谱数据归并过程中内存开销过大的问题,最终实现归并紧凑图谱数据的有序存储。
20、本发明的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明实施例了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
1.一种知识图谱数据的多路归并方法,其特征在于,包括:
2.根据权利要求1所述的知识图谱数据的多路归并方法,其特征在于,所述构建位向量,基于预设的编码方式将每个前缀树中的子树的树拓扑数据存储在位向量的区间内,并将每个前缀树中所有的前缀字符分别存储在与位向量对应的字符数组中,包括:
3.根据权利要求1所述的知识图谱数据的多路归并方法,其特征在于,所述计算每个位向量的超限值,基于所述超限值使用预设数据结构为位向量建立索引,包括:
4.根据权利要求1所述的知识图谱数据的多路归并方法,其特征在于,所述从字符数组中读取前缀字符,并利用所述索引抽取所读取到的前缀字符所覆盖的子树的拓扑数据,直到所有的前缀字符读取完毕,包括:
5.一种知识图谱数据的多路归并装置,其特征在于,包括:
6.根据权利要求5所述的知识图谱数据的多路归并装置,其特征在于,所述构建模块包括:
7.根据权利要求5所述的知识图谱数据的多路归并装置,其特征在于,所述计算模块包括:
8.根据权利要求5所述的知识图谱数据的多路归并装置,其特征在于,所述读取模块包括:
9.一种知识图谱数据的多路归并设备,其特征在于,包括:
10.一种可读存储介质,其特征在于:所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述知识图谱数据的多路归并方法的步骤。