public class EasyGroupScan extends AbstractGroupScanWithMetadata<TableMetadataProvider>
AbstractGroupScanWithMetadata.GroupScanWithMetadataFilterer<B extends AbstractGroupScanWithMetadata.GroupScanWithMetadataFilterer<B>>columns, files, fileSet, filter, matchAllMetadata, maxRecords, metadataProvider, nonInterestingColumnsMetadata, partitionColumns, partitions, segments, tableMetadata, usedMetastoreINIT_ALLOCATION, initialAllocation, MAX_ALLOCATION, maxAllocationALL_COLUMNS| Constructor and Description |
|---|
EasyGroupScan(String userName,
FileSelection selection,
EasyFormatPlugin<?> formatPlugin,
List<SchemaPath> columns,
org.apache.hadoop.fs.Path selectionRoot,
int minWidth,
MetadataProviderManager metadataProvider) |
EasyGroupScan(String userName,
FileSelection selection,
EasyFormatPlugin<?> formatPlugin,
List<SchemaPath> columns,
org.apache.hadoop.fs.Path selectionRoot,
MetadataProviderManager metadataProviderManager) |
EasyGroupScan(String userName,
List<org.apache.hadoop.fs.Path> files,
StoragePluginConfig storageConfig,
FormatPluginConfig formatConfig,
StoragePluginRegistry engineRegistry,
List<SchemaPath> columns,
org.apache.hadoop.fs.Path selectionRoot,
TupleMetadata schema) |
| Modifier and Type | Method and Description |
|---|---|
void |
applyAssignments(List<CoordinationProtos.DrillbitEndpoint> incomingEndpoints) |
boolean |
canPushdownProjects(List<SchemaPath> columns)
GroupScan should check the list of columns, and see if it could support all the columns in the list.
|
FileGroupScan |
clone(FileSelection selection) |
GroupScan |
clone(List<SchemaPath> columns)
Returns a clone of GroupScan instance, except that the new GroupScan will use the provided list of columns .
|
protected FileTableMetadataProviderBuilder<?> |
defaultTableMetadataProviderBuilder(MetadataProviderManager source)
Returns
TableMetadataProviderBuilder instance which may provide metadata
without using Drill Metastore. |
AnalyzeInfoProvider |
getAnalyzeInfoProvider()
Returns
AnalyzeInfoProvider instance which will be used when running ANALYZE statement. |
List<org.apache.hadoop.fs.Path> |
getFiles()
Returns a collection of file names associated with this GroupScan.
|
FileSelection |
getFileSelection() |
protected AbstractGroupScanWithMetadata.GroupScanWithMetadataFilterer<?> |
getFilterer()
Returns holder for metadata values which provides API to filter metadata
and build new group scan instance using filtered metadata.
|
FormatPluginConfig |
getFormatConfig() |
int |
getMaxParallelizationWidth() |
int |
getMinParallelizationWidth()
At minimum, the GroupScan requires these many fragments to run.
|
PhysicalOperator |
getNewWithChildren(List<PhysicalOperator> children)
Regenerate with this node with a new set of children.
|
List<EndpointAffinity> |
getOperatorAffinity()
Get the list of Endpoints with associated affinities that this operator has preference for.
|
protected List<String> |
getPartitionValues(LocationProvider locationProvider) |
ScanStats |
getScanStats(PlannerSettings settings) |
TupleMetadata |
getSchema() |
org.apache.hadoop.fs.Path |
getSelectionRoot()
Returns path to the selection root.
|
EasySubScan |
getSpecificScan(int minorFragmentId) |
StoragePluginConfig |
getStorageConfig() |
Iterable<CompleteFileWork> |
getWorkIterable() |
boolean |
hasFiles()
Return true if this GroupScan can return its selection as a list of file names (retrieved by getFiles()).
|
void |
modifyFileSelection(FileSelection selection) |
protected boolean |
supportsFileImplicitColumns() |
boolean |
supportsFilterPushDown()
Checks whether this group scan supports filter push down.
|
protected FileTableMetadataProviderBuilder<?> |
tableMetadataProviderBuilder(MetadataProviderManager source)
Returns
TableMetadataProviderBuilder instance based on specified
MetadataProviderManager source. |
String |
toString() |
applyFilter, applyLimit, checkMetadataConsistency, getColumns, getColumnValueCount, getDigest, getFileSet, getFilesMetadata, getFilter, getFilterPredicate, getFilterPredicate, getFilterString, getMaxRecords, getMetadataProvider, getNextOrEmpty, getNonInterestingColumnsMetadata, getPartitionColumns, getPartitionsMetadata, getPartitionValue, getScanStats, getSegmentsMetadata, getTableMetadata, getTypeForColumn, init, isAllDataPruned, isGroupScanFullyMatchesFilter, isImplicitOrPartCol, isMatchAllMetadata, limitMetadata, pruneForPartitions, setFilter, setFilterForRuntime, supportsLimitPushdown, usedMetastoresupportsPartitionFilterPushdownaccept, enforceWidth, getDistributionAffinity, getInitialAllocation, getMaxAllocation, getOperatorType, isDistributed, isExecutable, iteratoraccept, getCost, getOperatorId, getSVMode, getUserName, isBufferedOperator, setCost, setMaxAllocation, setOperatorIdclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitenforceWidth, isDistributedaccept, getCost, getInitialAllocation, getMaxAllocation, getOperatorId, getOperatorType, getSVMode, getUserName, isBufferedOperator, isExecutable, setCost, setMaxAllocation, setOperatorIdacceptforEach, iterator, spliteratorgetDistributionAffinitypublic EasyGroupScan(String userName, List<org.apache.hadoop.fs.Path> files, StoragePluginConfig storageConfig, FormatPluginConfig formatConfig, StoragePluginRegistry engineRegistry, List<SchemaPath> columns, org.apache.hadoop.fs.Path selectionRoot, TupleMetadata schema) throws IOException
IOExceptionpublic EasyGroupScan(String userName, FileSelection selection, EasyFormatPlugin<?> formatPlugin, List<SchemaPath> columns, org.apache.hadoop.fs.Path selectionRoot, MetadataProviderManager metadataProviderManager) throws IOException
IOExceptionpublic EasyGroupScan(String userName, FileSelection selection, EasyFormatPlugin<?> formatPlugin, List<SchemaPath> columns, org.apache.hadoop.fs.Path selectionRoot, int minWidth, MetadataProviderManager metadataProvider) throws IOException
IOExceptionpublic Iterable<CompleteFileWork> getWorkIterable()
public org.apache.hadoop.fs.Path getSelectionRoot()
GroupScangetSelectionRoot in interface GroupScangetSelectionRoot in class AbstractGroupScanpublic int getMinParallelizationWidth()
GroupScanSimpleParallelizergetMinParallelizationWidth in interface GroupScangetMinParallelizationWidth in class AbstractGroupScanpublic int getMaxParallelizationWidth()
public ScanStats getScanStats(PlannerSettings settings)
getScanStats in interface GroupScangetScanStats in class AbstractGroupScanpublic boolean hasFiles()
GroupScanhasFiles in interface GroupScanhasFiles in class AbstractGroupScanWithMetadata<TableMetadataProvider>public List<org.apache.hadoop.fs.Path> getFiles()
GroupScangetFiles in interface GroupScangetFiles in class AbstractGroupScanWithMetadata<TableMetadataProvider>public FileSelection getFileSelection()
public void modifyFileSelection(FileSelection selection)
modifyFileSelection in interface FileGroupScanmodifyFileSelection in class AbstractGroupScanWithMetadata<TableMetadataProvider>protected boolean supportsFileImplicitColumns()
supportsFileImplicitColumns in class AbstractGroupScanWithMetadata<TableMetadataProvider>public boolean supportsFilterPushDown()
GroupScansupportsFilterPushDown in interface GroupScansupportsFilterPushDown in class AbstractGroupScantrue if this group scan supports filter push down,
false otherwiseprotected List<String> getPartitionValues(LocationProvider locationProvider)
getPartitionValues in class AbstractGroupScanWithMetadata<TableMetadataProvider>public PhysicalOperator getNewWithChildren(List<PhysicalOperator> children)
PhysicalOperatorpublic List<EndpointAffinity> getOperatorAffinity()
HasAffinitygetOperatorAffinity in interface HasAffinitygetOperatorAffinity in class AbstractGroupScanpublic void applyAssignments(List<CoordinationProtos.DrillbitEndpoint> incomingEndpoints)
public EasySubScan getSpecificScan(int minorFragmentId)
public StoragePluginConfig getStorageConfig()
public FormatPluginConfig getFormatConfig()
public GroupScan clone(List<SchemaPath> columns)
GroupScanclone in interface GroupScanclone in class AbstractGroupScanpublic FileGroupScan clone(FileSelection selection) throws IOException
clone in interface FileGroupScanclone in class AbstractFileGroupScanIOExceptionpublic boolean canPushdownProjects(List<SchemaPath> columns)
GroupScancanPushdownProjects in interface GroupScancanPushdownProjects in class AbstractGroupScanpublic TupleMetadata getSchema()
getSchema in class AbstractGroupScanWithMetadata<TableMetadataProvider>public AnalyzeInfoProvider getAnalyzeInfoProvider()
GroupScanAnalyzeInfoProvider instance which will be used when running ANALYZE statement.getAnalyzeInfoProvider in interface GroupScangetAnalyzeInfoProvider in class AbstractGroupScanAnalyzeInfoProvider instanceprotected AbstractGroupScanWithMetadata.GroupScanWithMetadataFilterer<?> getFilterer()
AbstractGroupScanWithMetadatagetFilterer in class AbstractGroupScanWithMetadata<TableMetadataProvider>protected FileTableMetadataProviderBuilder<?> tableMetadataProviderBuilder(MetadataProviderManager source)
AbstractGroupScanWithMetadataTableMetadataProviderBuilder instance based on specified
MetadataProviderManager source.tableMetadataProviderBuilder in class AbstractGroupScanWithMetadata<TableMetadataProvider>source - metadata provider managerTableMetadataProviderBuilder instanceprotected FileTableMetadataProviderBuilder<?> defaultTableMetadataProviderBuilder(MetadataProviderManager source)
AbstractGroupScanWithMetadataTableMetadataProviderBuilder instance which may provide metadata
without using Drill Metastore.defaultTableMetadataProviderBuilder in class AbstractGroupScanWithMetadata<TableMetadataProvider>source - metadata provider managerTableMetadataProviderBuilder instanceCopyright © 2021 The Apache Software Foundation. All rights reserved.