CN111767258A - 应用于海量文件的文件压缩方法、装置、设备及存储介质 - Google Patents

应用于海量文件的文件压缩方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN111767258A
CN111767258A CN202010617288.2A CN202010617288A CN111767258A CN 111767258 A CN111767258 A CN 111767258A CN 202010617288 A CN202010617288 A CN 202010617288A CN 111767258 A CN111767258 A CN 111767258A
Authority
CN
China
Prior art keywords
file
files
compressed
split
splitting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010617288.2A
Other languages
English (en)
Inventor
杨东方
兰冲
肖和兵
周东
李朝阳
伍星蓉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WeBank Co Ltd
Original Assignee
WeBank Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN202010617288.2A priority Critical patent/CN111767258A/zh
Publication of CN111767258A publication Critical patent/CN111767258A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/174Redundancy elimination performed by the file system
    • G06F16/1744Redundancy elimination performed by the file system using compression, e.g. sparse files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及金融科技的数据处理技术领域,公开了一种应用于海量文件的文件压缩方法、装置、设备及存储介质,该方法包括:获取待压缩文件,创建统计线程,通过统计线程统计文件总大小;建立拆分线程,由拆分线程为各个拆分文件组分配待压缩文件,得到各个拆分文件组的待拆分文件;对待拆分文件进行拆分,获得各个压缩文件组的压缩分组文件,并生成压缩分组文件列表;基于压缩分组文件列表进行压缩,获得多组压缩文件。在统计、分组、拆分以及压缩阶段都创建对应数量的线程,相比于传统的单一线程进行文件压缩方式压缩后的容量依旧较大,本发明通过多阶段的压缩提高了文件压缩效果,减轻了海量文件的管理负担。

Description

