Interface TableProvider
-
- All Known Implementing Classes:
EbsTableProvider,Ec2TableProvider,EmrClusterTableProvider,ImagesTableProvider,RdsTableProvider,RouteTableProvider,S3BucketsTableProvider,S3ObjectsTableProvider,SecurityGroupsTableProvider,SubnetTableProvider,VpcTableProvider
public interface TableProviderDefines 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 voidenhancePartitionSchema(SchemaBuilder partitionSchemaBuilder, GetTableLayoutRequest request)Default implementation does not enhance the partition results schemadefault voidgetPartitions(BlockWriter blockWriter, GetTableLayoutRequest request)Default implementation returns a single partition since many of the TableProviders may not support parallel scans.StringgetSchema()The schema name (aka database) that this table provider's table belongs to.GetTableResponsegetTable(BlockAllocator blockAllocator, GetTableRequest getTableRequest)Provides access to the Schema details of the requested table.TableNamegetTableName()The fully qualified name of the table represented by this TableProvider.voidreadWithConstraint(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.
-
-