public abstract class AnalyzeFileInfoProvider extends Object implements AnalyzeInfoProvider
AnalyzeInfoProvider for file-based tables.| Constructor and Description |
|---|
AnalyzeFileInfoProvider() |
| 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. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetTableTypeName, supportsGroupScan, supportsMetadataTypepublic List<SchemaPath> getSegmentColumns(DrillTable table, ColumnNamesOptions columnNamesOptions) throws IOException
AnalyzeInfoProviderDrillTable table.getSegmentColumns in interface AnalyzeInfoProvidertable - table for which should be returned segment column namescolumnNamesOptions - column names option valuesIOExceptionpublic List<SchemaPath> getProjectionFields(DrillTable table, MetadataType metadataLevel, ColumnNamesOptions columnNamesOptions) throws IOException
AnalyzeInfoProvidergetProjectionFields in interface AnalyzeInfoProvidertable - drill tablemetadataLevel - metadata level for analyzecolumnNamesOptions - column names option valuesIOExceptionpublic 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) throws IOException
AnalyzeInfoProviderMetadataInfoCollector instance for obtaining information about segments, files, etc.
which should be handled in metastore.getMetadataInfoCollector in interface AnalyzeInfoProviderbasicRequests - 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 instanceIOExceptionpublic SchemaPath getLocationField(ColumnNamesOptions columnNamesOptions)
AnalyzeInfoProvidergetLocationField in interface AnalyzeInfoProvidercolumnNamesOptions - column names option valuespublic NamedExpression getParentLocationExpression(SchemaPath locationField)
AnalyzeInfoProvidergetParentLocationExpression in interface AnalyzeInfoProviderlocationField - location fieldCopyright © 2021 The Apache Software Foundation. All rights reserved.