应用于海量文件的文件压缩方法、装置、设备及存储介质
技术领域
本发明涉及金融科技(Fintech)的数据处理技术领域,尤其涉及一种应用于海量文件的文件压缩方法、装置、设备及存储介质。
背景技术
随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,但由于金融行业的安全性、实时性要求,也对技术提出了更高的要求。
为了节约网络带宽,提高数据传输的速度和质量,文件压缩技术必不可少。现有的文件压缩,一般是利用hdfs(Hadoop Distributed File System,海杜普分布式文件系统)基于hadoop(海杜普)架构压缩成小单元的压缩文件,但是这种压缩方式,主要基于单线程进行,若仅通过单线程对海量待压缩文件进行压缩,不仅会耗费太多的时间,而且对于海量压缩文件的压缩效果依旧很差,依然不便于海量文件的压缩管理。
发明内容
本发明提供一种应用于海量文件的文件压缩方法、装置、设备及存储介质,旨在提高文件压缩效果,减轻海量文件的管理负担。
为实现上述目的,本发明提供一种应用于海量文件的文件压缩方法,所述方法包括:
获取待压缩文件,根据所述待压缩文件的文件总数量创建多个统计线程,基于所述多个统计线程统计所述待压缩文件的文件总大小;
根据所述文件总大小和预设分组文件大小确定文件分组数量,建立与所述文件分组数量对应个数的拆分线程,由所述拆分线程分配所述待压缩文件,得到各个拆分文件组的待拆分文件;
对各个拆分文件组的所述待拆分文件进行拆分,获得各个压缩文件组的压缩分组文件,并基于各个压缩文件组的所述压缩分组文件的初始信息生成压缩分组文件列表;
基于所述压缩分组文件列表对各个压缩文件组的所述压缩分组文件进行压缩,获得多组压缩文件。
优选的,所述分组线程包括初始统计线程和追加统计线程,所述获取待压缩文件,根据所述待压缩文件的文件总数量创建多个统计线程,基于所述多个统计线程统计所述待压缩文件的文件总大小的步骤包括:
根据预先设置的指定文件目录递归获取所述待压缩文件,得到所述文件总数量;
基于所述文件总数量和预设统计线程数量计算各个统计线程的待统计文件数量,并得到统计剩余文件数量;
创建与所述预设统计线程数量个数一致的初始统计线程,若所述剩余文件数量不为零,则创建一个追加统计线程;
遍历所述待压缩文件,基于所述待统计文件数量为各个初始分组线程分配对应数量的待压缩文件;
将遍历后的统计剩余文件分配至所述追加统计线程;
通过所述初始统计线程获取对应待统计文件的待统计文件大小,通过所述追加统计线程获取所述统计剩余文件的统计剩余文件大小;
累加各个待统计文件大小以及所述统计剩余文件大小,获得所述待压缩文件的文件总大小。
优选的,所述基于所述文件总数量和预设统计线程数量计算各个统计线程的待统计文件数量,并得到统计剩余文件数量的步骤包括:
将所述文件总数量除以所述预设统计线程数量的商确定为所述待统计文件数量;
将所述文件总数量除以所述预设统计线程数量的余数确定为所述统计剩余文件数量。
优选的,所述根据所述文件总大小和预设分组文件大小确定文件分组数量,建立与所述文件分组数量对应个数的拆分线程,由所述拆分线程为各个拆分文件组拆分所述待压缩文件,得到所述各个拆分文件组的待拆分文件的步骤包括:
根据所述文件总大小和预设分组文件大小确定拆分文件组数量和分组剩余文件大小;
创建与所述拆分文件组数量一致的初始拆分线程,若分组剩余文件大小不为零,则创建一个追加拆分线程;
通过所述初始拆分线程遍历所述待压缩文件,依次计算所述待压缩文件的累积大小,当所述累积大小大于或等于所述预设分组文件大小时,则将已遍历的待压缩文件保存为一个拆分文件分组的待拆分文件;
直到循环遍历的次数达到所述拆分文件组数量,得到各个拆分文件组的待拆分文件;
将所述分组剩余文件分配至所述追加拆分线程对应的追加拆分分组。
优选的,所述对各个所述拆分文件分组的所述待拆分文件进行拆分,获得各个压缩文件组的压缩分组文件步骤包括:
通过所述拆分线程中的各个初始拆分线程分别从所述待拆分文件中选择目标拆分文件,并对所述目标拆分文件进行切割,获得保留文件和余量文件;
将所述保留文件保留在所述初始拆分线程对应的拆分文件分组中,将保留所述保留文件的拆分文件分组标记为压缩文件分组,并将所述压缩文件分组中的文件标记为初始压缩分组文件;
将所述余量文件存放至追加压缩分组,将所述追加压缩分组中的文件标记为追加压缩分组文件,所述追加压缩分组与所述拆分线程中的追加拆分线程对应。
优选的,所述通过拆分线程中的各个初始拆分线程分别从所述待拆分文件中选择目标拆分文件,并对所述目标拆分文件进行切割,获得保留文件和余量文件的步骤包括:
分别通过所述初始拆分线程遍历所述待拆分文件,获得所述待拆分文件的拆分文件大小;
基于所述拆分文件大小和所述预设文件大小确定切割余量文件大小;
获取一个拆分文件大小大于所述切割余量文件大小的目标拆分文件;
将所述目标拆分文件切割成余量文件和保留文件。
优选的,所述基于所述压缩分组文件列表对各个压缩文件组的所述压缩分组文件进行压缩,获得多组压缩文件的步骤之后还包括:
将所述多组压缩文件导出至预设存储单元;
对所述多组压缩文件进行解压,获得所述多组压缩文件的原始压缩信息;
将所述原始压缩文件信息与所述分组结果文件列表中对应的初始信息进行对比,若所述原始压缩文件信息与所述初始信息一致,则判定压缩成功。
此外,为实现上述目的,本发明还提供一种应用于海量文件的文件压缩装置,所述应用于海量文件的文件压缩装置包括:
统计模块,用于获取待压缩文件,根据所述待压缩文件的文件总数量创建多个统计线程,基于所述多个统计线程统计所述待压缩文件的文件总大小;
分组模块,用于根据所述文件总大小和预设分组文件大小确定文件拆分文件组数量,建立与所述文件分组数量对应个数的拆分线程,由所述拆分线程为各个拆分文件组分配所述待压缩文件,得到所述各个拆分文件组的待拆分文件;
拆分模块,用于对各个拆分文件组的所述待拆分文件进行拆分,获得各个压缩文件组的压缩分组文件,并基于各个压缩文件组的所述压缩分组文件的初始信息生成压缩分组文件列表;
压缩模块,用于基于所述压缩分组文件列表对各个压缩文件组的所述压缩分组文件进行压缩,获得多组压缩文件。
此外,为实现上述目的,本发明还提供一种应用于海量文件的文件压缩设备,所述应用于海量文件的文件压缩设备包括处理器,存储器以及存储在所述存储器中的应用于海量文件的文件压缩程序,所述应用于海量文件的文件压缩程序被所述处理器运行时,实现如上所述的应用于海量文件的文件压缩方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机存储介质,所述计算机存储介质上存储有应用于海量文件的文件压缩程序,所述应用于海量文件的文件压缩程序被处理器运行时实现如上所述的应用于海量文件的文件压缩方法的步骤。
相比现有技术,本发明提供一种应用于海量文件的文件压缩方法、装置、设备及存储介质,在本申请方法实施例中,获取待压缩文件,根据所述待压缩文件的文件总数量创建多个统计线程,基于所述多个统计线程统计所述待压缩文件的文件总大小;根据所述文件总大小和预设分组文件大小确定文件拆分文件组数量,建立与所述文件分组数量对应个数的拆分线程,由所述拆分线程为各个拆分文件组分配所述待压缩文件,得到所述各个拆分文件组的待拆分文件;对各个拆分文件组的所述待拆分文件进行拆分,获得各个压缩文件组的压缩分组文件,并基于各个压缩文件组的所述压缩分组文件的初始信息生成压缩分组文件列表;基于所述压缩分组文件列表对各个压缩文件组的所述压缩分组文件进行压缩,获得多组压缩文件。在统计、分组、拆分以及压缩阶段都创建对应数量的线程,相比于传统的单一线程进行文件压缩方式压缩后的容量依旧较大,本发明通过多阶段的压缩提高了文件压缩效果,减轻了海量文件的管理负担。
附图说明
图1是本发明各实施例涉及的应用于海量文件的文件压缩设备的硬件结构示意图;
图2是本发明应用于海量文件的文件压缩方法第一实施例的流程示意图;
图3是本发明应用于海量文件的文件压缩方法第一实施例的场景示意图;
图4是本发明应用于海量文件的文件压缩装置第一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例主要涉及的应用于海量文件的文件压缩设备是指能够实现网络连接的网络连接设备,所述应用于海量文件的文件压缩设备可以是服务器、云平台等。
参照图1,图1是本发明各实施例涉及的应用于海量文件的文件压缩设备的硬件结构示意图。本发明实施例中,应用于海量文件的文件压缩设备可以包括处理器1001(例如中央处理器Central Processing Unit、CPU),通信总线1002,输入端口1003,输出端口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信;输入端口1003用于数据输入;输出端口1004用于数据输出,存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器,存储器1005可选的还可以是独立于前述处理器1001的存储装置。本领域技术人员可以理解,图1中示出的硬件结构并不构成对本发明的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
继续参照图1,图1中作为一种可读存储介质的存储器1005可以包括操作系统、网络通信模块、应用程序模块以及应用于海量文件的文件压缩程序。在图1中,网络通信模块主要用于连接服务器,与服务器进行数据通信;而处理器1001可以调用存储器1005中存储的应用于海量文件的文件压缩程序,并执行本发明实施例提供的应用于海量文件的文件压缩方法。
本发明实施例提供了一种应用于海量文件的文件压缩方法。
参照图2,图2是本发明应用于海量文件的文件压缩方法第一实施例的流程示意图。
本实施例中,所述应用于海量文件的文件压缩方法应用于海量文件的文件压缩设备上,所述方法包括:
步骤S101,获取待压缩文件,根据所述待压缩文件的文件总数量创建多个统计线程,基于所述多个统计线程统计所述待压缩文件的文件总大小;
步骤S102,根据所述文件总大小和预设分组文件大小确定文件分组数量,建立与所述文件分组数量对应个数的拆分线程,由所述拆分线程为各个拆分文件组分配所述待压缩文件,得到所述各个拆分文件组的待拆分文件;
步骤S103,对各个拆分文件组的所述待拆分文件进行拆分,获得各个压缩文件组的压缩分组文件,并基于各个压缩文件组的所述压缩分组文件的初始信息生成压缩分组文件列表;
步骤S104,基于所述压缩分组文件列表对各个压缩文件组的所述压缩分组文件进行压缩,获得多组压缩文件。
本实施例中所述应用于海量文件的文件压缩方法基于hadoop实现。Hadoop是一个由Apache基金会所开发的分布式系统基础架构。Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称hdfs。hdfs有容错性高、吞吐量高的特点,可以部署在低廉的硬件上,适合具有超大数据集的应用程序。hdfs放宽了POSIX(PortableOperating System Interface of Uniplexed Information and Computing System,UNIX分时操作系统的可移植操作系统接口)的要求,可以以流的形式访问文件系统中的数据。
预先通过hadoop的仓库管理工具hive导出需要管理的待压缩文件,将所述待压缩文件以hdfs文件的形式存放在指定目录下,本实施例中将所述指定文件目录标记为inputfilePath。例如,可以通过以下语句实现:
Hive>insertoverwrite directory‘/home/wyp/hdfs’
>select*fromwyp;
如此则会在hdfs中的/home/wyp/hdfs目录下保存导出的所述压缩文件,也就是说inputfilePath是/home/wyp/hdfs。
当所述待压缩文件以hdfs文件的形式存储后,创建文件信息摘要管理工具FileInfoSummaryManager,基于所述FileInfoSummaryManager统计海量待压缩文件的相关信息。
具体地,获取所述待压缩文件,根据所述待压缩文件的文件总数量创建多个统计线程,基于所述多个统计线程统计所述待压缩文件的文件总大小。
具体地,通过预先创建的FileInfoSummaryManager递归获取所述指定目录inputfilePath下所有的所述待压缩文件,记录所述待压缩文件的文件总数量allFileCount。使用递归查看所述指定目录下的所有子目录及文件,打印并记录所述指定目录下所有文件的文件夹名和文件名,并统计获得所述文件总数量。此外还可以在递归的过程中创建所述待压缩文件的文件路径列表filePathlist,以便于后续基于所述文件路径列表filePathlist查找、读取对应的待压缩文件。
进一步地,根据所述应用于海量文件的文件压缩设备的并行处理能力设置预设统计线程数量threadCount。例如,若所述应用于海量文件的文件压缩设备的最大并行处理能力是100,则将所述预设统计线程数量确定为小于100,例如将所述预设统计线程数量确定为99、50等。当获取所述文件总数量和所述预设统计线程数量后,则基于所述文件总数量和预设统计线程数量计算各个统计线程的的待统计文件数量threadFileCount,并得到统计剩余文件数量surplusFileCount,将所述文件总数量除以所述预设统计线程数量的商确定为所述待统计文件数量;将所述文件总数量除以所述预设线程数量的余数确定为所述统计剩余文件数量。也即:
allFileCount/threadCount=threadFileCount+surplusFileCount。
在利用C语言或java中,可以通过求摸运算确定所述待统计文件数量threadFileCount:
threadFileCount=allFileCount/threadCount;
在利用C语言或java中,可以通过取余运算确定所述统计剩余文件数量surplusFileCount:
surplusFileCount=allFileCount%threadCount。
当确定所述待统计文件数量后,创建与所述预设统计线程数量个数一致的初始统计线程,若所述统计剩余文件数量不为零,则创建一个追加统计线程,所述初始统计线程的数量为预设统计线程数量threadCount,所述初始统计线程和所述追加统计线程的总数量不超过所述预设统计线程数量。依次利用所述初始统计线程遍历所述待压缩文件的文件路径列表filePathlist,当遍历次数达到所述待统计文件数量时,将获取到的文件标记为一个统计文件分组,直到所述统计文件分组的文件数量与所述待统计文件数量一致,也即每循环threadFileCount次就将获取到的文件标记为所述初始统计线程对应统计文件分组的一个待统计文件,每个所述初始统计线程的统计文件分组中的文件数量均为threadFileCount。
进一步地,若所述剩余文件数量不为零,则将遍历后的剩余文件分配至所述追加统计线程。可以理解地,所述追加统计线程中的剩余文件数量surplusFileCount一般小于所述统计文件数量threadFileCount。
进一步地,通过所述初始统计线程获取对应统计文件的待统计文件大小,通过所述追加统计线程获取所述统计剩余文件的剩余文件大小。具体地,所述各个初始统计线程分别创建文件信息列表FileInfoList存放对应待统计文件的待统计文件信息,所述追加统计创建一个FileInfoList存放所述统计剩余文件的剩余文件信息,其中所述待统计文件信息包括文件大小、文件记录数RecordCount、文件路径filePath。获得所述待统计文件信息和所述剩余文件信息的FileInfoList后,则累加各个文件大小以及所述剩余文件大小,获得所述待压缩文件的文件总大小allFileSize。进一步地,累加各个待统计文件的文件记录数以及所述剩余文件的文件记录数,获得所述待压缩文件的文件总记录数allRecordCount;统计各个分组文件的文件路径以及所述剩余文件的文件路径,获得所述待压缩文件的文件路径列表FilePathList;
至此,已获得所述待压缩文件的文件总数量allFileCount、总大小allFileSize、总记录数allRecordCount,文件总记录数allRecordCount以及文件路径列表FilePathList。
进一步地,执行所述步骤S102:根据所述文件总大小和预设分组文件大小确定文件拆分文件组数量,建立与所述文件分组数量对应个数的拆分线程,由所述拆分线程为各个拆分文件组分配所述待压缩文件,得到所述各个拆分文件组的待拆分文件。
具体地,首先根据所述文件总大小allFileSize和预设分组文件大小splitSize确定文件组数fileGroupCount和分组剩余文件大小surplusFileSize;其中所述预设分组文件大小splitSize可以根据需要具体设定,例如将所述splitSize设置为256M、512M、1024M等。如此可以实现等大小压缩,以便于海量文件的管理。本实施例中,将所述文件总大小allFileSize除以预设分组文件大小splitSize的商确定为所述拆分文件组数量fileGroupCount;将所述文件总大小allFileSize除以预设分组文件大小splitSize的余数确定为所述分组剩余文件大小surplusFileSize,也即:
allFileSize/splitSize=fileGroupCount+surplusFileSize;
在利用C语言或java中,可以通过求摸运算确定所述拆分文件组数量:
fileGroupCount=allFileSize/splitSize;
在利用C语言或java中,可以通过取余运算确定所述剩余文件大小:
surplusFileSize=allFileSize%splitSize。
创建与所述拆分文件组数量个数一致的初始拆分线程,若存在分组剩余文件大小不为零,则创建一个追加拆分线程。本实施例中,所述初始拆分线程的数量与所述拆分文件组数量一致,以供每个拆分文件组对应一个初始拆分线程,由所述初始拆分线程对所述拆分文件组分配对应的待压缩文件,获得拆分文件分组及每个拆分文件分组中的待拆分文件。通过所述初始拆分线程遍历所述待压缩文件,依次计算所述待压缩文件的累积大小,当所述累积大小刚刚超过所述预设分组文件大小splitSize时,则将已遍历的待压缩文件保存为一个拆分文件分组的待拆分文件。所述待拆分文件的累计大小大于或等于所述预设分组文件大小。将所述分组剩余文件分配至所述拆分线程对应的追加拆分分组。最终可以获得fileGroupCount个所述拆分文件组,若将每个拆分文件组表示为fileGroup,用f表示各个待拆分文件,则所述fileGroup的结构为[f1,f2,f3……fn-1,fn],其中n-1等于所述拆分文件组数量fileGroupCount,fn-1表示第n组拆分文件组,fn表示所述剩余文件对应的追加拆分分组。当遍历完成后即可获得拆分文件组列表fileGroupList。
可以理解地,在其它实施例中,各个拆分文件分组的大小可以不一致。例如仅设置所述拆分文件分组的最大值和最小值,在文件分组过程中保证各个所述拆分文件分组的大小在所述最大值和所述最小值之间。
当获得所述拆分文件分组及其对应的待拆分文件后,对所述待拆分文件进行拆分,获得分组文件和余量文件,并基于所述分组文件和所述余量文件的初始信息生成分组结果文件列表。
本实施例中,通过所述初始拆分线程中的各个初始拆分线程分别从所述待拆分文件中选择目标拆分文件,并对所述目标拆分文件进行切割,获得保留文件和余量文件;将所述各个初始拆分线程中的所述保留文件保留在所述初始拆分线程对应的拆分文件分组中,将保留所述保留文件的拆分文件分组标记为压缩文件分组,并将所述压缩分组文件中的文件标记为初始压缩分组文件;将所述各个初始拆分线程中的所述余量文件存放至追加压缩分组,将所述追加压缩分组中的文件标记为追加压缩分组文件,所述追加压缩分组与所述拆分线程中的追加拆分线程对应。由此可以使各个初始拆分线程内的文件大小为预设文件大小。通过所述初始拆分线程遍历对应的拆分文件分组内的所有待拆分文件,得到所述初始拆分线程所分配到的所述待拆分文件的实际待拆分文件大小fileGroupSize。基于所述实际待拆分文件大小fileGroupSize和所述预设分组文件大小splitSize计算需要切割掉的余量文件大小surpluseSize,所述余量文件大小surpluseSize是所述实际待拆分文件大小fileGroupSize与所述预设分组文件大小splitSize的差值。遍历所述拆分文件分组内的各个待拆分文件,判断各个待拆分文件的待拆分文件大小是否大于所述余量文件大小surpluseSize,直到遍历至待拆分文件大小大于所述余量文件大小surpluseSize的待拆分文件,则将所述待拆分文件大小大于所述余量文件大小的待拆分文件标记为目标拆分文件。通过各个初始拆分线程将所述目标拆分文件切割为保留文件f1和余量文件f2,并且所述余量文件f2的子文件大小等于所述余量文件大小。
具体地,对所述目标拆分文件进行切割,获得保留文件f1和余量文件f2的步骤包括:
创建空余量文件f2,获取所述目标拆分文件的输入流,按行读取所述目标拆分文件的内容,并将每行的输出内容输入到所述空余量文件f2中,直到所述空余量文件f2的大小等于所述余量文件大小,由此获得所述余量文件f2;然后将所述目标拆分文件中未输入至所述空余量文件f2中的内容输入到预先建立的空保留文件f1,获得所述保留文件f1。
进一步地,将所述余量文件f2和所述拆分文件分组内的其它拆分文件保存在所述初始拆分线程对应的拆分文件分组中,并将所述拆分文件分组中的文件标记为初始压缩分组文件。
可以理解地,各个所述拆分分组可能都会产生余量文件,并且所述追加拆分分组的追加拆分分组的原始大小小于所述预设文件大小,因此将所述余量文件转存至所述追加压缩分组,将所述追加压缩分组中的文件标记为追加压缩分组文件,所述追加压缩分组与所述拆分线程中的追加拆分线程对应,使所述各个初始压缩线程内的文件大小为预设文件大小。由此,可以实现等大小压缩,便于海量文件的管理。
进一步地,为了保证所述追加拆分分组的最终大小或等于所述预设文件大小,需要通过所述追加拆分线程获取统计所述追加拆分分组内的所有文件的大小,获得所述最终大小,若所述最终大小大于所述预设文件大小,则需要切割所述追加拆分分组中的一个文件,将切割后的子文件存入预设的拆分分组中。
当各个初始拆分线程内的压缩分组文件的压缩分组文件大小均切割至为预设文件大小后,基于所述压缩分组文件和所述余量文件的初始信息生成压缩分组文件列表。
具体地,由各个初始拆分线程内获取压缩分组文件的总压缩文件大小totalSize、总压缩文件行数totalRows、文件路径列表filePathlist。例如所述文件路径列表filePathlist可以表示为filePath:[f11,f12,…f1n]。由此,可以将所述压缩分组文件列表表示为:
fileGroup1{totalSize:x1M,totalRows:y1行,filePath:[f11,f12,…f1n]};
fileGroup2{totalSize:x2M,totalRows:y2行,filePath:[f21,f22,…f2n]};
……
fileGroupn{totalSize:xnM,totalRows:yn行,filePath:[fn1,fn2,…fnn]};
其中x、y均大于0。
当获得所述压缩分组文件列表后,则执行步骤S104:基于所述压缩分组文件列表对各个压缩文件组的所述压缩分组文件进行压缩,获得多组压缩文件。
具体地,创建文件组压缩工具FileGroupCompressManager,并且定义压缩文件列表compressFileList用于存放压缩后的压缩文件信息。
遍历所述压缩分组文件列表中的各个压缩分组文件和所述余量文件fileGroup1……fileGroupn,为各个所述拆分文件分组和所述追加拆分分组创建对应的压缩线程,由所述压缩线程执行所述拆分文件分组或所述追加拆分分组的文件压缩以及压缩后的压缩文件信息统计任务。
具体地,创建Zip任务项TaskEntryzip,所述TaskEntryzip用于记录压缩任务与统计信息;通过所述压缩线程按所述拆分文件分组或所述追加拆分分组的索引i创建多个空压缩文件compressFile.i.zip;获取所述compressFile.i.zip的输出流;通过各个压缩线程分别遍历所述拆分文件分组或所述追加拆分分组的文件路径,为每个文件编写新的Zip条目ZipEntry,将新的ZipEntry编写流定位到条目数据的开头然后关闭编写条目流,完成单文件Zip条目编写;直到完成全部所述拆分文件分组或所述追加拆分分组的文件的Zip条目的编写,获得压缩文件compressFile.i.zip。创建所述compressFile.i.zip文件的输入流,获取compressFile.i.zip的大小compressFileSize并存放到ZipTaskEntry中。由此即可通过所述压缩线程为所述压缩分组文件列表中的每一组拆分文件或所述追加拆分文件建立对应的压缩文件。最后,将所述拆分文件分组或所述追加拆分分组组的totalSize,totalRows保存到ZipTaskEntry中,所述ZipTaskEntry记录了压缩前所述待压缩文件的总大小、总记录数,以及压缩后压缩文件的压缩文件总大小、压缩文件总记录数。
将各个所述拆分文件分组或所述追加拆分分组对应的压缩线程在任务执行完成后得到的多组压缩文件为:compressFile.1.zip;compressFile.2.zip;compressFile.3.zip……compressFile.n.zip。并依次输出每个压缩文件的ZipTaskEntry中的统计信息。如此便于所述压缩文件的管理。
参见图3,图3是本发明应用于海量文件的文件压缩方法第一实施例的第一场景示意图。先创建拆分线程将hdfs形式的所述待压缩文件进行拆分,获得多个拆分文件组,并分配各个拆分文件组的待拆分文件;通过拆分线程从所述待拆分文件中选择目标拆分文件A、B、C,分别获得对应的保留文件a1,余量文件a2;保留文件b1,余量文件b2;保留文件c1,余量文件c2;将所述余量文件a2,余量文件b2以及余量文件c2转存至追加拆分分组,获得压缩分组文件。然后通过多个缩线程分别压缩所述压缩分组文件。
进一步地,所述基于所述分组压缩结果文件列表对所述待压缩文件进行压缩,获得各个压缩文件组压缩文件的步骤之后还包括:
将所述多组压缩文件导出至预设存储单元;
对所述多组压缩文件进行解压,并输出所述多组压缩文件的原始压缩信息;
将所述原始压缩文件信息与所述分组结果文件列表中对应的初始信息进行对比,若所述原始压缩文件信息与所述初始信息一致,则判定压缩成功。
本实施例中,所述预设存储单元可以是大容量的固态硬盘,将所述固态硬盘挂载到hadoop平台的指定服务器上,然后使用hadoop fs将hdfs形式的所述多组压缩文件导出至所述固态硬盘。所述指定服务器可以是操作系统linux服务器。
利用存储所述多组压缩文件的所述指定服务器执行解压操作:unzip-compressFile.i.zip,对所述压缩文件进行解压,并输出所述多组压缩文件的原始压缩信息,将所述原始压缩文件信息与所述分组结果文件列表中对应的统计信息进行对比,若所述原始压缩文件信息与所述统计信息一致,则判定压缩成功。其中,所述原始压缩信息包括压缩文件的总大小和压缩文件的总记录数,所述统计信息包括所述待压缩文件的总大小和总记录数。如此,实现了压缩前后信息的对比,保证了压缩的准确性。
需要说明的是,传统的压缩方式,用hive加工完数据后在hdfs中生成hadoop内置压缩格式的文件,内置压缩方式是单线程的方式,无法基于压缩后的小文件,再合并成等大小的文件再压缩,因此生成的还是海量小压缩文件,不能一次性达到合并压缩的效果,且难以对比压缩前后记录数是否一致,难以确定压缩过程是否有数据丢失。
本实施例通过上述方案,获取待压缩文件,根据所述待压缩文件的文件总数量创建多个统计线程,基于所述多个统计线程统计所述待压缩文件的文件总大小;根据所述文件总大小和预设分组文件大小确定文件拆分文件组数量,建立与所述文件分组数量对应个数的拆分线程,由所述拆分线程为各个拆分文件组分配所述待压缩文件,得到所述各个拆分文件组的待拆分文件;对各个拆分文件组的所述待拆分文件进行拆分,获得各个压缩文件组的压缩分组文件,并基于各个压缩文件组的所述压缩分组文件的初始信息生成压缩分组文件列表;基于所述压缩分组文件列表对各个压缩文件组的所述压缩分组文件进行压缩,获得多组压缩文件。在统计、分组、拆分以及压缩阶段都创建对应数量的线程,相比于传统的单一线程进行文件压缩方式压缩后的容量依旧较大,本发明通过多阶段的压缩提高了文件压缩效果,减轻了海量文件的管理负担。
此外,本实施例还提供一种应用于海量文件的文件压缩装置。参照图4,图4为本发明应用于海量文件的文件压缩装置第一实施例的功能模块示意图。
本实施例中,所述应用于海量文件的文件压缩装置为虚拟装置,存储于图1所示的应用于海量文件的文件压缩设备的存储器1005中,以实现应用于海量文件的文件压缩程序的所有功能:用于获取待压缩文件,根据所述待压缩文件的文件总数量创建多个统计线程,基于所述多个统计线程统计所述待压缩文件的文件总大小;用于根据所述文件总大小和预设分组文件大小确定文件拆分文件组数量,建立与所述文件分组数量对应个数的拆分线程,由所述拆分线程为各个拆分文件组分配所述待压缩文件,得到所述各个拆分文件组的待拆分文件;用于对各个拆分文件组的所述待拆分文件进行拆分,获得各个压缩文件组的压缩分组文件,并基于各个压缩文件组的所述压缩分组文件的初始信息生成压缩分组文件列表;用于基于所述压缩分组文件列表对各个压缩文件组的所述压缩分组文件进行压缩,获得多组压缩文件。
具体地,所述应用于海量文件的文件压缩装置包括:
统计模块10,用于获取待压缩文件,根据所述待压缩文件的文件总数量创建多个统计线程,基于所述多个统计线程统计所述待压缩文件的文件总大小;
分组模块20,用于根据所述文件总大小和预设分组文件大小确定文件拆分文件组数量,建立与所述文件分组数量对应个数的拆分线程,由所述拆分线程为各个拆分文件组分配所述待压缩文件,得到所述各个拆分文件组的待拆分文件;
拆分模块30,用于对各个拆分文件组的所述待拆分文件进行拆分,获得各个压缩文件组的压缩分组文件,并基于各个压缩文件组的所述压缩分组文件的初始信息生成压缩分组文件列表;
压缩模块40,用于基于所述压缩分组文件列表对各个压缩文件组的所述压缩分组文件进行压缩,获得多组压缩文件
进一步地,所述统计模块还用于:
根据预先设置的指定文件目录递归获取所述待压缩文件,得到所述文件总数量;
基于所述文件总数量和预设统计线程数量计算各个统计线程的待统计文件数量,并得到统计剩余文件数量;
创建与所述预设统计线程数量个数一致的初始统计线程,若所述剩余文件数量不为零,则创建一个追加统计线程;
遍历所述待压缩文件,基于所述待统计文件数量为各个初始分组线程分配对应数量的待压缩文件;
将遍历后的统计剩余文件分配至所述追加统计线程;
通过所述初始统计线程获取对应待统计文件的待统计文件大小,通过所述追加统计线程获取所述统计剩余文件的统计剩余文件大小;
累加各个待统计文件大小以及所述统计剩余文件大小,获得所述待压缩文件的文件总大小。
进一步地,所述统计模块还用于:
将所述文件总数量除以所述预设统计线程数量的商确定为所述待统计文件数量;
将所述文件总数量除以所述预设统计线程数量的余数确定为所述统计剩余文件数量。
进一步地,所述分组模块还用于:
根据所述文件总大小和预设分组文件大小确定拆分文件组数量和分组剩余文件大小;
创建与所述拆分文件组数量一致的初始拆分线程,若分组剩余文件大小不为零,则创建一个追加拆分线程;
通过所述初始拆分线程遍历所述待压缩文件,依次计算所述待压缩文件的累积大小,当所述累积大小大于或等于所述预设分组文件大小时,则将已遍历的待压缩文件保存为一个拆分文件分组的待拆分文件;
直到循环遍历的次数达到所述拆分文件组数量,得到各个拆分文件组的待拆分文件;
将所述分组剩余文件分配至所述追加拆分线程对应的追加拆分分组。
进一步地,所述拆分模块还用于:
通过所述拆分线程中的各个初始拆分线程分别从所述待拆分文件中选择目标拆分文件,并对所述目标拆分文件进行切割,获得保留文件和余量文件;
将所述保留文件保留在所述初始拆分线程对应的拆分文件分组中,将保留所述保留文件的拆分文件分组标记为压缩文件分组,并将所述压缩文件分组中的文件标记为初始压缩分组文件;
将所述余量文件存放至追加压缩分组,将所述追加压缩分组中的文件标记为追加压缩分组文件,所述追加压缩分组与所述拆分线程中的追加拆分线程对应。
进一步地,所述拆分模块还用于:
分别通过所述初始拆分线程遍历所述待拆分文件,获得所述待拆分文件的拆分文件大小;
基于所述拆分文件大小和所述预设文件大小确定切割余量文件大小;
获取一个拆分文件大小大于所述切割余量文件大小的目标拆分文件;
将所述目标拆分文件切割成余量文件和保留文件。
进一步地,所述压缩模块还用于:
将所述多组压缩文件导出至预设存储单元;
对所述多组压缩文件进行解压,获得所述多组压缩文件的原始压缩信息;
将所述原始压缩文件信息与所述分组结果文件列表中对应的初始信息进行对比,若所述原始压缩文件信息与所述初始信息一致,则判定压缩成功。
此外,本发明实施例还提供一种计算机存储介质,所述计算机存储介质上存储有应用于海量文件的文件压缩程序,所述应用于海量文件的文件压缩程序被处理器运行时实现如上所述的应用于海量文件的文件压缩方法的步骤,此处不再赘述。
相比现有技术,本发明提出的一种应用于海量文件的文件压缩方法、装置、设备及存储介质,获取待压缩文件,根据所述待压缩文件的文件总数量创建多个统计线程,基于所述多个统计线程统计所述待压缩文件的文件总大小;根据所述文件总大小和预设分组文件大小确定文件拆分文件组数量,建立与所述文件分组数量对应个数的拆分线程,由所述拆分线程为各个拆分文件组分配所述待压缩文件,得到所述各个拆分文件组的待拆分文件;对各个拆分文件组的所述待拆分文件进行拆分,获得各个压缩文件组的压缩分组文件,并基于各个压缩文件组的所述压缩分组文件的初始信息生成压缩分组文件列表;基于所述压缩分组文件列表对各个压缩文件组的所述压缩分组文件进行压缩,获得多组压缩文件。在统计、分组、拆分以及压缩阶段都创建对应数量的线程,相比于传统的单一线程进行文件压缩方式压缩后的容量依旧较大,本发明通过多阶段的压缩提高了文件压缩效果,减轻了海量文件的管理负担。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备执行本发明各个实施例所述的方法。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种应用于海量文件的文件压缩方法,其特征在于,所述方法包括:
获取待压缩文件,根据所述待压缩文件的文件总数量创建多个统计线程,基于所述多个统计线程统计所述待压缩文件的文件总大小;
根据所述文件总大小和预设分组文件大小确定文件分组数量,建立与所述文件分组数量对应个数的拆分线程,由所述拆分线程分配所述待压缩文件,得到各个拆分文件组的待拆分文件;
对各个拆分文件组的所述待拆分文件进行拆分,获得各个压缩文件组的压缩分组文件,并基于各个压缩文件组的所述压缩分组文件的初始信息生成压缩分组文件列表;
基于所述压缩分组文件列表对各个压缩文件组的所述压缩分组文件进行压缩,获得多组压缩文件。
2.根据权利要求1所述的方法,其特征在于,所述分组线程包括初始统计线程和追加统计线程,所述获取待压缩文件,根据所述待压缩文件的文件总数量创建多个统计线程,基于所述多个统计线程统计所述待压缩文件的文件总大小的步骤包括:
根据预先设置的指定文件目录递归获取所述待压缩文件,得到所述文件总数量;
基于所述文件总数量和预设统计线程数量计算各个统计线程的待统计文件数量,并得到统计剩余文件数量;
创建与所述预设统计线程数量个数一致的初始统计线程,若所述剩余文件数量不为零,则创建一个追加统计线程;
遍历所述待压缩文件,基于所述待统计文件数量为各个初始分组线程分配对应数量的待压缩文件;
将遍历后的统计剩余文件分配至所述追加统计线程;
通过所述初始统计线程获取对应待统计文件的待统计文件大小,通过所述追加统计线程获取所述统计剩余文件的统计剩余文件大小;
累加各个待统计文件大小以及所述统计剩余文件大小,获得所述待压缩文件的文件总大小。
3.根据权利要求2所述的方法,其特征在于,所述基于所述文件总数量和预设统计线程数量计算各个统计线程的待统计文件数量,并得到统计剩余文件数量的步骤包括:
将所述文件总数量除以所述预设统计线程数量的商确定为所述待统计文件数量;
将所述文件总数量除以所述预设统计线程数量的余数确定为所述统计剩余文件数量。
4.根据权利要求1所述的方法,其特征在于,所述根据所述文件总大小和预设分组文件大小确定文件分组数量,建立与所述文件分组数量对应个数的拆分线程,由所述拆分线程为各个拆分文件组分配所述待压缩文件,得到所述各个拆分文件组的待拆分文件的步骤包括:
根据所述文件总大小和预设分组文件大小确定拆分文件组数量和分组剩余文件大小;
创建与所述拆分文件组数量一致的初始拆分线程,若分组剩余文件大小不为零,则创建一个追加拆分线程;
通过所述初始拆分线程遍历所述待压缩文件,依次计算所述待压缩文件的累积大小,当所述累积大小大于或等于所述预设分组文件大小时,则将已遍历的待压缩文件保存为一个拆分文件分组的待拆分文件;
直到循环遍历的次数达到所述拆分文件组数量,得到各个拆分文件组的待拆分文件;
将所述分组剩余文件分配至所述追加拆分线程对应的追加拆分分组。
5.根据权利要求1所述的方法,其特征在于,所述对各个所述拆分文件分组的所述待拆分文件进行拆分,获得各个压缩文件组的压缩分组文件步骤包括:
通过所述拆分线程中的各个初始拆分线程分别从所述待拆分文件中选择目标拆分文件,并对所述目标拆分文件进行切割,获得保留文件和余量文件;
将所述保留文件保留在所述初始拆分线程对应的拆分文件分组中,将保留所述保留文件的拆分文件分组标记为压缩文件分组,并将所述压缩文件分组中的文件标记为初始压缩分组文件;
将所述余量文件存放至追加压缩分组,将所述追加压缩分组中的文件标记为追加压缩分组文件,所述追加压缩分组与所述拆分线程中的追加拆分线程对应。
6.根据权利要求5所述的方法,其特征在于,所述通过所述拆分线程中的各个初始拆分线程分别从所述待拆分文件中选择目标拆分文件,并对所述目标拆分文件进行切割,获得保留文件和余量文件的步骤包括:
分别通过所述初始拆分线程遍历所述待拆分文件,获得所述待拆分文件的拆分文件大小;
基于所述拆分文件大小和所述预设文件大小确定切割余量文件大小;
获取一个拆分文件大小大于所述切割余量文件大小的目标拆分文件;
将所述目标拆分文件切割成余量文件和保留文件。
7.根据权利要求1-6中任一项所述的方法,其特征在于,所述基于所述压缩分组文件列表对各个压缩文件组的所述压缩分组文件进行压缩,获得多组压缩文件的步骤之后还包括:
将所述多组压缩文件导出至预设存储单元;
对所述多组压缩文件进行解压,获得所述多组压缩文件的原始压缩信息;
将所述原始压缩文件信息与所述分组结果文件列表中对应的初始信息进行对比,若所述原始压缩文件信息与所述初始信息一致,则判定压缩成功。
8.一种应用于海量文件的文件压缩装置,其特征在于,所述应用于海量文件的文件压缩装置包括:
统计模块,用于获取待压缩文件,根据所述待压缩文件的文件总数量创建多个统计线程,基于所述多个统计线程统计所述待压缩文件的文件总大小;
分组模块,用于根据所述文件总大小和预设分组文件大小确定文件拆分文件组数量,建立与所述文件分组数量对应个数的拆分线程,由所述拆分线程为各个拆分文件组分配所述待压缩文件,得到所述各个拆分文件组的待拆分文件;
拆分模块,用于对各个拆分文件组的所述待拆分文件进行拆分,获得各个压缩文件组的压缩分组文件,并基于各个压缩文件组的所述压缩分组文件的初始信息生成压缩分组文件列表;
压缩模块,用于基于所述压缩分组文件列表对各个压缩文件组的所述压缩分组文件进行压缩,获得多组压缩文件。
9.一种应用于海量文件的文件压缩设备,其特征在于,所述应用于海量文件的文件压缩设备包括处理器,存储器以及存储在所述存储器中的应用于海量文件的文件压缩程序,所述应用于海量文件的文件压缩程序被所述处理器运行时,实现如权利要求1-7中任一项所述的应用于海量文件的文件压缩方法的步骤。
10.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有应用于海量文件的文件压缩程序,所述应用于海量文件的文件压缩程序被处理器运行时实现如权利要求1-7中任一项所述的应用于海量文件的文件压缩方法的步骤。
CN202010617288.2A 2020-06-30 2020-06-30 应用于海量文件的文件压缩方法、装置、设备及存储介质 Pending CN111767258A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010617288.2A CN111767258A (zh) 2020-06-30 2020-06-30 应用于海量文件的文件压缩方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010617288.2A CN111767258A (zh) 2020-06-30 2020-06-30 应用于海量文件的文件压缩方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN111767258A true CN111767258A (zh) 2020-10-13

