Interface TableProvider
- All Known Subinterfaces:
CustomTableResolver,MetaStore
- All Known Implementing Classes:
AvroTableProvider,BigQueryTableProvider,BigtableTableProvider,DataCatalogTableProvider,DataGeneratorTableProvider,DataStoreV1TableProvider,FullNameTableProvider,GenerateSequenceTableProvider,IcebergMetastore,InMemoryMetaStore,InMemoryMetaTableProvider,KafkaTableProvider,MongoDbTableProvider,ParquetTableProvider,PubsubLiteTableProvider,PubsubTableProvider,ReadOnlyTableProvider,SchemaIOTableProviderWrapper,TestTableProvider,TextTableProvider
public interface TableProvider
A
TableProvider handles the metadata CRUD of a specified kind of tables.
So there will be a provider to handle textfile(CSV) based tables, there is a provider to handle MySQL based tables, a provider to handle Casandra based tables etc.
Note: all implementations marked with @AutoService(TableProvider.class) are
automatically loaded by CLI or other cases when JdbcDriver is used with default
connection parameters.
-
Method Summary
Modifier and TypeMethodDescriptionbuildBeamSqlTable(Table table) Build aBeamSqlTableusing the given table meta info.voidcreateTable(Table table) Creates a table.voidDrops a table.default TableProvidergetSubProvider(String name) Returns a sub-provider, e.g.Returns all sub-providers, e.g.Get a specific table from this provider it is present, or null if it is not present.Get all tables from this provider.Gets the table type this provider handles.default booleansupportsPartitioning(Table table)
-
Method Details
-
getTableType
String getTableType()Gets the table type this provider handles. -
createTable
Creates a table. -
dropTable
Drops a table.- Parameters:
tableName-
-
getTables
Get all tables from this provider. -
getTable
Get a specific table from this provider it is present, or null if it is not present. -
buildBeamSqlTable
Build aBeamSqlTableusing the given table meta info. -
getSubProviders
Returns all sub-providers, e.g. sub-schemas. Temporary, this logic needs to live inBeamCalciteSchema. -
getSubProvider
Returns a sub-provider, e.g. sub-schema. Temporary, this logic needs to live inBeamCalciteSchema. -
supportsPartitioning
-