我不太明白hadoop中块压缩的概念。假设我有一个1gb的数据,我想写为块压缩sequencefile和默认的hdfs块大小128mb。这是否意味着,我的数据在hdfs上被分成8个压缩块,每个压缩块以后都可以独立解压缩?
fdx2calv1#
这完全取决于是否设置了splittable(例如,gzip不支持拆分。)splittable意味着hdfs块可以并行解压,而对于sequencefile解压,块不需要位于同一位置。另外,如果您使用的是块压缩,则压缩的记录可能会跨越多个块,因此,同样需要在同一位置进行解压缩。所以你的区块可能会也可能不会被独立解压。
1条答案
按热度按时间fdx2calv1#
这完全取决于是否设置了splittable(例如,gzip不支持拆分。)
splittable意味着hdfs块可以并行解压,而对于sequencefile解压,块不需要位于同一位置。
另外,如果您使用的是块压缩,则压缩的记录可能会跨越多个块,因此,同样需要在同一位置进行解压缩。
所以你的区块可能会也可能不会被独立解压。