Package org.apache.iceberg.spark.source
Class SparkTable
java.lang.Object
org.apache.iceberg.spark.source.SparkTable
- All Implemented Interfaces:
org.apache.spark.sql.connector.catalog.SupportsDeleteV2,org.apache.spark.sql.connector.catalog.SupportsMetadataColumns,org.apache.spark.sql.connector.catalog.SupportsRead,org.apache.spark.sql.connector.catalog.SupportsRowLevelOperations,org.apache.spark.sql.connector.catalog.SupportsWrite,org.apache.spark.sql.connector.catalog.Table,org.apache.spark.sql.connector.catalog.TruncatableTable
- Direct Known Subclasses:
StagedSparkTable
public class SparkTable
extends Object
implements org.apache.spark.sql.connector.catalog.SupportsRead, org.apache.spark.sql.connector.catalog.SupportsWrite, org.apache.spark.sql.connector.catalog.SupportsDeleteV2, org.apache.spark.sql.connector.catalog.SupportsRowLevelOperations
The main Spark table implementation that supports reads, writes, and row-level operations.
Note the table state (e.g. schema, snapshot) is pinned upon loading and must not change.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbranch()booleancanDeleteWhere(org.apache.spark.sql.connector.expressions.filter.Predicate[] predicates) Set<org.apache.spark.sql.connector.catalog.TableCapability> org.apache.spark.sql.connector.catalog.constraints.Constraint[]copyWithBranch(String newBranch) static SparkTablestatic SparkTablecreate(Table table, TimeTravel timeTravel) voiddeleteWhere(org.apache.spark.sql.connector.expressions.filter.Predicate[] predicates) booleaninthashCode()id()org.apache.spark.sql.connector.catalog.MetadataColumn[]name()org.apache.spark.sql.connector.write.RowLevelOperationBuildernewRowLevelOperationBuilder(org.apache.spark.sql.connector.write.RowLevelOperationInfo info) org.apache.spark.sql.connector.read.ScanBuildernewScanBuilder(org.apache.spark.sql.util.CaseInsensitiveStringMap options) org.apache.spark.sql.connector.write.WriteBuildernewWriteBuilder(org.apache.spark.sql.connector.write.LogicalWriteInfo info) org.apache.spark.sql.connector.expressions.Transform[]org.apache.spark.sql.types.StructTypeschema()protected org.apache.spark.sql.SparkSessionspark()table()toString()version()Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.spark.sql.connector.catalog.SupportsDeleteV2
truncateTableMethods inherited from interface org.apache.spark.sql.connector.catalog.SupportsMetadataColumns
canRenameConflictingMetadataColumnsMethods inherited from interface org.apache.spark.sql.connector.catalog.Table
columns, name, partitioning, properties, schema
-
Constructor Details
-
SparkTable
-
-
Method Details
-
copyWithBranch
-
snapshotId
-
branch
-
id
- Specified by:
idin interfaceorg.apache.spark.sql.connector.catalog.Table
-
version
- Specified by:
versionin interfaceorg.apache.spark.sql.connector.catalog.Table
-
capabilities
- Specified by:
capabilitiesin interfaceorg.apache.spark.sql.connector.catalog.Table
-
constraints
public org.apache.spark.sql.connector.catalog.constraints.Constraint[] constraints()- Specified by:
constraintsin interfaceorg.apache.spark.sql.connector.catalog.Table
-
newScanBuilder
public org.apache.spark.sql.connector.read.ScanBuilder newScanBuilder(org.apache.spark.sql.util.CaseInsensitiveStringMap options) - Specified by:
newScanBuilderin interfaceorg.apache.spark.sql.connector.catalog.SupportsRead
-
newWriteBuilder
public org.apache.spark.sql.connector.write.WriteBuilder newWriteBuilder(org.apache.spark.sql.connector.write.LogicalWriteInfo info) - Specified by:
newWriteBuilderin interfaceorg.apache.spark.sql.connector.catalog.SupportsWrite
-
newRowLevelOperationBuilder
public org.apache.spark.sql.connector.write.RowLevelOperationBuilder newRowLevelOperationBuilder(org.apache.spark.sql.connector.write.RowLevelOperationInfo info) - Specified by:
newRowLevelOperationBuilderin interfaceorg.apache.spark.sql.connector.catalog.SupportsRowLevelOperations
-
canDeleteWhere
public boolean canDeleteWhere(org.apache.spark.sql.connector.expressions.filter.Predicate[] predicates) - Specified by:
canDeleteWherein interfaceorg.apache.spark.sql.connector.catalog.SupportsDeleteV2
-
deleteWhere
public void deleteWhere(org.apache.spark.sql.connector.expressions.filter.Predicate[] predicates) - Specified by:
deleteWherein interfaceorg.apache.spark.sql.connector.catalog.SupportsDeleteV2
-
equals
-
hashCode
public int hashCode() -
create
-
create
-
spark
protected org.apache.spark.sql.SparkSession spark() -
table
-
name
- Specified by:
namein interfaceorg.apache.spark.sql.connector.catalog.Table
-
schema
public org.apache.spark.sql.types.StructType schema()- Specified by:
schemain interfaceorg.apache.spark.sql.connector.catalog.Table
-
partitioning
public org.apache.spark.sql.connector.expressions.Transform[] partitioning()- Specified by:
partitioningin interfaceorg.apache.spark.sql.connector.catalog.Table
-
properties
- Specified by:
propertiesin interfaceorg.apache.spark.sql.connector.catalog.Table
-
metadataColumns
public org.apache.spark.sql.connector.catalog.MetadataColumn[] metadataColumns()- Specified by:
metadataColumnsin interfaceorg.apache.spark.sql.connector.catalog.SupportsMetadataColumns
-
toString
-