Family

ID=72724412

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010617288.2A Pending CN111767258A (zh) 2020-06-30 2020-06-30 应用于海量文件的文件压缩方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN111767258A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112860646A (zh) * 2021-02-24 2021-05-28 上海泰宇信息技术股份有限公司 一种海量文件档案分布式聚合压缩与单一式抽取的策略
CN114338122A (zh) * 2021-12-23 2022-04-12 广西东信数建信息科技有限公司 一种高效安全海量文件传输方法
CN117076388A (zh) * 2023-10-12 2023-11-17 中科信工创新技术(北京)有限公司 一种文件处理的方法、装置、存储介质及电子设备

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112860646A (zh) * 2021-02-24 2021-05-28 上海泰宇信息技术股份有限公司 一种海量文件档案分布式聚合压缩与单一式抽取的策略
CN112860646B (zh) * 2021-02-24 2022-12-02 上海泰宇信息技术股份有限公司 一种海量文件档案分布式聚合压缩与单一式抽取的方法
CN114338122A (zh) * 2021-12-23 2022-04-12 广西东信数建信息科技有限公司 一种高效安全海量文件传输方法
CN117076388A (zh) * 2023-10-12 2023-11-17 中科信工创新技术(北京)有限公司 一种文件处理的方法、装置、存储介质及电子设备

