Interface TableProvider
-
- All Known Implementing Classes:
EbsTableProvider
,Ec2TableProvider
,EmrClusterTableProvider
,ImagesTableProvider
,RdsTableProvider
,RouteTableProvider
,S3BucketsTableProvider
,S3ObjectsTableProvider
,SecurityGroupsTableProvider
,SubnetTableProvider
,VpcTableProvider
public interface TableProvider
Defines the functionality required to supply the metadata and data required for the Athena AWS CMDB connector to to allow SQL queries to run over the virtual table.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default void
enhancePartitionSchema(SchemaBuilder partitionSchemaBuilder, GetTableLayoutRequest request)
Default implementation does not enhance the partition results schemadefault void
getPartitions(BlockWriter blockWriter, GetTableLayoutRequest request)
Default implementation returns a single partition since many of the TableProviders may not support parallel scans.String
getSchema()
The schema name (aka database) that this table provider's table belongs to.GetTableResponse
getTable(BlockAllocator blockAllocator, GetTableRequest getTableRequest)
Provides access to the Schema details of the requested table.TableName
getTableName()
The fully qualified name of the table represented by this TableProvider.void
readWithConstraint(BlockSpiller spiller, ReadRecordsRequest recordsRequest, QueryStatusChecker queryStatusChecker)
Effects the requested read against the table, writing result row data using the supplied BlockSpliller.
-
-
-
Method Detail
-
getSchema
String getSchema()
The schema name (aka database) that this table provider's table belongs to.- Returns:
- String containing the schema name.
-
getTableName
TableName getTableName()
The fully qualified name of the table represented by this TableProvider.- Returns:
- The TableName containing the fully qualified name of the Table.
-
getTable
GetTableResponse getTable(BlockAllocator blockAllocator, GetTableRequest getTableRequest)
Provides access to the Schema details of the requested table.
-
getPartitions
default void getPartitions(BlockWriter blockWriter, GetTableLayoutRequest request) throws Exception
Default implementation returns a single partition since many of the TableProviders may not support parallel scans.- Throws:
Exception
-
enhancePartitionSchema
default void enhancePartitionSchema(SchemaBuilder partitionSchemaBuilder, GetTableLayoutRequest request)
Default implementation does not enhance the partition results schema
-
readWithConstraint
void readWithConstraint(BlockSpiller spiller, ReadRecordsRequest recordsRequest, QueryStatusChecker queryStatusChecker)
Effects the requested read against the table, writing result row data using the supplied BlockSpliller.
-
-