public class MongoGroupScan extends AbstractGroupScan implements DrillMongoConstants
INIT_ALLOCATION, initialAllocation, MAX_ALLOCATION, maxAllocationCHUNKS, CONFIG, COUNT, DATABASES, HOST, ID, MAX, MIN, NS, PARTITIONED, PASSWORD_CONFIG_SUFFIX, PRIMARY, SHARD, SHARDS, SIZE, STORE_CONFIG_PREFIX, SYS_STORE_PROVIDER_MONGO_URL, USERNAME_CONFIG_SUFFIXALL_COLUMNS| Constructor and Description |
|---|
MongoGroupScan(String userName,
MongoScanSpec scanSpec,
MongoStoragePluginConfig storagePluginConfig,
List<SchemaPath> columns,
StoragePluginRegistry pluginRegistry,
int maxRecords) |
MongoGroupScan(String userName,
MongoStoragePlugin storagePlugin,
MongoScanSpec scanSpec,
List<SchemaPath> columns,
int maxRecords) |
| Modifier and Type | Method and Description |
|---|---|
void |
applyAssignments(List<CoordinationProtos.DrillbitEndpoint> endpoints) |
GroupScan |
applyLimit(int maxRecords)
By default, return null to indicate row count based prune is not supported.
|
boolean |
canPushdownProjects(List<SchemaPath> columns)
GroupScan should check the list of columns, and see if it could support all the columns in the list.
|
GroupScan |
clone(int maxRecords) |
GroupScan |
clone(List<SchemaPath> columns)
Returns a clone of GroupScan instance, except that the new GroupScan will use the provided list of columns .
|
List<SchemaPath> |
getColumns()
Returns a list of columns scanned by this group scan
|
String |
getDigest()
Returns a signature of the
GroupScan which should usually be composed of
all its attributes which could describe it uniquely. |
int |
getMaxParallelizationWidth() |
int |
getMaxRecords() |
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.
|
MongoScanSpec |
getScanSpec() |
ScanStats |
getScanStats() |
MongoSubScan |
getSpecificScan(int minorFragmentId) |
MongoStoragePluginConfig |
getStorageConfig() |
MongoStoragePlugin |
getStoragePlugin() |
boolean |
isFilterPushedDown() |
void |
setFilterPushedDown(boolean filterPushedDown) |
boolean |
supportsLimitPushdown()
Default is not to support limit pushdown.
|
String |
toString() |
accept, applyFilter, enforceWidth, getAnalyzeInfoProvider, getColumnValueCount, getDistributionAffinity, getFiles, getFilter, getInitialAllocation, getMaxAllocation, getMetadataProvider, getMinParallelizationWidth, getOperatorType, getPartitionColumns, getScanStats, getSelectionRoot, getTableMetadata, hasFiles, isDistributed, isExecutable, iterator, supportsFilterPushDown, supportsPartitionFilterPushdown, usedMetastoreaccept, getCost, getOperatorId, getSVMode, getUserName, isBufferedOperator, setCost, setMaxAllocation, setOperatorIdclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetCost, getOperatorId, getSVMode, getUserName, isBufferedOperator, setCost, setMaxAllocation, setOperatorIdacceptforEach, spliteratorpublic MongoGroupScan(String userName, MongoScanSpec scanSpec, MongoStoragePluginConfig storagePluginConfig, List<SchemaPath> columns, StoragePluginRegistry pluginRegistry, int maxRecords) throws IOException
IOExceptionpublic MongoGroupScan(String userName, MongoStoragePlugin storagePlugin, MongoScanSpec scanSpec, List<SchemaPath> columns, int maxRecords) throws IOException
IOExceptionpublic boolean isFilterPushedDown()
public void setFilterPushedDown(boolean filterPushedDown)
public GroupScan clone(List<SchemaPath> columns)
GroupScanclone in interface GroupScanclone in class AbstractGroupScanpublic GroupScan clone(int maxRecords)
public boolean canPushdownProjects(List<SchemaPath> columns)
GroupScancanPushdownProjects in interface GroupScancanPushdownProjects in class AbstractGroupScanpublic void applyAssignments(List<CoordinationProtos.DrillbitEndpoint> endpoints)
applyAssignments in interface GroupScanpublic MongoSubScan getSpecificScan(int minorFragmentId)
getSpecificScan in interface GroupScanpublic int getMaxParallelizationWidth()
getMaxParallelizationWidth in interface GroupScanpublic String getDigest()
GroupScanGroupScan which should usually be composed of
all its attributes which could describe it uniquely.public ScanStats getScanStats()
getScanStats in class AbstractGroupScanpublic PhysicalOperator getNewWithChildren(List<PhysicalOperator> children)
PhysicalOperatorgetNewWithChildren in interface PhysicalOperatorpublic List<EndpointAffinity> getOperatorAffinity()
HasAffinitygetOperatorAffinity in interface HasAffinitygetOperatorAffinity in class AbstractGroupScanpublic boolean supportsLimitPushdown()
AbstractGroupScansupportsLimitPushdown in interface GroupScansupportsLimitPushdown in class AbstractGroupScanpublic GroupScan applyLimit(int maxRecords)
AbstractGroupScanapplyLimit in interface GroupScanapplyLimit in class AbstractGroupScanmaxRecords - : the number of rows requested from group scan.public List<SchemaPath> getColumns()
GroupScangetColumns in interface GroupScangetColumns in class AbstractGroupScanpublic MongoScanSpec getScanSpec()
public MongoStoragePluginConfig getStorageConfig()
public int getMaxRecords()
public MongoStoragePlugin getStoragePlugin()
Copyright © 2021 The Apache Software Foundation. All rights reserved.