Class MetadataDirectGroupScan
java.lang.Object
org.apache.drill.exec.physical.base.AbstractBase
org.apache.drill.exec.physical.base.AbstractGroupScan
org.apache.drill.exec.store.direct.DirectGroupScan
org.apache.drill.exec.store.direct.MetadataDirectGroupScan
- All Implemented Interfaces:
Iterable<PhysicalOperator>
,GraphValue<PhysicalOperator>
,FragmentLeaf
,GroupScan
,HasAffinity
,Leaf
,PhysicalOperator
,Scan
Represents direct scan based on metadata information.
For example, for parquet files it can be obtained from parquet footer (total row count)
or from parquet metadata files (column counts).
Contains reader, statistics and list of scanned files if present.
-
Field Summary
Fields inherited from class org.apache.drill.exec.store.direct.DirectGroupScan
reader, stats
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
ConstructorDescriptionMetadataDirectGroupScan
(RecordReader reader, org.apache.hadoop.fs.Path selectionRoot, int numFiles, ScanStats stats, boolean usedMetadataSummaryFile, boolean usedMetastore) -
Method Summary
Modifier and TypeMethodDescriptionclone
(List<SchemaPath> columns) Returns a clone of GroupScan instance, except that the new GroupScan will use the provided list of columns .Returns string representation of group scan data.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.Methods inherited from class org.apache.drill.exec.store.direct.DirectGroupScan
applyAssignments, getColumns, getMaxParallelizationWidth, getScanStats, getSpecificScan
Methods inherited from class org.apache.drill.exec.physical.base.AbstractGroupScan
accept, applyFilter, applyLimit, canPushdownProjects, enforceWidth, getAnalyzeInfoProvider, getColumnValueCount, getDistributionAffinity, getFiles, getFilter, getInitialAllocation, getMaxAllocation, getMetadataProvider, getMinParallelizationWidth, getOperatorAffinity, getOperatorType, getPartitionColumns, getScanStats, getScanStats, getTableMetadata, hasFiles, isDistributed, isExecutable, iterator, supportsFilterPushDown, supportsLimitPushdown, supportsPartitionFilterPushdown, 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, toString, wait, wait, wait
Methods inherited from interface org.apache.drill.common.graph.GraphValue
accept
Methods inherited from interface java.lang.Iterable
forEach, spliterator
Methods inherited from interface org.apache.drill.exec.physical.base.PhysicalOperator
getCost, getOperatorId, getSVMode, getUserName, isBufferedOperator, setCost, setMaxAllocation, setOperatorId
-
Constructor Details
-
MetadataDirectGroupScan
public MetadataDirectGroupScan(RecordReader reader, org.apache.hadoop.fs.Path selectionRoot, int numFiles, ScanStats stats, boolean usedMetadataSummaryFile, boolean usedMetastore)
-
-
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
-
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
- Overrides:
getNewWithChildren
in classDirectGroupScan
-
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 classDirectGroupScan
-
getDigest
Returns string representation of group scan data. Includes selection root, number of files, if metadata summary file was used, such data is present.
Example: [selectionRoot = [/tmp/users], numFiles = 1, usedMetadataSummaryFile = false, usedMetastore = true]
- Specified by:
getDigest
in interfaceGroupScan
- Overrides:
getDigest
in classDirectGroupScan
- Returns:
- string representation of group scan data
-