Class HadoopViewOperations

  • All Implemented Interfaces:
    ViewOperations

    public class HadoopViewOperations
    extends java.lang.Object
    implements ViewOperations
    The Views implementation Based on FileIO.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected HadoopViewOperations​(org.apache.hadoop.fs.Path location, org.apache.hadoop.conf.Configuration conf)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void commit​(ViewVersionMetadata base, ViewVersionMetadata metadata, java.util.Map<java.lang.String,​java.lang.String> properties)
      Replace the base metadata with a new version.
      ViewVersionMetadata current()
      Return the currently loaded view metadata, without checking for updates.
      void drop​(java.lang.String location)
      Drops the view specified by the 'viewIdentifier' parameter.
      static org.apache.hadoop.fs.FileSystem getFS​(org.apache.hadoop.fs.Path path, org.apache.hadoop.conf.Configuration conf)  
      org.apache.iceberg.io.FileIO io()
      A FileIO to read and write table data and metadata files.
      ViewVersionMetadata refresh()
      Return the current view metadata after checking for updates.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • HadoopViewOperations

        protected HadoopViewOperations​(org.apache.hadoop.fs.Path location,
                                       org.apache.hadoop.conf.Configuration conf)
    • Method Detail

      • io

        public org.apache.iceberg.io.FileIO io()
        Description copied from interface: ViewOperations
        A FileIO to read and write table data and metadata files.
        Specified by:
        io in interface ViewOperations
        Returns:
        a FileIO to read and write table data and metadata files
      • commit

        public void commit​(ViewVersionMetadata base,
                           ViewVersionMetadata metadata,
                           java.util.Map<java.lang.String,​java.lang.String> properties)
        Description copied from interface: ViewOperations
        Replace the base metadata with a new version.

        This method should implement and document atomicity guarantees.

        Implementations must check that the base metadata is current to avoid overwriting updates. Once the atomic commit operation succeeds, implementations must not perform any operations that may fail because failure in this method cannot be distinguished from commit failure.

        Specified by:
        commit in interface ViewOperations
        Parameters:
        base - view metadata on which changes were based
        metadata - new view metadata with updates
        properties - Version property genie-id of the operation, as well as table properties such as owner, table type, common view flag etc.
      • drop

        public void drop​(java.lang.String location)
        Description copied from interface: ViewOperations
        Drops the view specified by the 'viewIdentifier' parameter. Used only by the test infrastructure such as HadoopViewOperations and TestViews. Metacat views are dropped using direct hive 'drop' object calls.
        Specified by:
        drop in interface ViewOperations
        Parameters:
        location - specifies the name/location of the view.
      • getFS

        public static org.apache.hadoop.fs.FileSystem getFS​(org.apache.hadoop.fs.Path path,
                                                            org.apache.hadoop.conf.Configuration conf)