public class HighlyCompressedMapStatus extends Object implements MapStatus, java.io.Externalizable
MapStatus
implementation that only stores the average size of non-empty blocks,
plus a bitmap for tracking which blocks are empty. During serialization, this bitmap
is compressed.
Modifier and Type | Method and Description |
---|---|
static HighlyCompressedMapStatus |
apply(BlockManagerId loc,
long[] uncompressedSizes) |
long |
getSizeForBlock(int reduceId)
Estimated size for the reduce block, in bytes.
|
BlockManagerId |
location()
Location where this task was run.
|
void |
readExternal(java.io.ObjectInput in) |
void |
writeExternal(java.io.ObjectOutput out) |
public static HighlyCompressedMapStatus apply(BlockManagerId loc, long[] uncompressedSizes)
public BlockManagerId location()
MapStatus
public long getSizeForBlock(int reduceId)
MapStatus
If a block is non-empty, then this method MUST return a non-zero size. This invariant is necessary for correctness, since block fetchers are allowed to skip zero-size blocks.
getSizeForBlock
in interface MapStatus
public void writeExternal(java.io.ObjectOutput out)
writeExternal
in interface java.io.Externalizable
public void readExternal(java.io.ObjectInput in)
readExternal
in interface java.io.Externalizable