Class SerializableTable

java.lang.Object
org.apache.iceberg.SerializableTable
All Implemented Interfaces:
Serializable, HasTableOperations, Table
Direct Known Subclasses:
SerializableTable.SerializableMetadataTable, SerializableTableWithSize

public class SerializableTable extends Object implements Table, HasTableOperations, Serializable
A read-only serializable table that can be sent to other nodes in a cluster.

An instance of this class represents an immutable serializable copy of a table state and will not reflect any subsequent changed made to the original table.

While this class captures the metadata file location that can be used to load the complete table metadata, it directly persists the current schema, spec, sort order, table properties to avoid reading the metadata file from other nodes for frequently needed metadata.

The implementation assumes the passed instances of FileIO, EncryptionManager are serializable. If you are serializing the table using a custom serialization framework like Kryo, those instances of FileIO, EncryptionManager must be supported by that particular serialization framework.

Note: loading the complete metadata from a large number of nodes can overwhelm the storage.

See Also: