public class DruidGroupScan extends AbstractGroupScan
INIT_ALLOCATION, initialAllocation, MAX_ALLOCATION, maxAllocationALL_COLUMNS| Constructor and Description |
|---|
DruidGroupScan(String userName,
DruidScanSpec scanSpec,
DruidStoragePluginConfig storagePluginConfig,
List<SchemaPath> columns,
int maxRecordsToRead,
StoragePluginRegistry pluginRegistry) |
DruidGroupScan(String userName,
DruidStoragePlugin storagePlugin,
DruidScanSpec scanSpec,
List<SchemaPath> columns,
int maxRecordsToRead) |
| 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 maxRecordsToRead) |
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 |
getDataSourceMaxTime() |
String |
getDataSourceMinTime() |
long |
getDatasourceSize() |
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 |
getMaxRecordsToRead() |
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.
|
DruidScanSpec |
getScanSpec() |
ScanStats |
getScanStats() |
DruidSubScan |
getSpecificScan(int minorFragmentId) |
DruidStoragePlugin |
getStoragePlugin() |
String |
getTableName() |
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 DruidGroupScan(String userName, DruidScanSpec scanSpec, DruidStoragePluginConfig storagePluginConfig, List<SchemaPath> columns, int maxRecordsToRead, StoragePluginRegistry pluginRegistry)
public DruidGroupScan(String userName, DruidStoragePlugin storagePlugin, DruidScanSpec scanSpec, List<SchemaPath> columns, int maxRecordsToRead)
public GroupScan clone(List<SchemaPath> columns)
GroupScanclone in interface GroupScanclone in class AbstractGroupScanpublic GroupScan clone(int maxRecordsToRead)
public List<EndpointAffinity> getOperatorAffinity()
HasAffinitygetOperatorAffinity in interface HasAffinitygetOperatorAffinity in class AbstractGroupScanpublic boolean canPushdownProjects(List<SchemaPath> columns)
GroupScancanPushdownProjects in interface GroupScancanPushdownProjects 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 boolean isFilterPushedDown()
public void setFilterPushedDown(boolean filterPushedDown)
public ScanStats getScanStats()
getScanStats in class AbstractGroupScanpublic void applyAssignments(List<CoordinationProtos.DrillbitEndpoint> endpoints)
public DruidSubScan getSpecificScan(int minorFragmentId)
public String getTableName()
public long getDatasourceSize()
public String getDataSourceMinTime()
public String getDataSourceMaxTime()
public int getMaxParallelizationWidth()
public String getDigest()
GroupScanGroupScan which should usually be composed of
all its attributes which could describe it uniquely.public DruidScanSpec getScanSpec()
public DruidStoragePlugin getStoragePlugin()
public List<SchemaPath> getColumns()
GroupScangetColumns in interface GroupScangetColumns in class AbstractGroupScanpublic int getMaxRecordsToRead()
public PhysicalOperator getNewWithChildren(List<PhysicalOperator> children)
PhysicalOperatorCopyright © 2021 The Apache Software Foundation. All rights reserved.