一种基于三角形统计的图数据压缩方法和查询方法

文档序号:9767581阅读:680来源:国知局
一种基于三角形统计的图数据压缩方法和查询方法
【技术领域】
[0001] 本发明属于数据库技术领域,具体提出了一种基于三角形统计的图数据压缩方 法。
【背景技术】
[0002] 如今,图数据已经被广泛应用于各类网络应用中,例如网页链接信息,社交网络及 语义网络等。然而,随着数据规模的不断发展,一个图数据中可能包括百万个甚至千万个结 点,而这些结点之间也可能存在着千万条边以表示这些结点之间的关联关系。要存储并处 理如此大规模的图数据是一个巨大的挑战,而在一个大规模图数据中进行针对结点或结点 间关系的查询,其查询效率也是备受关注的。
[0003] 为了能够更高效的处理不断加大的规模的图数据,对图数据进行压缩是一种行而 有效的手段,可以大幅度减少图数据的存储所需空间,并减少读取、处理以及查询图数据的 时间代价。
[0004] 针对大规模的图数据的压缩,包括以下几方面的需求:
[0005] 第一,压缩后的图数据需具有紧凑性的特性,从而达到减少图数据所占用存储空 间的目的。
[0006] 第二,针对图数据的压缩和解压缩操作都应具有高效性,针对图数据进行处理与 查询时不会消耗过多的时间代价在解压缩步骤中。
[0007] 第三,更理想的情况是,压缩后的图数据在针对某一类或几类处理或查询时,不必 对其进行解压缩操作即可完成所做处理或获得所需查询结果,从而提高处理及查询效率。
[0008] 第四,针对图数据的压缩方法可以实现针对压缩比和压缩时间代价的可调整化, 根据实际应用需求选择更合适的压缩比以及时间代价。
[0009] 图数据压缩的目标是减少图数据所占用的存储空间,且依然能够保持原图数据所 具有的各种主要性质。现有的图数据压缩方法可以依据不同的基本理念分为以下几大类:
[0010] 第一类,基于图数据中结点度的值,保留其中具有高结点度的结点以及其之间的 关系,从而达到图数据压缩的目的。在一个图数据中,一些结点的度的值可能并不高,却是 连接两个密集子图的关键结点。在基于图数据中结点度的值的压缩方法中,可能会在压缩 过程中从图数据中移除如上所述的结点,因此压缩后的图数据将损失原有图数据的部分结 构。
[0011] 第二类,基于图数据中结点的相似性,将图数据中具有相似邻居结点集或相似结 构性质的结点组合为一个新的结点,并将与之相连接的边进行整合。在此类方法中,会占用 额外的代价来描述相似结点集合中各结点的差异性或结点间连接的边的不同。此类压缩方 法中允许的相似容忍度越大,那么差异描述的占用空间越多,压缩比越差;而压缩方法允许 的相似容忍度越小,则可以找到的相似结点越少,压缩比也会不佳;而找到一个较平衡的设 定是十分困难的。
[0012] 第三类,基于图数据中结点出现的频率,给予图数据中出现频率较高的结点较小 的标号或占用存储空间较少的标记。此类方法在压缩时需要使用大量的系统资源进行排序 操作,而目前最好的排序算法的平均时间复杂度是〇(nlog2n),空间复杂度是0(1),在针对 大规模图数据进行压缩时,在压缩时间方面也是不理想的。
[0013] 第四类,基于图数据中结点与结点间的连接信息的数据存储形式,如邻接表 (Adjacency List),依靠不同的存储形式的变种,直接减少表达同样信息所需的存储空间。 较简单的邻接表压缩方法无法得到较好的压缩率,而较复杂的邻接表压缩方法在对其解压 缩时将消耗更多的解压缩代价。
[0014] 为了克服现有技术中图数据的无损性、压缩时间、压缩比无法兼顾的缺陷,提出了 一种基于三角形统计的图数据压缩方法和查询方法。本方法在保证图数据结构无损性的同 时,在压缩时间和压缩比方面相较别的压缩方法亦更佳。同时,针对基于本方法压缩后的图 数据的查询,其查询效率亦表现较佳。

【发明内容】