Similar Documents

Publication Publication Date Title
CN111767258A (zh) 应用于海量文件的文件压缩方法、装置、设备及存储介质
EP3754515A1 (en) Reshard method and system in distributed storage system
CN106407207B (zh) 一种实时新增数据更新方法和装置
CN112346829B (zh) 一种用于任务调度的方法及设备
US9940331B1 (en) Proactive scavenging of file system snaps
CN112287182A (zh) 图数据存储、处理方法、装置及计算机存储介质
CN111813805A (zh) 一种数据处理方法及装置
US20210271648A1 (en) Data migration methods and system
US10649967B2 (en) Memory object pool use in a distributed index and query system
CN111930716A (zh) 一种数据库扩容方法、装置及系统
CN109783571B (zh) 隔离环境的数据处理方法、装置、计算机设备及存储介质
CN114398217A (zh) 一种fpga并行仿真的海量仿真波形数据切片方法
CN109117426A (zh) 分布式数据库查询方法、装置、设备及存储介质
CN111414339A (zh) 一种文件的处理方法、系统、装置、设备及介质
US10956378B2 (en) Hierarchical file transfer using KDE-optimized filesize probability densities
CN106897181B (zh) 一种Vdbench测试装置
CN107493205B (zh) 一种设备集群扩容性能预测方法及装置
CN110019497B (zh) 一种数据读取方法及装置
CN113590566B (zh) 基于堆结构的SequenceFile存储优化方法、装置、设备及存储介质
CN115576924A (zh) 一种数据迁移的方法
CN115941622A (zh) 一种带宽调节方法、系统、设备及存储介质
WO2021103600A1 (zh) 一种分布式系统文件的删除方法、装置、设备及存储介质
CN113067708A (zh) 计费方法、装置、电子设备和计算机存储介质
CN113626510A (zh) 交易核对方法、装置、电子设备及存储介质
CN110874268B (zh) 数据处理方法、装置和设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination