【发布时间】:2013-10-17 05:25:02
【问题描述】:
我必须解压缩,然后(处理后)再次压缩(存档)源文件。文件大小通常在 200-250 GB 左右(解压缩,.dat 格式)(总共 96 个文件)。 解压缩过程大约需要 2 个小时,而压缩过程又需要 1:30 到 2 个小时,这是无法承受的。 目前我使用“zcat”命令解压缩,使用“gzip -3”压缩文件。 磁盘空间不是问题,因为我们已经安装了 1.5 TB。 请您建议一些更有效的方式来执行此过程..
期待您的建议,谢谢 - Pushkar。
【问题讨论】:
-
您可以“在线”处理吗?即
gzcat file.gz | ./fixingScript | gzip -9 - > file.tmp.gz && mv file.tmp.gz file.gz? (抱歉,我没有时间查找您在zip实用程序中使用的确切语法)。这应该基本上将您的处理时间减少到两者中较长的一个,解压缩或重新压缩。或者,如果这是您可以重新架构的东西,请选择较小的文件或可以馈送到大型并行处理系统、Hadoop 和许多其他系统的东西。祝你好运。 -
感谢您的回复!实际上,解压缩后,我使用这些文件作为 Informatica 工具的输入。所以不能排队。
-
仍然不确定我是否理解您的用例,如果您不处理数据然后压缩修订版备份并且您有足够的磁盘空间,那么
cp file.zip file.orig.zip && unzip file.zip && load_to_informatica file && rm file && mv file.orig.zip file.zip怎么样。因此,您保留压缩文件的副本,临时解压缩,在加载解压缩文件后,您只需将其删除,然后将保存的 .zip 副本重命名为 file.zip。祝你好运。
标签: performance unix gzip filesize zcat