| Interface | Description | 
|---|---|
| BatchWrite | An interface that defines how to write the data to data source for batch processing. | 
| DataWriter<T> | A data writer returned by  DataWriterFactory.createWriter(int, long)and is
 responsible for writing data for an input RDD partition. | 
| DataWriterFactory | A factory of  DataWriterreturned byBatchWrite.createBatchWriterFactory(PhysicalWriteInfo), which is responsible for
 creating and initializing the actual data writer at executor side. | 
| DeltaBatchWrite | An interface that defines how to write a delta of rows during batch processing. | 
| DeltaWrite | A logical representation of a data source write that handles a delta of rows. | 
| DeltaWriteBuilder | An interface for building a  DeltaWrite. | 
| DeltaWriter<T> | A data writer returned by  DeltaWriterFactory.createWriter(int, long)and is
 responsible for writing a delta of rows. | 
| DeltaWriterFactory | A factory for creating  DeltaWriters returned byDeltaBatchWrite.createBatchWriterFactory(PhysicalWriteInfo), which is responsible for
 creating and initializing writers at the executor side. | 
| LogicalWriteInfo | This interface contains logical write information that data sources can use when generating a
  WriteBuilder. | 
| PhysicalWriteInfo | This interface contains physical write information that data sources can use when
 generating a  DataWriterFactoryor aStreamingDataWriterFactory. | 
| RequiresDistributionAndOrdering | A write that requires a specific distribution and ordering of data. | 
| RowLevelOperation | A logical representation of a data source DELETE, UPDATE, or MERGE operation that requires
 rewriting data. | 
| RowLevelOperationBuilder | An interface for building a  RowLevelOperation. | 
| RowLevelOperationInfo | An interface with logical information for a row-level operation such as DELETE, UPDATE, MERGE. | 
| SupportsDelta | A mix-in interface for  RowLevelOperation. | 
| SupportsDynamicOverwrite | Write builder trait for tables that support dynamic partition overwrite. | 
| SupportsOverwrite | Write builder trait for tables that support overwrite by filter. | 
| SupportsOverwriteV2 | Write builder trait for tables that support overwrite by filter. | 
| SupportsTruncate | Write builder trait for tables that support truncation. | 
| V1Write | A logical write that should be executed using V1 InsertableRelation interface. | 
| Write | A logical representation of a data source write. | 
| WriteBuilder | An interface for building the  Write. | 
| WriterCommitMessage | A commit message returned by  DataWriter.commit()and will be sent back to the driver side
 as the input parameter ofBatchWrite.commit(WriterCommitMessage[])orStreamingWrite.commit(long, WriterCommitMessage[]). | 
| Enum | Description | 
|---|---|
| RowLevelOperation.Command | A row-level SQL command. |