Interface Table

    • Method Detail

      • name

        default java.lang.String name()
        Return the full name for this table.
        Returns:
        this table's name
      • refresh

        void refresh()
        Refresh the current table metadata.
      • newScan

        TableScan newScan()
        Create a new scan for this table.

        Once a table scan is created, it can be refined to project columns and filter data.

        Returns:
        a table scan for this table
      • newIncrementalAppendScan

        default IncrementalAppendScan newIncrementalAppendScan()
        Create a new scan for this table.

        Once a scan is created, it can be refined to project columns and filter data.

        Returns:
        an incremental scan for appends only snapshots
      • newIncrementalChangelogScan

        default IncrementalChangelogScan newIncrementalChangelogScan()
        Create a new IncrementalChangelogScan for this table.

        Once a scan is created, it can be refined to project columns and filter data.

        Returns:
        an incremental changelog scan
      • schema

        Schema schema()
        Return the schema for this table.
        Returns:
        this table's schema
      • schemas

        java.util.Map<java.lang.Integer,​Schema> schemas()
        Return a map of schema for this table.
        Returns:
        this table's schema map
      • specs

        java.util.Map<java.lang.Integer,​PartitionSpec> specs()
        Return a map of partition specs for this table.
        Returns:
        this table's partition specs map
      • sortOrder

        SortOrder sortOrder()
        Return the sort order for this table.
        Returns:
        this table's sort order
      • sortOrders

        java.util.Map<java.lang.Integer,​SortOrder> sortOrders()
        Return a map of sort order IDs to sort orders for this table.
        Returns:
        this table's sort orders map
      • properties

        java.util.Map<java.lang.String,​java.lang.String> properties()
        Return a map of string properties for this table.
        Returns:
        this table's properties map
      • location

        java.lang.String location()
        Return the table's base location.
        Returns:
        this table's location
      • currentSnapshot

        Snapshot currentSnapshot()
        Get the current snapshot for this table, or null if there are no snapshots.
        Returns:
        the current table Snapshot.
      • snapshot

        Snapshot snapshot​(long snapshotId)
        Get the snapshot of this table with the given id, or null if there is no matching snapshot.
        Returns:
        the Snapshot with the given id.
      • snapshots

        java.lang.Iterable<Snapshot> snapshots()
        Get the snapshots of this table.
        Returns:
        an Iterable of snapshots of this table.
      • newFastAppend

        default AppendFiles newFastAppend()
        Create a new append API to add files to this table and commit.

        Using this method signals to the underlying implementation that the append should not perform extra work in order to commit quickly. Fast appends are not recommended for normal writes because the fast commit may cause split planning to slow down over time.

        Implementations may not support fast appends, in which case this will return the same appender as newAppend().

        Returns:
        a new AppendFiles
      • newReplacePartitions

        ReplacePartitions newReplacePartitions()
        Not recommended: Create a new replace partitions API to dynamically overwrite partitions in the table with new data.

        This is provided to implement SQL compatible with Hive table operations but is not recommended. Instead, use the overwrite API to explicitly overwrite data.

        Returns:
        a new ReplacePartitions
      • io

        FileIO io()
        Returns a FileIO to read and write table data and metadata files.