Class TrinoHiveCatalog
java.lang.Object
io.trino.plugin.iceberg.catalog.AbstractTrinoCatalog
io.trino.plugin.iceberg.catalog.hms.TrinoHiveCatalog
- All Implemented Interfaces:
TrinoCatalog
-
Nested Class Summary
Nested classes/interfaces inherited from class io.trino.plugin.iceberg.catalog.AbstractTrinoCatalog
AbstractTrinoCatalog.MaterializedViewMayBeBeingRemovedException -
Field Summary
FieldsFields inherited from class io.trino.plugin.iceberg.catalog.AbstractTrinoCatalog
PRESTO_QUERY_ID_NAME, PRESTO_VERSION_NAME, PRESTO_VIEW_COMMENT, PRESTO_VIEW_EXPANDED_TEXT_MARKER, tableOperationsProvider, TRINO_CREATED_BY, TRINO_CREATED_BY_VALUE -
Constructor Summary
ConstructorsConstructorDescriptionTrinoHiveCatalog(CatalogName catalogName, CachingHiveMetastore metastore, HdfsEnvironment hdfsEnvironment, TypeManager typeManager, IcebergTableOperationsProvider tableOperationsProvider, String trinoVersion, boolean useUniqueTableLocation, boolean isUsingSystemSecurity, boolean deleteSchemaLocationsFallback) -
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 schemaTableName) load an Iceberg tableorg.apache.iceberg.TransactionnewCreateTableTransaction(ConnectorSession session, SchemaTableName schemaTableName, org.apache.iceberg.Schema schema, org.apache.iceberg.PartitionSpec partitionSpec, String location, Map<String, String> properties) redirectTable(ConnectorSession session, SchemaTableName tableName) 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) voidupdateColumnComment(ConnectorSession session, SchemaTableName schemaTableName, ColumnIdentity columnIdentity, Optional<String> comment) voidupdateTableComment(ConnectorSession session, SchemaTableName schemaTableName, Optional<String> comment) voidupdateViewComment(ConnectorSession session, SchemaTableName viewName, Optional<String> comment) Methods inherited from class io.trino.plugin.iceberg.catalog.AbstractTrinoCatalog
createMaterializedViewProperties, createMaterializedViewStorageTable, createNewTableName, createViewProperties, deleteTableDirectory, getMaterializedView, getMaterializedViewDefinition, getView, getViews, newCreateTableTransaction
-
Field Details
-
DEPENDS_ON_TABLES
- See Also:
-
-
Constructor Details
-
TrinoHiveCatalog
public TrinoHiveCatalog(CatalogName catalogName, CachingHiveMetastore metastore, HdfsEnvironment hdfsEnvironment, TypeManager typeManager, IcebergTableOperationsProvider tableOperationsProvider, String trinoVersion, boolean useUniqueTableLocation, boolean isUsingSystemSecurity, boolean deleteSchemaLocationsFallback)
-
-
Method Details
-
getMetastore
-
listNamespaces
-
loadNamespaceMetadata
-
getNamespacePrincipal
-
createNamespace
public void createNamespace(ConnectorSession session, String namespace, Map<String, Object> properties, TrinoPrincipal owner) -
dropNamespace
-
renameNamespace
-
setNamespacePrincipal
public void setNamespacePrincipal(ConnectorSession session, String namespace, TrinoPrincipal principal) -
newCreateTableTransaction
public org.apache.iceberg.Transaction newCreateTableTransaction(ConnectorSession session, SchemaTableName schemaTableName, org.apache.iceberg.Schema schema, org.apache.iceberg.PartitionSpec partitionSpec, String location, Map<String, String> properties) -
listTables
-
dropTable
-
renameTable
-
loadTable
public org.apache.iceberg.Table loadTable(ConnectorSession session, SchemaTableName schemaTableName) Description copied from interface:TrinoCatalogload an Iceberg table- Parameters:
session- Trino sessionschemaTableName- Trino schema and table name- Returns:
- Iceberg table loaded
-
updateTableComment
public void updateTableComment(ConnectorSession session, SchemaTableName schemaTableName, Optional<String> comment) - Specified by:
updateTableCommentin interfaceTrinoCatalog- Overrides:
updateTableCommentin classAbstractTrinoCatalog
-
updateViewComment
public void updateViewComment(ConnectorSession session, SchemaTableName viewName, Optional<String> comment) -
updateColumnComment
public void updateColumnComment(ConnectorSession session, SchemaTableName schemaTableName, ColumnIdentity columnIdentity, Optional<String> comment) - Specified by:
updateColumnCommentin interfaceTrinoCatalog- Overrides:
updateColumnCommentin classAbstractTrinoCatalog
-
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) -
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)
-