@InterfaceAudience.Private public class CellChunkMap extends CellFlatMap
CellChunkMap is a byte array (chunk) holding all that is needed to access a Cell, which is actually saved on another deeper chunk. Per Cell we have a reference to this deeper byte array B (chunk ID, integer), offset in bytes in B (integer), length in bytes in B (integer) and seqID of the cell (long). In order to save reference to byte array we use the Chunk's ID given by ChunkCreator.
The CellChunkMap memory layout on chunk A relevant to a deeper byte array B, holding the actual cell data:
< header > <--------------- first Cell -----------------> <-- second Cell ... --------------------------------------------------------------------------------------- ... integer | integer | integer | integer | long | 4 bytes | 4 bytes | 4 bytes | 4 bytes | 8 bytes | ChunkID | chunkID of | offset in B | length of | sequence | ... of this | chunk B with | where Cell's | Cell's | ID of | chunk A | Cell data | data starts | data in B | the Cell | --------------------------------------------------------------------------------------- ...
maxCellIdx, minCellIdx| Constructor and Description |
|---|
CellChunkMap(Comparator<? super Cell> comparator,
Chunk[] chunks,
int min,
int max,
boolean descending)
C-tor for creating CellChunkMap from existing Chunk array, which must be ordered (decreasingly
or increasingly according to parameter "descending")
|
| Modifier and Type | Method and Description |
|---|---|
protected CellFlatMap |
createSubCellFlatMap(int min,
int max,
boolean descending)
To be used by base (CellFlatMap) class only to create a sub-CellFlatMap Should be used only to
create only CellChunkMap from CellChunkMap
|
protected Cell |
getCell(int i) |
ceilingEntry, ceilingKey, clear, comparator, containsKey, containsValue, descendingKeySet, descendingMap, entrySet, firstEntry, firstKey, floorEntry, floorKey, get, headMap, headMap, higherEntry, higherKey, isEmpty, keySet, lastEntry, lastKey, lowerEntry, lowerKey, navigableKeySet, pollFirstEntry, pollLastEntry, put, putAll, remove, size, subMap, subMap, tailMap, tailMap, valuesclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcompute, computeIfAbsent, computeIfPresent, equals, forEach, getOrDefault, hashCode, merge, putIfAbsent, remove, replace, replace, replaceAllpublic CellChunkMap(Comparator<? super Cell> comparator, Chunk[] chunks, int min, int max, boolean descending)
comparator - a tool for comparing cellschunks - ordered array of index chunk with cell representationsmin - the index of the first cell (usually 0)max - number of Cells or the index of the cell after the maximal celldescending - the order of the given arrayprotected CellFlatMap createSubCellFlatMap(int min, int max, boolean descending)
createSubCellFlatMap in class CellFlatMapprotected Cell getCell(int i)
getCell in class CellFlatMapCopyright © 2007–2020 The Apache Software Foundation. All rights reserved.