public interface AnalyzeInfoProvider
| Modifier and Type | Method and Description |
|---|---|
SchemaPath |
getLocationField(ColumnNamesOptions columnNamesOptions)
Provides schema path to field which will be used as a location for specific table data,
for example, for file-based tables, it may be `fqn`.
|
MetadataInfoCollector |
getMetadataInfoCollector(BasicTablesRequests basicRequests,
TableInfo tableInfo,
FormatSelection selection,
PlannerSettings settings,
Supplier<org.apache.calcite.rel.core.TableScan> tableScanSupplier,
List<SchemaPath> interestingColumns,
MetadataType metadataLevel,
int segmentColumnsCount)
Returns
MetadataInfoCollector instance for obtaining information about segments, files, etc. |
NamedExpression |
getParentLocationExpression(SchemaPath locationField)
Returns expression which may be used to determine parent location for specific table data,
i.e.
|
List<SchemaPath> |
getProjectionFields(DrillTable table,
MetadataType metadataLevel,
ColumnNamesOptions columnNamesOptions)
Returns list of fields required for ANALYZE.
|
List<SchemaPath> |
getSegmentColumns(DrillTable table,
ColumnNamesOptions columnNamesOptions)
Returns list of segment column names for specified
DrillTable table. |
String |
getTableTypeName()
Returns table type name supported by this
AnalyzeInfoProvider. |
boolean |
supportsGroupScan(GroupScan groupScan)
Checks whether this
AnalyzeInfoProvider supports specified GroupScan type. |
boolean |
supportsMetadataType(MetadataType metadataType)
Checks whether this
AnalyzeInfoProvider supports specified MetadataType. |
List<SchemaPath> getSegmentColumns(DrillTable table, ColumnNamesOptions columnNamesOptions) throws IOException
DrillTable table.table - table for which should be returned segment column namescolumnNamesOptions - column names option valuesIOExceptionList<SchemaPath> getProjectionFields(DrillTable table, MetadataType metadataLevel, ColumnNamesOptions columnNamesOptions) throws IOException
table - drill tablemetadataLevel - metadata level for analyzecolumnNamesOptions - column names option valuesIOExceptionMetadataInfoCollector getMetadataInfoCollector(BasicTablesRequests basicRequests, TableInfo tableInfo, FormatSelection selection, PlannerSettings settings, Supplier<org.apache.calcite.rel.core.TableScan> tableScanSupplier, List<SchemaPath> interestingColumns, MetadataType metadataLevel, int segmentColumnsCount) throws IOException
MetadataInfoCollector instance for obtaining information about segments, files, etc.
which should be handled in metastore.basicRequests - Metastore tables data provider helpertableInfo - table infoselection - format selectionsettings - planner settingstableScanSupplier - supplier for table scaninterestingColumns - list of interesting columnsmetadataLevel - metadata levelsegmentColumnsCount - number of segment columnsMetadataInfoCollector instanceIOExceptionSchemaPath getLocationField(ColumnNamesOptions columnNamesOptions)
columnNamesOptions - column names option valuesNamedExpression getParentLocationExpression(SchemaPath locationField)
locationField - location fieldboolean supportsGroupScan(GroupScan groupScan)
AnalyzeInfoProvider supports specified GroupScan type.groupScan - group scantrue if this AnalyzeInfoProvider supports specified GroupScan typeString getTableTypeName()
AnalyzeInfoProvider.boolean supportsMetadataType(MetadataType metadataType)
AnalyzeInfoProvider supports specified MetadataType.metadataType - metadata typetrue if this AnalyzeInfoProvider supports specified MetadataTypeCopyright © 2021 The Apache Software Foundation. All rights reserved.