[0015] 本发明提出了一种基于三角形统计的图数据压缩方法,包括下述步骤:
[0016] 步骤一:获得一组图数据,筛选其中所有由三个存在相互关联的结点构成的三角 形元素,构成三角形元素的集合;
[0017] 步骤二:在所述集合中,若两个以上三角形元素之前相互共同具有两个相同的结 点,则将所述三角形元素压缩成一个结点,得到压缩结果。
[0018] 本发明提出的所述基于三角形统计的图数据压缩方法中,在所述步骤一中,设定 结点的度的上界和下界用于筛选所述图数据的结点,从处于所述上界和下界之间的结点中 筛选出所有由三个存在相互关联的结点构成的三角形元素,构成三角形元素的集合。
[0019] 本发明提出的所述基于三角形统计的图数据压缩方法中,所述上界为100以上, 所述下界的取值范围为2-10。
[0020] 本发明提出的所述基于三角形统计的图数据压缩方法中,在所述步骤一中,对所 有结点进行倒序统计,所述倒序统计包括如下步骤:
[0021] 步骤a:将图数据中所有结点按结点的度进行降序排序,用以优化压缩操作执行 效率;
[0022] 步骤b :为每个结点创建一个空的集合;
[0023] 步骤c :对于图数据中的一个结点以及结点度小于此结点的邻居结点,若集合 A|u| ΠΑ|ν|不为空,则三角形元素以如下公式表示:
[0024] Τ = {(u, ν, w) | w e {A I u I Π A | v |}};
[0025] 其中,u表示当前计算结点,v表示u的邻居结点,A表示一个结点的所有的结点度 大于当前计算结点的邻居结点集合,A|u|表示所有结点度大于u的u的邻居结点集合,A|v| 表示所有结点度大于u的ν的邻居结点集合,w表示结点度大于u,且同时是结点u及结点 ν的邻居结点;
[0026] 步骤d:重复所述步骤c,直至遍历图数据中的每一个结点为止,获得图中所有三 角形元素的集合。
[0027] 本发明提出的所述基于三角形统计的图数据压缩方法中,所述图数据为包括社交 网络图数据、网页链接图数据和论文引用图数据。
[0028] 本发明还提出了一种经过基于三角形统计图数据压缩处理的图数据的查询方法, 包括如下步骤:
[0029] 步骤1 :针对一个结点的查询请求,扫描三角形元素集合中是否存在与所述结点 完全匹配的三角形元素或者包含所述结点的三角形元素;若存在,则返回所述结点及其共 同邻居结点,若不存在,则进行步骤2 ;
[0030] 步骤2 :若所述结点存在于两个以上三角形元素中,则统计所述三角形元素的邻 居结点的信息,并最终返回所述邻居结点的信息的交集作为查询结果返回;
[0031] 步骤3 :若图数据中不存在与查询请求匹配的结点,则返回空集。本发明中针对经 过基于三角形统计的图数据压缩方法压缩后所得图数据的查询方法,可以在不解压缩图数 据或部分解压缩图数据的基础上对其进行查询操作。相较其他必须在解压缩图数据后才可 执行数据查询的压缩方法,本发明所提出的图数据压缩方法支持在未解压缩或部分解压缩 的图数据中执行一部分的查询操作。解压缩图数据将会占用大量查询时间,因此,本发明可 以通过避免解压缩操作大幅提高在压缩后图数据中的查询效率。
[0032] 由于本发明提出的查询方法支持在未解压缩或部分解压缩的图数据中执行共同 邻居结点的查询操作,因此执行对图数据中任意两个结点的共同邻居结点的查询时,其查 询效率将是基于解压缩后图数据的查询方法的2倍或更高。以下说明与本发明有关的一些 概念和定义。
[0033] 图数据压缩的压缩比:未压缩图数据所占的存储空间与压缩后图数据所占的存储 空间的比值。
[0034] 图数据压缩的压缩时间:对图数据进行压缩操作所使用的总时间。
[0035] 图数据中结点的度:图数据中所有连接到某结点的边的数量即为此结点的度。
[0036] 本发明的有益效果包括:本发明将原有的利用结点对来表达两个结点间关联关系 的存储形式,转变为利用三角形元素共用结点的特性,用新的存储形式存储共享两个结点 的多个三角形元素,相较已有压缩算法,提高压缩效率约为5-30%。本发明在对图数据进行 压缩的同时,还能对针对图数据的部分查询操作的执行效率有所提升,最优情况下提高效 率超过50 %,平均提高效率约为10-20 %。
【附图说明】
[0037] 图1是本发明基于三角形统计的图数据压缩方法的流程图。
[0038] 图2是本发明基于三角形统计的图数据查询方法的流程图。
[0039] 图3是一实施例中压缩前的原数据结构的示意图。
[0040] 图4是一实施例中经压缩后的数据结构的示意图。
【具体实施方式】
[0041] 结合以下具体实施例和附图,对本发明作进一步的详细说明。实施本发明的过程、 条件、实验方法等,除以下专门提及的内容之外,均为本领域的普遍知识和公知常识,本发 明没有特别限制内容。
[0042] 如图1,本发明基于三角形统计的图数据压缩方法,包括下述步骤:
[0043] 步骤一:获得一组图数据,筛选其中所有由三个存在相互关联的结点
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1