Class HyperRowSetImpl
java.lang.Object
org.apache.drill.exec.physical.rowSet.AbstractRowSet
org.apache.drill.exec.physical.rowSet.HyperRowSetImpl
- All Implemented Interfaces:
RowSet
,RowSet.HyperRowSet
Implements a row set wrapper around a collection of "hyper vectors."
A hyper-vector is a logical vector formed by a series of physical vectors
stacked on top of one another. To make a row set, we have a hyper-vector
for each column. Another way to visualize this is as a "hyper row set":
a stacked collection of single row sets: each column is represented by a
vector per row set, with each vector in a row set having the same number
of rows. An SV4 then provides a uniform index into the rows in the
hyper set. A hyper row set is read-only.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.drill.exec.physical.rowSet.RowSet
RowSet.ExtendableRowSet, RowSet.HyperRowSet, RowSet.HyperRowSetBuilder, RowSet.SingleRowSet
-
Field Summary
Fields inherited from class org.apache.drill.exec.physical.rowSet.AbstractRowSet
container, schema
-
Constructor Summary
ConstructorDescriptionHyperRowSetImpl
(TupleMetadata schema, VectorContainer container, SelectionVector4 sv4) HyperRowSetImpl
(VectorContainer container, SelectionVector4 sv4) -
Method Summary
Modifier and TypeMethodDescriptionstatic RowSet.HyperRowSetBuilder
builder
(BufferAllocator allocator) void
clear()
static RowSet.HyperRowSet
fromContainer
(VectorContainer container, SelectionVector4 sv4) static RowSet.HyperRowSet
fromRowSets
(BufferAllocator allocator, RowSet.SingleRowSet... rowSets) getSv4()
boolean
boolean
reader()
int
rowCount()
Methods inherited from class org.apache.drill.exec.physical.rowSet.AbstractRowSet
allocator, batchSchema, container, print, schema, size, toString, vectorAccessible
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.apache.drill.exec.physical.rowSet.RowSet
allocator, batchSchema, container, print, schema, size, vectorAccessible
-
Constructor Details
-
HyperRowSetImpl
-
HyperRowSetImpl
public HyperRowSetImpl(VectorContainer container, SelectionVector4 sv4) throws SchemaChangeException - Throws:
SchemaChangeException
-
-
Method Details
-
builder
-
fromContainer
-
fromRowSets
public static RowSet.HyperRowSet fromRowSets(BufferAllocator allocator, RowSet.SingleRowSet... rowSets) -
isExtendable
public boolean isExtendable()- Specified by:
isExtendable
in interfaceRowSet
-
isWritable
public boolean isWritable()- Specified by:
isWritable
in interfaceRowSet
-
reader
-
indirectionType
- Specified by:
indirectionType
in interfaceRowSet
-
getSv4
- Specified by:
getSv4
in interfaceRowSet.HyperRowSet
-
rowCount
public int rowCount()- Specified by:
rowCount
in interfaceRowSet
- Overrides:
rowCount
in classAbstractRowSet
-
clear
public void clear()- Specified by:
clear
in interfaceRowSet
- Overrides:
clear
in classAbstractRowSet
-