Package org.apache.iceberg
Class BaseMetastoreCatalog
- java.lang.Object
-
- org.apache.iceberg.BaseMetastoreCatalog
-
- All Implemented Interfaces:
Catalog
- Direct Known Subclasses:
HadoopCatalog,HiveCatalog
public abstract class BaseMetastoreCatalog extends java.lang.Object implements Catalog
-
-
Constructor Summary
Constructors Constructor Description BaseMetastoreCatalog()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description TablecreateTable(TableIdentifier identifier, Schema schema, PartitionSpec spec, java.lang.String location, java.util.Map<java.lang.String,java.lang.String> properties)Create a table.protected abstract java.lang.StringdefaultWarehouseLocation(TableIdentifier tableIdentifier)protected static voiddropTableData(FileIO io, TableMetadata metadata)Drops all data and metadata files referenced by TableMetadata.protected static java.lang.StringfullTableName(java.lang.String catalogName, TableIdentifier identifier)protected booleanisValidIdentifier(TableIdentifier tableIdentifier)TableloadTable(TableIdentifier identifier)Load a table.protected abstract java.lang.Stringname()TransactionnewCreateTableTransaction(TableIdentifier identifier, Schema schema, PartitionSpec spec, java.lang.String location, java.util.Map<java.lang.String,java.lang.String> properties)Start a transaction to create a table.TransactionnewReplaceTableTransaction(TableIdentifier identifier, Schema schema, PartitionSpec spec, java.lang.String location, java.util.Map<java.lang.String,java.lang.String> properties, boolean orCreate)Start a transaction to replace a table.protected abstract TableOperationsnewTableOps(TableIdentifier tableIdentifier)java.lang.StringtoString()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.iceberg.catalog.Catalog
createTable, createTable, createTable, dropTable, dropTable, listTables, newCreateTableTransaction, newCreateTableTransaction, newCreateTableTransaction, newReplaceTableTransaction, newReplaceTableTransaction, newReplaceTableTransaction, renameTable, tableExists
-
-
-
-
Method Detail
-
createTable
public Table createTable(TableIdentifier identifier, Schema schema, PartitionSpec spec, java.lang.String location, java.util.Map<java.lang.String,java.lang.String> properties)
Description copied from interface:CatalogCreate a table.- Specified by:
createTablein interfaceCatalog- Parameters:
identifier- a table identifierschema- a schemaspec- a partition speclocation- a location for the table; leave null if unspecifiedproperties- a string map of table properties- Returns:
- a Table instance
-
newCreateTableTransaction
public Transaction newCreateTableTransaction(TableIdentifier identifier, Schema schema, PartitionSpec spec, java.lang.String location, java.util.Map<java.lang.String,java.lang.String> properties)
Description copied from interface:CatalogStart a transaction to create a table.- Specified by:
newCreateTableTransactionin interfaceCatalog- Parameters:
identifier- a table identifierschema- a schemaspec- a partition speclocation- a location for the table; leave null if unspecifiedproperties- a string map of table properties- Returns:
- a
Transactionto create the table
-
newReplaceTableTransaction
public Transaction newReplaceTableTransaction(TableIdentifier identifier, Schema schema, PartitionSpec spec, java.lang.String location, java.util.Map<java.lang.String,java.lang.String> properties, boolean orCreate)
Description copied from interface:CatalogStart a transaction to replace a table.- Specified by:
newReplaceTableTransactionin interfaceCatalog- Parameters:
identifier- a table identifierschema- a schemaspec- a partition speclocation- a location for the table; leave null if unspecifiedproperties- a string map of table propertiesorCreate- whether to create the table if not exists- Returns:
- a
Transactionto replace the table
-
loadTable
public Table loadTable(TableIdentifier identifier)
Description copied from interface:CatalogLoad a table.
-
isValidIdentifier
protected boolean isValidIdentifier(TableIdentifier tableIdentifier)
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
name
protected abstract java.lang.String name()
-
newTableOps
protected abstract TableOperations newTableOps(TableIdentifier tableIdentifier)
-
defaultWarehouseLocation
protected abstract java.lang.String defaultWarehouseLocation(TableIdentifier tableIdentifier)
-
dropTableData
protected static void dropTableData(FileIO io, TableMetadata metadata)
Drops all data and metadata files referenced by TableMetadata.This should be called by dropTable implementations to clean up table files once the table has been dropped in the metastore.
- Parameters:
io- a FileIO to use for deletesmetadata- the last valid TableMetadata instance for a dropped table.
-
fullTableName
protected static java.lang.String fullTableName(java.lang.String catalogName, TableIdentifier identifier)
-
-