我目前正在从事有关HDF5数据集压缩的项目,并最近开始使用h5py。我按照基本教程操作,能够在创建文件时打开、创建和压缩文件。但是,当涉及到压缩现有文件时(这是我的工作目标),我一直没有成功。
我尝试使用“r+”打开文件,然后压缩块数据集,但是文件大小仍然相同。
请问应该使用哪些命令?或者我的方法错了吗?
我尝试使用“r+”打开文件,然后压缩块数据集,但是文件大小仍然相同。
请问应该使用哪些命令?或者我的方法错了吗?
h5repack file1 file2
//删除文件1的记录空间并将其保存为file2。
h5repack -v -l CHUNK=1024 file1 file2
//对file1应用1024的块处理
h5repack -v -l CHUNK=1024 GZIP=5 file1 file2
//使用GZIP级别5压缩将1024分块
h5repack --help
\获取可用的帮助文档
详细文档也可用。
在h5py中,压缩非常容易使用。请查看Wiki HowTo 和 Compression 指南。 基本上,它会像这样:
ds = myfile.create_dataset('ds', shape, dtype, compression='lzf')
在优化文件大小/访问时,选择块大小存在一些问题,请参考我提供的压缩指南。
我不记得哪种压缩(如果有)是默认开启的。