一种基于元数据的数据交互方法和系统技术方案

技术编号:35925590 阅读:14 留言:0更新日期:2022-12-10 11:17
公开了基于元数据的数据交互方法和系统,包括利用元数据压缩算法生成元数据仓库文件,包括:为每个目标数据文件生成虚拟目录描述文件;将目标数据文件分解为若干数据块,并添加至描述文件中;将分解后的数据块压缩转换为7z数据folder块,并在描述文件中添加7z数据folder描述数据库节点;生成一级数据文件,遍历统计压缩数据文件中数据块中元数据出现次数,排序生成元数据仓库文件;对于已经下载完成的元数据仓库文件,基于解压算法解压文件,包括:还原一级数据文件,解压最后一个数据块,获得虚拟目录描述文件;解压第一数据块,还原所有文件描述数据块;还原所有数据文件目录,完成文件解压。本申请可提高网站存储空间利用率,且解压速度的影响比较小。且解压速度的影响比较小。且解压速度的影响比较小。

【技术实现步骤摘要】
一种基于元数据的数据交互方法和系统


[0001]本专利技术涉及大数据处理与数据压缩的
,尤其是一种基于元数据的数据交互方法和系统。

技术介绍

[0002]随着现代计算机、手机等终端硬件计算和存储性能的提高,导致音视频流数据逐渐成为网络数据流量的主要来源之一,与此同时,软件安装包、磁盘映射、Docker容器等应用数据包的存储容量也在逐渐提升。本专利技术的解决方案力求在互联网上更高效、快速地传输、共享、发布大数据量文件。
[0003]目前主流的压缩算法和工具很多,压缩比也比较高,但是,随之计算的熵增,压缩比迅速减低。为了进一步提升压缩比,必须要从更大数据范围搜索。本专利技术的压缩过程需要消耗大量的计算和磁盘空间。这些需求在个人计算中实现是非常难以实现的。需要利用云上大量的巨型计算资源,才能实现。压缩后的文件数据尺寸更小,下载时,再配合使用BitTorrent共享协议,能够大幅提高数据传输效率。

技术实现思路

[0004]为了解决现有技术中存在的上述技术问题,本专利技术提出了一种基于元数据的数据交互方法和系统,以解决上述技术问题。
[0005]根据本专利技术的一个方面,提出了一种基于元数据的数据交互方法,包括:
[0006]S1:利用元数据压缩算法生成元数据仓库文件,其中,元数据压缩算法包括以下步骤:
[0007]S11:为每个目标数据文件生成虚拟目录描述文件;
[0008]S12:根据单一目标文件的扩展名,调用对应的文件分解算法将目标数据文件分解为若干数据块,并添加至虚拟目录描述文件中;
[0009]S13:利用7z算法将分解后的数据块压缩转换为7z数据folder块,并在虚拟目录描述文件中添加7z数据folder描述数据库节点;
[0010]S14:生成一级数据文件,遍历统计各个压缩数据文件中数据块中元数据出现次数,排序生成元数据仓库文件;
[0011]S2:对于已经下载完成的元数据仓库文件,基于解压算法解压文件,包括:
[0012]S21:还原一级数据文件,调用元数据压缩算法解压最后一个数据块,获得虚拟目录描述文件;
[0013]S22:基于虚拟目录描述文件和元数据压缩算法中的步骤S14解压第一数据块,还原所有文件描述数据块;
[0014]S23:基于虚拟目录描述文件和元数据压缩算法中的步骤S13,还原所有数据文件目录,完成文件解压。
[0015]在一些具体的实施例中,虚拟目录描述文件采用XML文件格式进行描述,用于记录
目标文件的目录层级和数据文件的基本信息,以及文件数据块分解信息。
[0016]在一些具体的实施例中,数据块包括文件描述数据块、原文件数据块和7z数据folder块,每个数据块按照原文件的存储顺序排列。
[0017]在一些具体的实施例中,S13包括:
[0018]将所有文件描述数据块合并后,调用7z算法压缩转换为7z数据folder块,并在虚拟目录描述文件中添加7z数据folder描述数据库节点;
[0019]将每个原文件数据块分别调用7z算法压缩转换为7z数据folder块,并在虚拟目录描述文件中添加7z数据folder描述数据库节点。
[0020]在一些具体的实施例中,元数据仓库文件为16GB的元数据仓库文件,具体生成方式包括:
[0021]根据一级数据文件生成二级数据文件,二级数据文件由压缩记录数据集合构成,压缩记录数据集合由一级数据文件的数据块排序后压缩;
[0022]逐一合并各个二级数据文件,生成唯一的三级数据文件,对三级数据文件按照重复次数排序,提取最多的前2
31
条记录,生成最大16GB元数据仓库文件。
[0023]在一些具体的实施例中,元数据压缩算法还包括步骤S15:使用元数据仓库文件作为索引表,对所有一级数据文件的数据块按元数据尺寸进行重建,生成最终数据发布文件。
[0024]在一些具体的实施例中,S14之前还包括步骤S131:构造一级压缩数据文件,压缩数据文件包括文件头描述信息、数据块和尾部对齐数据块,文件头描述信息中记录最后一个数据块的文件偏移距离,数据块中最后一个数据块为虚拟目录描述文件调用7z算法压缩转换的7z数据folder块。
[0025]在一些具体的实施例中,一级数据文件的生成方式为:将S12、S13和S131中所有的模板文件压缩为一级数据文件。
[0026]在一些具体的实施例中,S21中基于步骤S15,进行逆操作还原成一级数据文件。
[0027]根据本专利技术的第二方面,提出了一种计算机可读存储介质,其上存储有一或多个计算机程序,该一或多个计算机程序被计算机处理器执行时实施上述任一项的方法。
[0028]根据本专利技术的第三方面,提出了一种基于元数据的数据交互系统,系统包括:
[0029]压缩单元,配置用于利用元数据压缩算法生成元数据仓库文件,其中,元数据压缩算法包括以下步骤:S11:为每个目标数据文件生成虚拟目录描述文件;S12:根据单一目标文件的扩展名,调用对应的文件分解算法将目标数据文件分解为若干数据块,并添加至虚拟目录描述文件中;S13:利用7z算法将分解后的数据块压缩转换为7z数据folder块,并在虚拟目录描述文件中添加7z数据folder描述数据库节点;S14:生成一级数据文件,遍历统计各个压缩数据文件中数据块中元数据出现次数,排序生成元数据仓库文件;
[0030]解压单元:配置用于对于已经下载完成的元数据仓库文件,基于解压算法解压文件,包括:S21:还原一级数据文件,调用元数据压缩算法解压最后一个数据块,获得虚拟目录描述文件;S22:基于虚拟目录描述文件和元数据压缩算法中的步骤S14解压第一数据块,还原所有文件描述数据块;S23:基于虚拟目录描述文件和元数据压缩算法中的步骤S13,还原所有数据文件目录,完成文件解压。
[0031]在一些具体的实施例中,虚拟目录描述文件采用XML文件格式进行描述,用于记录目标文件的目录层级和数据文件的基本信息,以及文件数据块分解信息;数据块包括文件
描述数据块、原文件数据块和7z数据folder块,每个数据块按照原文件的存储顺序排列。
[0032]在一些具体的实施例中,S13包括:将所有文件描述数据块合并后,调用7z算法压缩转换为7z数据folder块,并在虚拟目录描述文件中添加7z数据folder描述数据库节点;将每个原文件数据块分别调用7z算法压缩转换为7z数据folder块,并在虚拟目录描述文件中添加7z数据folder描述数据库节点。
[0033]在一些具体的实施例中,元数据仓库文件为16GB的元数据仓库文件,具体生成方式包括:根据一级数据文件生成二级数据文件,二级数据文件由压缩记录数据集合构成,压缩记录数据集合由一级数据文件的数据块排序后压缩;逐一合并各个二级数据文件,生成唯一的三级数据文件,对三级数据文件按照重复次数排序,提取最多的前2
31
条记录,生成最大1本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于元数据的数据交互方法,其特征在于,包括:S1:利用元数据压缩算法生成元数据仓库文件,其中,所述元数据压缩算法包括以下步骤:S11:为每个目标数据文件生成虚拟目录描述文件;S12:根据单一目标文件的扩展名,调用对应的文件分解算法将所述目标数据文件分解为若干数据块,并添加至所述虚拟目录描述文件中;S13:利用7z算法将分解后的数据块压缩转换为7z数据folder块,并在所述虚拟目录描述文件中添加7z数据folder描述数据库节点;S14:生成一级数据文件,遍历统计各个压缩数据文件中数据块中元数据出现次数,排序生成元数据仓库文件;S2:对于已经下载完成的所述元数据仓库文件,基于解压算法解压文件,包括:S21:还原所述一级数据文件,调用所述元数据压缩算法解压最后一个数据块,获得所述虚拟目录描述文件;S22:基于所述虚拟目录描述文件和所述元数据压缩算法中的步骤S14解压第一数据块,还原所有文件描述数据块;S23:基于所述虚拟目录描述文件和所述元数据压缩算法中的步骤S13,还原所有数据文件目录,完成文件解压。2.根据权利要求1所述的基于元数据的数据交互方法,其特征在于,所述虚拟目录描述文件采用XML文件格式进行描述,用于记录目标文件的目录层级和数据文件的基本信息,以及文件数据块分解信息。3.根据权利要求1所述的基于元数据的数据交互方法,其特征在于,所述数据块包括文件描述数据块、原文件数据块和7z数据folder块,每个所述数据块按照原文件的存储顺序排列。4.根据权利要求3所述的基于元数据的数据交互方法,其特征在于,所述S13包括:将所有所述文件描述数据块合并后,调用7z算法压缩转换为7z数据folder块,并在所述虚拟目录描述文件中添加7z数据folder描述数据库节点;将每个所述原文件数据块分别调用7z算法压缩转换为7z数据folder块,并在所述虚拟目录描述文件中添加7z数据folder描述数据库节点。5.根据权利要求1所述的基于元数据的数据交互方法,其特征在于,所述元数据仓库文件为16GB的元数据仓库文件,具体生成方式包括:根据所述一级数据文件生成二级数据文件,所述二级数据文件由压缩记录数据集合构成,所述压缩记录数据集合由所述一级数据文件的数据块排序后压缩;逐一合并各个所述二级数据文件,生成唯一的三级数据文件,对所述三级数据文件按照重复次数排序,提取最多的前2
31
条记录,生成最大16GB元数据仓库文件。6.根据权利要求1所述的基于元数据的数据交互方法,其特征在于,所述元数据压缩算法还包括步骤S15:使用所述元数据仓库文件作为索引表,对所有所述一级数据文件的数据块按元数据尺寸进行重建,生成最终数据发布文件。7.根据权利要求1所述的基于元数据的数据交互方法,其特征在于,所述S14之前还包括步骤S131:构造一级压缩数据文件,所述压缩数据文件包括文件头描述信息、数据块和尾
部对齐数据块,所述文件头描述信息中记录最后一个数据块的文件偏移距离,所述数据块中最后一个数据块为所述虚拟目录描述文件调用7z算法压缩转换的7z数据folder块。8.根据权利要求7所述的基于元数据的数据交互方法,其特征在于,所述一级数据文件的生成方式为:将S12、S13和S131中所有的模板文件压缩为一级数据文件。9.根据权利要求6所述的基于元数据的数据交互方法,其特征在于,所述S21中基于所述步骤S15,进行逆操作还原成所述一级数据文件。10.一种计算...

【专利技术属性】
技术研发人员:刘驼峰徐良袁泉刘源古松景慕荣臻
申请(专利权)人:厦门市美亚柏科信息股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1