Class SchemalessScan
java.lang.Object
org.apache.drill.exec.physical.base.AbstractBase
org.apache.drill.exec.physical.base.AbstractGroupScan
org.apache.drill.exec.physical.base.AbstractFileGroupScan
org.apache.drill.exec.physical.base.SchemalessScan
- All Implemented Interfaces:
Iterable<PhysicalOperator>
,GraphValue<PhysicalOperator>
,FileGroupScan
,FragmentLeaf
,GroupScan
,HasAffinity
,Leaf
,PhysicalOperator
,Scan
,SubScan
The type of scan operator, which allows to scan schemaless tables (
DynamicDrillTable
with null selection)-
Field Summary
Fields inherited from class org.apache.drill.exec.physical.base.AbstractBase
INIT_ALLOCATION, initialAllocation, MAX_ALLOCATION, maxAllocation, userName
Fields inherited from interface org.apache.drill.exec.physical.base.GroupScan
ALL_COLUMNS
-
Constructor Summary
ConstructorDescriptionSchemalessScan
(String userName, org.apache.hadoop.fs.Path selectionRoot) SchemalessScan
(String userName, org.apache.hadoop.fs.Path selectionRoot, List<SchemaPath> columns) SchemalessScan
(SchemalessScan that) -
Method Summary
Modifier and TypeMethodDescriptionvoid
applyAssignments
(List<CoordinationProtos.DrillbitEndpoint> endpoints) boolean
canPushdownProjects
(List<SchemaPath> columns) GroupScan should check the list of columns, and see if it could support all the columns in the list.clone
(List<SchemaPath> columns) Returns a clone of GroupScan instance, except that the new GroupScan will use the provided list of columns .Returns a signature of theGroupScan
which should usually be composed of all its attributes which could describe it uniquely.int
getNewWithChildren
(List<PhysicalOperator> children) Regenerate with this node with a new set of children.org.apache.hadoop.fs.Path
Returns path to the selection root.getSpecificScan
(int minorFragmentId) boolean
Whether or not this GroupScan supports pushdown of partition filters (directories for filesystems)toString()
Methods inherited from class org.apache.drill.exec.physical.base.AbstractFileGroupScan
clone, modifyFileSelection
Methods inherited from class org.apache.drill.exec.physical.base.AbstractGroupScan
accept, applyFilter, applyLimit, enforceWidth, getAnalyzeInfoProvider, getColumns, getColumnValueCount, getDistributionAffinity, getFiles, getFilter, getInitialAllocation, getMaxAllocation, getMetadataProvider, getMinParallelizationWidth, getOperatorAffinity, getOperatorType, getPartitionColumns, getScanStats, getScanStats, getTableMetadata, hasFiles, isDistributed, isExecutable, iterator, supportsFilterPushDown, supportsLimitPushdown, usedMetastore
Methods inherited from class org.apache.drill.exec.physical.base.AbstractBase
accept, getCost, getOperatorId, getSVMode, getUserName, isBufferedOperator, setCost, setMaxAllocation, setOperatorId
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.apache.drill.common.graph.GraphValue
accept
Methods inherited from interface org.apache.drill.exec.physical.base.GroupScan
applyFilter, applyLimit, enforceWidth, getAnalyzeInfoProvider, getColumns, getColumnValueCount, getFiles, getFilter, getMetadataProvider, getMinParallelizationWidth, getPartitionColumns, getScanStats, getScanStats, getTableMetadata, hasFiles, isDistributed, supportsFilterPushDown, supportsLimitPushdown, usedMetastore
Methods inherited from interface org.apache.drill.exec.physical.base.HasAffinity
getDistributionAffinity, getOperatorAffinity
Methods inherited from interface java.lang.Iterable
forEach, iterator, spliterator
Methods inherited from interface org.apache.drill.exec.physical.base.PhysicalOperator
accept, getCost, getInitialAllocation, getMaxAllocation, getOperatorId, getOperatorType, getSVMode, getUserName, isBufferedOperator, isExecutable, setCost, setMaxAllocation, setOperatorId
-
Constructor Details
-
SchemalessScan
public SchemalessScan(String userName, org.apache.hadoop.fs.Path selectionRoot, List<SchemaPath> columns) -
SchemalessScan
-
SchemalessScan
-
-
Method Details
-
getSelectionRoot
public org.apache.hadoop.fs.Path getSelectionRoot()Description copied from interface:GroupScan
Returns path to the selection root. If this GroupScan cannot provide selection root, it returns null.- Specified by:
getSelectionRoot
in interfaceGroupScan
- Overrides:
getSelectionRoot
in classAbstractGroupScan
- Returns:
- path to the selection root
-
applyAssignments
- Specified by:
applyAssignments
in interfaceGroupScan
-
getSpecificScan
- Specified by:
getSpecificScan
in interfaceGroupScan
-
getMaxParallelizationWidth
public int getMaxParallelizationWidth()- Specified by:
getMaxParallelizationWidth
in interfaceGroupScan
-
getDigest
Description copied from interface:GroupScan
Returns a signature of theGroupScan
which should usually be composed of all its attributes which could describe it uniquely. -
toString
-
getNewWithChildren
Description copied from interface:PhysicalOperator
Regenerate with this node with a new set of children. This is used in the case of materialization or optimization.- Specified by:
getNewWithChildren
in interfacePhysicalOperator
-
clone
Description copied from interface:GroupScan
Returns a clone of GroupScan instance, except that the new GroupScan will use the provided list of columns .- Specified by:
clone
in interfaceGroupScan
- Overrides:
clone
in classAbstractGroupScan
-
getScanStats
- Overrides:
getScanStats
in classAbstractGroupScan
-
canPushdownProjects
Description copied from interface:GroupScan
GroupScan should check the list of columns, and see if it could support all the columns in the list.- Specified by:
canPushdownProjects
in interfaceGroupScan
- Overrides:
canPushdownProjects
in classAbstractGroupScan
-
supportsPartitionFilterPushdown
public boolean supportsPartitionFilterPushdown()Description copied from interface:GroupScan
Whether or not this GroupScan supports pushdown of partition filters (directories for filesystems)- Specified by:
supportsPartitionFilterPushdown
in interfaceGroupScan
- Overrides:
supportsPartitionFilterPushdown
in classAbstractFileGroupScan
-