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, wait
getTableTypeName, supportsGroupScan, supportsMetadataType
public List<SchemaPath> getSegmentColumns(DrillTable table, ColumnNamesOptions columnNamesOptions) throws IOException
AnalyzeInfoProvider
DrillTable
table.getSegmentColumns
in interface AnalyzeInfoProvider
table
- table for which should be returned segment column namescolumnNamesOptions
- column names option valuesIOException
public List<SchemaPath> getProjectionFields(DrillTable table, MetadataType metadataLevel, ColumnNamesOptions columnNamesOptions) throws IOException
AnalyzeInfoProvider
getProjectionFields
in interface AnalyzeInfoProvider
table
- drill tablemetadataLevel
- metadata level for analyzecolumnNamesOptions
- column names option valuesIOException
public 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
AnalyzeInfoProvider
MetadataInfoCollector
instance for obtaining information about segments, files, etc.
which should be handled in metastore.getMetadataInfoCollector
in interface AnalyzeInfoProvider
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
instanceIOException
public SchemaPath getLocationField(ColumnNamesOptions columnNamesOptions)
AnalyzeInfoProvider
getLocationField
in interface AnalyzeInfoProvider
columnNamesOptions
- column names option valuespublic NamedExpression getParentLocationExpression(SchemaPath locationField)
AnalyzeInfoProvider
getParentLocationExpression
in interface AnalyzeInfoProvider
locationField
- location fieldCopyright © 1970 The Apache Software Foundation. All rights reserved.