您好我使用以下代码来压缩hdfs中存在的文件
hadoop jar hadoop-streaming-2.6.0-cdh5.7.1.jar \
-Dmapred.reduce.tasks=0 \
-Dmapred.output.compress=true \
-Dmapred.compress.map.output=true \
-Dmapred.output.compression.codec=org.apache.hadoop.io.compress.GzipCodec \
-input ${filename} \
-output location \
-mapper /bin/cat \
-inputformat org.apache.hadoop.mapred.TextInputFormat \
-outputformat org.apache.hadoop.mapred.TextOutputFormat
再次使用
解压缩hadoop jar hadoop-streaming-2.6.0-cdh5.7.1.jar \
-Dmapred.reduce.tasks=0 \
-Dmapred.input.compress=true \
-Dmapred.input.compression.codec=org.apache.hadoop.io.compress.GzipCodec \
-input ${filename} \
-output location \
-mapper /bin/cat \
-inputformat org.apache.hadoop.mapred.TextInputFormat \
-outputformat org.apache.hadoop.mapred.TextOutputFormat
但是当我检查文件大小时,它会变化几个字节的差异。
例如,初始文件大小为43704541167字节 一旦我压缩和解压缩它的大小是43704541183
我想知道我们是否有办法确认压缩是否成功而没有任何数据丢失..
先谢谢。