Class SideInputTable

java.lang.Object
org.apache.beam.sdk.io.iceberg.SideInputTable
All Implemented Interfaces:
org.apache.iceberg.Table

@Internal public class SideInputTable extends Object implements org.apache.iceberg.Table
A lightweight adapter that implements Table backed by a SerializableTableSpec.

Delegates declarative metadata (schemas, partition specs, sort orders, properties) and FileIO to the broadcasted SerializableTableSpec, and reconstructs the EncryptionManager from catalog properties or falls back to PlaintextEncryptionManager.

All non-metadata or mutating operations (e.g. refresh(), currentSnapshot(), newAppend(), updateSchema()) throw UnsupportedOperationException. Table commits are handled centrally in AppendFilesToTables.

  • Constructor Details

  • Method Details

    • getTableSpec

      public SerializableTableSpec getTableSpec()
    • name

      public String name()
      Specified by:
      name in interface org.apache.iceberg.Table
    • location

      public String location()
      Specified by:
      location in interface org.apache.iceberg.Table
    • schema

      public org.apache.iceberg.Schema schema()
      Specified by:
      schema in interface org.apache.iceberg.Table
    • schemas

      public Map<Integer,org.apache.iceberg.Schema> schemas()
      Specified by:
      schemas in interface org.apache.iceberg.Table
    • spec

      public org.apache.iceberg.PartitionSpec spec()
      Specified by:
      spec in interface org.apache.iceberg.Table
    • specs

      public Map<Integer,org.apache.iceberg.PartitionSpec> specs()
      Specified by:
      specs in interface org.apache.iceberg.Table
    • sortOrder

      public org.apache.iceberg.SortOrder sortOrder()
      Specified by:
      sortOrder in interface org.apache.iceberg.Table
    • sortOrders

      public Map<Integer,org.apache.iceberg.SortOrder> sortOrders()
      Specified by:
      sortOrders in interface org.apache.iceberg.Table
    • properties

      public Map<String,String> properties()
      Specified by:
      properties in interface org.apache.iceberg.Table
    • locationProvider

      public org.apache.iceberg.io.LocationProvider locationProvider()
      Specified by:
      locationProvider in interface org.apache.iceberg.Table
    • io

      public org.apache.iceberg.io.FileIO io()
      Specified by:
      io in interface org.apache.iceberg.Table
    • encryption

      public org.apache.iceberg.encryption.EncryptionManager encryption()
      Specified by:
      encryption in interface org.apache.iceberg.Table
    • refresh

      public void refresh()
      Specified by:
      refresh in interface org.apache.iceberg.Table
    • currentSnapshot

      public org.apache.iceberg.Snapshot currentSnapshot()
      Specified by:
      currentSnapshot in interface org.apache.iceberg.Table
    • snapshot

      public org.apache.iceberg.Snapshot snapshot(long snapshotId)
      Specified by:
      snapshot in interface org.apache.iceberg.Table
    • snapshots

      public Iterable<org.apache.iceberg.Snapshot> snapshots()
      Specified by:
      snapshots in interface org.apache.iceberg.Table
    • history

      public List<org.apache.iceberg.HistoryEntry> history()
      Specified by:
      history in interface org.apache.iceberg.Table
    • refs

      public Map<String,org.apache.iceberg.SnapshotRef> refs()
      Specified by:
      refs in interface org.apache.iceberg.Table
    • statisticsFiles

      public List<org.apache.iceberg.StatisticsFile> statisticsFiles()
      Specified by:
      statisticsFiles in interface org.apache.iceberg.Table
    • partitionStatisticsFiles

      public List<org.apache.iceberg.PartitionStatisticsFile> partitionStatisticsFiles()
      Specified by:
      partitionStatisticsFiles in interface org.apache.iceberg.Table
    • newScan

      public org.apache.iceberg.TableScan newScan()
      Specified by:
      newScan in interface org.apache.iceberg.Table
    • newIncrementalAppendScan

      public org.apache.iceberg.IncrementalAppendScan newIncrementalAppendScan()
      Specified by:
      newIncrementalAppendScan in interface org.apache.iceberg.Table
    • newIncrementalChangelogScan

      public org.apache.iceberg.IncrementalChangelogScan newIncrementalChangelogScan()
      Specified by:
      newIncrementalChangelogScan in interface org.apache.iceberg.Table
    • updateSchema

      public org.apache.iceberg.UpdateSchema updateSchema()
      Specified by:
      updateSchema in interface org.apache.iceberg.Table
    • updateSpec

      public org.apache.iceberg.UpdatePartitionSpec updateSpec()
      Specified by:
      updateSpec in interface org.apache.iceberg.Table
    • updateProperties

      public org.apache.iceberg.UpdateProperties updateProperties()
      Specified by:
      updateProperties in interface org.apache.iceberg.Table
    • replaceSortOrder

      public org.apache.iceberg.ReplaceSortOrder replaceSortOrder()
      Specified by:
      replaceSortOrder in interface org.apache.iceberg.Table
    • updateLocation

      public org.apache.iceberg.UpdateLocation updateLocation()
      Specified by:
      updateLocation in interface org.apache.iceberg.Table
    • newAppend

      public org.apache.iceberg.AppendFiles newAppend()
      Specified by:
      newAppend in interface org.apache.iceberg.Table
    • newFastAppend

      public org.apache.iceberg.AppendFiles newFastAppend()
      Specified by:
      newFastAppend in interface org.apache.iceberg.Table
    • newRewrite

      public org.apache.iceberg.RewriteFiles newRewrite()
      Specified by:
      newRewrite in interface org.apache.iceberg.Table
    • rewriteManifests

      public org.apache.iceberg.RewriteManifests rewriteManifests()
      Specified by:
      rewriteManifests in interface org.apache.iceberg.Table
    • newOverwrite

      public org.apache.iceberg.OverwriteFiles newOverwrite()
      Specified by:
      newOverwrite in interface org.apache.iceberg.Table
    • newRowDelta

      public org.apache.iceberg.RowDelta newRowDelta()
      Specified by:
      newRowDelta in interface org.apache.iceberg.Table
    • newReplacePartitions

      public org.apache.iceberg.ReplacePartitions newReplacePartitions()
      Specified by:
      newReplacePartitions in interface org.apache.iceberg.Table
    • newDelete

      public org.apache.iceberg.DeleteFiles newDelete()
      Specified by:
      newDelete in interface org.apache.iceberg.Table
    • updateStatistics

      public org.apache.iceberg.UpdateStatistics updateStatistics()
      Specified by:
      updateStatistics in interface org.apache.iceberg.Table
    • expireSnapshots

      public org.apache.iceberg.ExpireSnapshots expireSnapshots()
      Specified by:
      expireSnapshots in interface org.apache.iceberg.Table
    • manageSnapshots

      public org.apache.iceberg.ManageSnapshots manageSnapshots()
      Specified by:
      manageSnapshots in interface org.apache.iceberg.Table
    • newTransaction

      public org.apache.iceberg.Transaction newTransaction()
      Specified by:
      newTransaction in interface org.apache.iceberg.Table
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object