Class HiveCatalog

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable, org.apache.hadoop.conf.Configurable, org.apache.iceberg.catalog.Catalog, org.apache.iceberg.catalog.SupportsNamespaces, org.apache.iceberg.catalog.ViewCatalog

    public class HiveCatalog
    extends org.apache.iceberg.view.BaseMetastoreViewCatalog
    implements org.apache.iceberg.catalog.SupportsNamespaces, org.apache.hadoop.conf.Configurable
    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.apache.iceberg.view.BaseMetastoreViewCatalog

        org.apache.iceberg.view.BaseMetastoreViewCatalog.BaseMetastoreViewCatalogTableBuilder, org.apache.iceberg.view.BaseMetastoreViewCatalog.BaseViewBuilder
      • Nested classes/interfaces inherited from class org.apache.iceberg.BaseMetastoreCatalog

        org.apache.iceberg.BaseMetastoreCatalog.BaseMetastoreCatalogTableBuilder
      • Nested classes/interfaces inherited from interface org.apache.iceberg.catalog.Catalog

        org.apache.iceberg.catalog.Catalog.TableBuilder
    • Constructor Summary

      Constructors 
      Constructor Description
      HiveCatalog()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.apache.iceberg.catalog.Catalog.TableBuilder buildTable​(org.apache.iceberg.catalog.TableIdentifier identifier, org.apache.iceberg.Schema schema)  
      org.apache.iceberg.view.ViewBuilder buildView​(org.apache.iceberg.catalog.TableIdentifier identifier)  
      void close()  
      void createNamespace​(org.apache.iceberg.catalog.Namespace namespace, java.util.Map<java.lang.String,​java.lang.String> meta)  
      protected java.lang.String defaultWarehouseLocation​(org.apache.iceberg.catalog.TableIdentifier tableIdentifier)  
      boolean dropNamespace​(org.apache.iceberg.catalog.Namespace namespace)  
      boolean dropTable​(org.apache.iceberg.catalog.TableIdentifier identifier, boolean purge)  
      boolean dropView​(org.apache.iceberg.catalog.TableIdentifier identifier)  
      org.apache.hadoop.conf.Configuration getConf()  
      void initialize​(java.lang.String inputName, java.util.Map<java.lang.String,​java.lang.String> properties)  
      protected boolean isValidIdentifier​(org.apache.iceberg.catalog.TableIdentifier tableIdentifier)  
      java.util.List<org.apache.iceberg.catalog.Namespace> listNamespaces​(org.apache.iceberg.catalog.Namespace namespace)  
      java.util.List<org.apache.iceberg.catalog.TableIdentifier> listTables​(org.apache.iceberg.catalog.Namespace namespace)  
      java.util.List<org.apache.iceberg.catalog.TableIdentifier> listViews​(org.apache.iceberg.catalog.Namespace namespace)  
      java.util.Map<java.lang.String,​java.lang.String> loadNamespaceMetadata​(org.apache.iceberg.catalog.Namespace namespace)  
      java.lang.String name()  
      org.apache.iceberg.TableOperations newTableOps​(org.apache.iceberg.catalog.TableIdentifier tableIdentifier)  
      protected org.apache.iceberg.view.ViewOperations newViewOps​(org.apache.iceberg.catalog.TableIdentifier identifier)  
      protected java.util.Map<java.lang.String,​java.lang.String> properties()  
      boolean removeProperties​(org.apache.iceberg.catalog.Namespace namespace, java.util.Set<java.lang.String> properties)  
      void renameTable​(org.apache.iceberg.catalog.TableIdentifier from, org.apache.iceberg.catalog.TableIdentifier originalTo)  
      void renameView​(org.apache.iceberg.catalog.TableIdentifier from, org.apache.iceberg.catalog.TableIdentifier to)  
      void setConf​(org.apache.hadoop.conf.Configuration conf)  
      boolean setProperties​(org.apache.iceberg.catalog.Namespace namespace, java.util.Map<java.lang.String,​java.lang.String> properties)  
      java.lang.String toString()  
      • Methods inherited from class org.apache.iceberg.view.BaseMetastoreViewCatalog

        loadView
      • Methods inherited from class org.apache.iceberg.BaseMetastoreCatalog

        fullTableName, loadTable, metricsReporter, registerTable
      • 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, createTable, dropTable, invalidateTable, newCreateTableTransaction, newCreateTableTransaction, newCreateTableTransaction, newCreateTableTransaction, newReplaceTableTransaction, newReplaceTableTransaction, newReplaceTableTransaction, newReplaceTableTransaction, tableExists
      • Methods inherited from interface org.apache.iceberg.catalog.SupportsNamespaces

        createNamespace, listNamespaces, namespaceExists
      • Methods inherited from interface org.apache.iceberg.catalog.ViewCatalog

        invalidateView, viewExists
    • Constructor Detail

      • HiveCatalog

        public HiveCatalog()
    • Method Detail

      • initialize

        public void initialize​(java.lang.String inputName,
                               java.util.Map<java.lang.String,​java.lang.String> properties)
        Specified by:
        initialize in interface org.apache.iceberg.catalog.Catalog
        Specified by:
        initialize in interface org.apache.iceberg.catalog.ViewCatalog
        Overrides:
        initialize in class org.apache.iceberg.view.BaseMetastoreViewCatalog
      • buildTable

        public org.apache.iceberg.catalog.Catalog.TableBuilder buildTable​(org.apache.iceberg.catalog.TableIdentifier identifier,
                                                                          org.apache.iceberg.Schema schema)
        Specified by:
        buildTable in interface org.apache.iceberg.catalog.Catalog
        Overrides:
        buildTable in class org.apache.iceberg.view.BaseMetastoreViewCatalog
      • buildView

        public org.apache.iceberg.view.ViewBuilder buildView​(org.apache.iceberg.catalog.TableIdentifier identifier)
        Specified by:
        buildView in interface org.apache.iceberg.catalog.ViewCatalog
        Overrides:
        buildView in class org.apache.iceberg.view.BaseMetastoreViewCatalog
      • listTables

        public java.util.List<org.apache.iceberg.catalog.TableIdentifier> listTables​(org.apache.iceberg.catalog.Namespace namespace)
        Specified by:
        listTables in interface org.apache.iceberg.catalog.Catalog
      • listViews

        public java.util.List<org.apache.iceberg.catalog.TableIdentifier> listViews​(org.apache.iceberg.catalog.Namespace namespace)
        Specified by:
        listViews in interface org.apache.iceberg.catalog.ViewCatalog
      • name

        public java.lang.String name()
        Specified by:
        name in interface org.apache.iceberg.catalog.Catalog
        Specified by:
        name in interface org.apache.iceberg.catalog.ViewCatalog
        Overrides:
        name in class org.apache.iceberg.view.BaseMetastoreViewCatalog
      • dropTable

        public boolean dropTable​(org.apache.iceberg.catalog.TableIdentifier identifier,
                                 boolean purge)
        Specified by:
        dropTable in interface org.apache.iceberg.catalog.Catalog
      • dropView

        public boolean dropView​(org.apache.iceberg.catalog.TableIdentifier identifier)
        Specified by:
        dropView in interface org.apache.iceberg.catalog.ViewCatalog
      • renameTable

        public void renameTable​(org.apache.iceberg.catalog.TableIdentifier from,
                                org.apache.iceberg.catalog.TableIdentifier originalTo)
        Specified by:
        renameTable in interface org.apache.iceberg.catalog.Catalog
      • renameView

        public void renameView​(org.apache.iceberg.catalog.TableIdentifier from,
                               org.apache.iceberg.catalog.TableIdentifier to)
        Specified by:
        renameView in interface org.apache.iceberg.catalog.ViewCatalog
      • createNamespace

        public void createNamespace​(org.apache.iceberg.catalog.Namespace namespace,
                                    java.util.Map<java.lang.String,​java.lang.String> meta)
        Specified by:
        createNamespace in interface org.apache.iceberg.catalog.SupportsNamespaces
      • listNamespaces

        public java.util.List<org.apache.iceberg.catalog.Namespace> listNamespaces​(org.apache.iceberg.catalog.Namespace namespace)
        Specified by:
        listNamespaces in interface org.apache.iceberg.catalog.SupportsNamespaces
      • dropNamespace

        public boolean dropNamespace​(org.apache.iceberg.catalog.Namespace namespace)
        Specified by:
        dropNamespace in interface org.apache.iceberg.catalog.SupportsNamespaces
      • setProperties

        public boolean setProperties​(org.apache.iceberg.catalog.Namespace namespace,
                                     java.util.Map<java.lang.String,​java.lang.String> properties)
        Specified by:
        setProperties in interface org.apache.iceberg.catalog.SupportsNamespaces
      • removeProperties

        public boolean removeProperties​(org.apache.iceberg.catalog.Namespace namespace,
                                        java.util.Set<java.lang.String> properties)
        Specified by:
        removeProperties in interface org.apache.iceberg.catalog.SupportsNamespaces
      • loadNamespaceMetadata

        public java.util.Map<java.lang.String,​java.lang.String> loadNamespaceMetadata​(org.apache.iceberg.catalog.Namespace namespace)
        Specified by:
        loadNamespaceMetadata in interface org.apache.iceberg.catalog.SupportsNamespaces
      • isValidIdentifier

        protected boolean isValidIdentifier​(org.apache.iceberg.catalog.TableIdentifier tableIdentifier)
        Overrides:
        isValidIdentifier in class org.apache.iceberg.BaseMetastoreCatalog
      • newTableOps

        public org.apache.iceberg.TableOperations newTableOps​(org.apache.iceberg.catalog.TableIdentifier tableIdentifier)
        Specified by:
        newTableOps in class org.apache.iceberg.BaseMetastoreCatalog
      • newViewOps

        protected org.apache.iceberg.view.ViewOperations newViewOps​(org.apache.iceberg.catalog.TableIdentifier identifier)
        Specified by:
        newViewOps in class org.apache.iceberg.view.BaseMetastoreViewCatalog
      • defaultWarehouseLocation

        protected java.lang.String defaultWarehouseLocation​(org.apache.iceberg.catalog.TableIdentifier tableIdentifier)
        Specified by:
        defaultWarehouseLocation in class org.apache.iceberg.BaseMetastoreCatalog
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class org.apache.iceberg.BaseMetastoreCatalog
      • setConf

        public void setConf​(org.apache.hadoop.conf.Configuration conf)
        Specified by:
        setConf in interface org.apache.hadoop.conf.Configurable
      • getConf

        public org.apache.hadoop.conf.Configuration getConf()
        Specified by:
        getConf in interface org.apache.hadoop.conf.Configurable
      • properties

        protected java.util.Map<java.lang.String,​java.lang.String> properties()
        Overrides:
        properties in class org.apache.iceberg.BaseMetastoreCatalog
      • close

        public void close()
                   throws java.io.IOException
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Overrides:
        close in class org.apache.iceberg.BaseMetastoreCatalog
        Throws:
        java.io.IOException