Package org.apache.drill.exec.vector
Interface VarLenBulkEntry
public interface VarLenBulkEntry
A bulk input entry enables us to process potentially multiple VL values in one shot (especially for very
small values); please refer to
org.apache.drill.exec.vector.VarBinaryVector.BulkInput
.
Format -
- data: [<val1><val2><val3>..]
- value lengths: [<val1-len><val2-len><val3-len>..]
NOTE - Bulk entries are immutable
-
Method Details
-
getTotalLength
int getTotalLength()- Returns:
- total length of this bulk entry data
-
getDataStartOffset
int getDataStartOffset()- Returns:
- data start offset
-
arrayBacked
boolean arrayBacked()- Returns:
- true if this entry's data is backed by an array
-
getArrayData
byte[] getArrayData()- Returns:
- byte buffer containing the data; the data is located within buffer[start-offset, length-1] where buffer is the byte array returned by this method
-
getData
DrillBuf getData()- Returns:
DrillBuf
containing the data; the data is located within [start-offset, length-1]
-
getValuesLength
int[] getValuesLength()- Returns:
- length table (one per VL value)
-
getNumValues
int getNumValues()- Returns:
- number of values (including null values)
-
getNumNonNullValues
int getNumNonNullValues()- Returns:
- number of non-null values
-
hasNulls
boolean hasNulls()- Returns:
- true if this bulk entry has nulls; false otherwise
-