Class TrinoGlueCatalog
java.lang.Object
io.trino.plugin.iceberg.catalog.AbstractTrinoCatalog
io.trino.plugin.iceberg.catalog.glue.TrinoGlueCatalog
- All Implemented Interfaces:
TrinoCatalog
-
Nested Class Summary
Nested classes/interfaces inherited from class io.trino.plugin.iceberg.catalog.AbstractTrinoCatalog
AbstractTrinoCatalog.MaterializedViewMayBeBeingRemovedException -
Field Summary
Fields inherited from class io.trino.plugin.iceberg.catalog.AbstractTrinoCatalog
PRESTO_QUERY_ID_NAME, tableOperationsProvider, TRINO_CREATED_BY, TRINO_CREATED_BY_VALUE -
Constructor Summary
ConstructorsConstructorDescriptionTrinoGlueCatalog(CatalogName catalogName, TrinoFileSystemFactory fileSystemFactory, TypeManager typeManager, IcebergTableOperationsProvider tableOperationsProvider, String trinoVersion, com.amazonaws.services.glue.AWSGlueAsync glueClient, GlueMetastoreStats stats, Optional<String> defaultSchemaLocation, boolean useUniqueTableLocation) -
Method Summary
Modifier and TypeMethodDescriptionvoidcreateMaterializedView(ConnectorSession session, SchemaTableName viewName, ConnectorMaterializedViewDefinition definition, boolean replace, boolean ignoreExisting) voidcreateNamespace(ConnectorSession session, String namespace, Map<String, Object> properties, TrinoPrincipal owner) voidcreateView(ConnectorSession session, SchemaTableName schemaViewName, ConnectorViewDefinition definition, boolean replace) defaultTableLocation(ConnectorSession session, SchemaTableName schemaTableName) protected Optional<ConnectorMaterializedViewDefinition>doGetMaterializedView(ConnectorSession session, SchemaTableName viewName) voiddropMaterializedView(ConnectorSession session, SchemaTableName viewName) voiddropNamespace(ConnectorSession session, String namespace) voiddropTable(ConnectorSession session, SchemaTableName schemaTableName) voiddropView(ConnectorSession session, SchemaTableName schemaViewName) getNamespacePrincipal(ConnectorSession session, String namespace) getView(ConnectorSession session, SchemaTableName viewName) listMaterializedViews(ConnectorSession session, Optional<String> namespace) listNamespaces(ConnectorSession session) listTables(ConnectorSession session, Optional<String> namespace) listViews(ConnectorSession session, Optional<String> namespace) loadNamespaceMetadata(ConnectorSession session, String namespace) org.apache.iceberg.TableloadTable(ConnectorSession session, SchemaTableName table) load an Iceberg tablebooleannamespaceExists(ConnectorSession session, String namespace) org.apache.iceberg.TransactionnewCreateTableTransaction(ConnectorSession session, SchemaTableName schemaTableName, org.apache.iceberg.Schema schema, org.apache.iceberg.PartitionSpec partitionSpec, org.apache.iceberg.SortOrder sortOrder, String location, Map<String, String> properties) redirectTable(ConnectorSession session, SchemaTableName tableName) voidregisterTable(ConnectorSession session, SchemaTableName schemaTableName, String tableLocation, String metadataLocation) voidrenameMaterializedView(ConnectorSession session, SchemaTableName source, SchemaTableName target) voidrenameNamespace(ConnectorSession session, String source, String target) voidrenameTable(ConnectorSession session, SchemaTableName from, SchemaTableName to) voidrenameView(ConnectorSession session, SchemaTableName source, SchemaTableName target) voidsetNamespacePrincipal(ConnectorSession session, String namespace, TrinoPrincipal principal) voidsetTablePrincipal(ConnectorSession session, SchemaTableName schemaTableName, TrinoPrincipal principal) voidsetViewPrincipal(ConnectorSession session, SchemaTableName schemaViewName, TrinoPrincipal principal) voidunregisterTable(ConnectorSession session, SchemaTableName schemaTableName) voidupdateViewColumnComment(ConnectorSession session, SchemaTableName viewName, String columnName, Optional<String> comment) voidupdateViewComment(ConnectorSession session, SchemaTableName viewName, Optional<String> comment) Methods inherited from class io.trino.plugin.iceberg.catalog.AbstractTrinoCatalog
createMaterializedViewProperties, createMaterializedViewStorageTable, createNewTableName, deleteTableDirectory, getMaterializedView, getMaterializedViewDefinition, getViews, newCreateTableTransaction, updateColumnComment, updateTableComment
-
Constructor Details
-
TrinoGlueCatalog
public TrinoGlueCatalog(CatalogName catalogName, TrinoFileSystemFactory fileSystemFactory, TypeManager typeManager, IcebergTableOperationsProvider tableOperationsProvider, String trinoVersion, com.amazonaws.services.glue.AWSGlueAsync glueClient, GlueMetastoreStats stats, Optional<String> defaultSchemaLocation, boolean useUniqueTableLocation)
-
-
Method Details
-
namespaceExists
-
listNamespaces
-
dropNamespace
-
loadNamespaceMetadata
-
getNamespacePrincipal
-
createNamespace
public void createNamespace(ConnectorSession session, String namespace, Map<String, Object> properties, TrinoPrincipal owner) -
setNamespacePrincipal
public void setNamespacePrincipal(ConnectorSession session, String namespace, TrinoPrincipal principal) -
renameNamespace
-
listTables
-
loadTable
Description copied from interface:TrinoCatalogload an Iceberg table- Parameters:
session- Trino sessiontable- Trino schema and table name- Returns:
- Iceberg table loaded
-
dropTable
-
newCreateTableTransaction
public org.apache.iceberg.Transaction newCreateTableTransaction(ConnectorSession session, SchemaTableName schemaTableName, org.apache.iceberg.Schema schema, org.apache.iceberg.PartitionSpec partitionSpec, org.apache.iceberg.SortOrder sortOrder, String location, Map<String, String> properties) -
registerTable
public void registerTable(ConnectorSession session, SchemaTableName schemaTableName, String tableLocation, String metadataLocation) throws TrinoException - Throws:
TrinoException
-
unregisterTable
-
renameTable
-
defaultTableLocation
-
setTablePrincipal
public void setTablePrincipal(ConnectorSession session, SchemaTableName schemaTableName, TrinoPrincipal principal) -
createView
public void createView(ConnectorSession session, SchemaTableName schemaViewName, ConnectorViewDefinition definition, boolean replace) -
renameView
-
setViewPrincipal
public void setViewPrincipal(ConnectorSession session, SchemaTableName schemaViewName, TrinoPrincipal principal) -
dropView
-
listViews
-
getView
public Optional<ConnectorViewDefinition> getView(ConnectorSession session, SchemaTableName viewName) -
updateViewComment
public void updateViewComment(ConnectorSession session, SchemaTableName viewName, Optional<String> comment) -
updateViewColumnComment
public void updateViewColumnComment(ConnectorSession session, SchemaTableName viewName, String columnName, Optional<String> comment) -
listMaterializedViews
public List<SchemaTableName> listMaterializedViews(ConnectorSession session, Optional<String> namespace) -
createMaterializedView
public void createMaterializedView(ConnectorSession session, SchemaTableName viewName, ConnectorMaterializedViewDefinition definition, boolean replace, boolean ignoreExisting) -
dropMaterializedView
-
doGetMaterializedView
protected Optional<ConnectorMaterializedViewDefinition> doGetMaterializedView(ConnectorSession session, SchemaTableName viewName) - Specified by:
doGetMaterializedViewin classAbstractTrinoCatalog
-
renameMaterializedView
public void renameMaterializedView(ConnectorSession session, SchemaTableName source, SchemaTableName target) -
redirectTable
public Optional<CatalogSchemaTableName> redirectTable(ConnectorSession session, SchemaTableName tableName)
-