Package org.apache.iceberg.spark.actions
Class RewritePositionDeleteFilesSparkAction
java.lang.Object
org.apache.iceberg.spark.actions.RewritePositionDeleteFilesSparkAction
- All Implemented Interfaces:
Action<RewritePositionDeleteFiles,
,RewritePositionDeleteFiles.Result> RewritePositionDeleteFiles
,SnapshotUpdate<RewritePositionDeleteFiles,
RewritePositionDeleteFiles.Result>
public class RewritePositionDeleteFilesSparkAction
extends Object
implements RewritePositionDeleteFiles
Spark implementation of
RewritePositionDeleteFiles
.-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.iceberg.actions.RewritePositionDeleteFiles
RewritePositionDeleteFiles.FileGroupInfo, RewritePositionDeleteFiles.FileGroupRewriteResult, RewritePositionDeleteFiles.Result
-
Field Summary
Modifier and TypeFieldDescriptionprotected static final org.apache.iceberg.relocated.com.google.common.base.Joiner
protected static final org.apache.iceberg.relocated.com.google.common.base.Splitter
protected static final String
protected static final String
protected static final String
protected static final String
protected static final String
protected static final String
Fields inherited from interface org.apache.iceberg.actions.RewritePositionDeleteFiles
MAX_CONCURRENT_FILE_GROUP_REWRITES, MAX_CONCURRENT_FILE_GROUP_REWRITES_DEFAULT, PARTIAL_PROGRESS_ENABLED, PARTIAL_PROGRESS_ENABLED_DEFAULT, PARTIAL_PROGRESS_MAX_COMMITS, PARTIAL_PROGRESS_MAX_COMMITS_DEFAULT, REWRITE_JOB_ORDER, REWRITE_JOB_ORDER_DEFAULT
-
Method Summary
Modifier and TypeMethodDescriptionprotected org.apache.spark.sql.Dataset<FileInfo>
protected void
commit
(SnapshotUpdate<?> update) protected org.apache.spark.sql.Dataset<FileInfo>
contentFileDS
(Table table) protected org.apache.spark.sql.Dataset<FileInfo>
contentFileDS
(Table table, Set<Long> snapshotIds) protected org.apache.iceberg.spark.actions.BaseSparkAction.DeleteSummary
deleteFiles
(ExecutorService executorService, Consumer<String> deleteFunc, Iterator<FileInfo> files) Deletes files and keeps track of how many files were removed for each file type.protected org.apache.iceberg.spark.actions.BaseSparkAction.DeleteSummary
deleteFiles
(SupportsBulkOperations io, Iterator<FileInfo> files) execute()
Executes this action.filter
(Expression expression) A filter for finding deletes to rewrite.protected org.apache.spark.sql.Dataset<org.apache.spark.sql.Row>
loadMetadataTable
(Table table, MetadataTableType type) protected org.apache.spark.sql.Dataset<FileInfo>
manifestDS
(Table table) protected org.apache.spark.sql.Dataset<FileInfo>
manifestDS
(Table table, Set<Long> snapshotIds) protected org.apache.spark.sql.Dataset<FileInfo>
manifestListDS
(Table table) protected org.apache.spark.sql.Dataset<FileInfo>
manifestListDS
(Table table, Set<Long> snapshotIds) protected JobGroupInfo
newJobGroupInfo
(String groupId, String desc) protected Table
newStaticTable
(TableMetadata metadata, FileIO io) options()
protected org.apache.spark.sql.Dataset<FileInfo>
otherMetadataFileDS
(Table table) protected RewritePositionDeleteFilesSparkAction
self()
snapshotProperty
(String property, String value) protected org.apache.spark.sql.SparkSession
spark()
protected org.apache.spark.api.java.JavaSparkContext
protected org.apache.spark.sql.Dataset<FileInfo>
statisticsFileDS
(Table table, Set<Long> snapshotIds) protected <T> T
withJobGroupInfo
(JobGroupInfo info, Supplier<T> supplier) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.iceberg.actions.SnapshotUpdate
snapshotProperty
-
Field Details
-
MANIFEST
- See Also:
-
MANIFEST_LIST
- See Also:
-
STATISTICS_FILES
- See Also:
-
OTHERS
- See Also:
-
FILE_PATH
- See Also:
-
LAST_MODIFIED
- See Also:
-
COMMA_SPLITTER
protected static final org.apache.iceberg.relocated.com.google.common.base.Splitter COMMA_SPLITTER -
COMMA_JOINER
protected static final org.apache.iceberg.relocated.com.google.common.base.Joiner COMMA_JOINER
-
-
Method Details
-
self
-
filter
Description copied from interface:RewritePositionDeleteFiles
A filter for finding deletes to rewrite.The filter will be converted to a partition filter with an inclusive projection. Any file that may contain rows matching this filter will be used by the action. The matching delete files will be rewritten.
- Specified by:
filter
in interfaceRewritePositionDeleteFiles
- Parameters:
expression
- An iceberg expression used to find deletes.- Returns:
- this for method chaining
-
execute
Description copied from interface:Action
Executes this action.- Specified by:
execute
in interfaceAction<RewritePositionDeleteFiles,
RewritePositionDeleteFiles.Result> - Returns:
- the result of this action
-
snapshotProperty
-
commit
-
commitSummary
-
spark
protected org.apache.spark.sql.SparkSession spark() -
sparkContext
protected org.apache.spark.api.java.JavaSparkContext sparkContext() -
option
-
options
-
options
-
withJobGroupInfo
-
newJobGroupInfo
-
newStaticTable
-
contentFileDS
-
contentFileDS
-
manifestDS
-
manifestDS
-
manifestListDS
-
manifestListDS
-
statisticsFileDS
-
otherMetadataFileDS
-
allReachableOtherMetadataFileDS
-
loadMetadataTable
protected org.apache.spark.sql.Dataset<org.apache.spark.sql.Row> loadMetadataTable(Table table, MetadataTableType type) -
deleteFiles
protected org.apache.iceberg.spark.actions.BaseSparkAction.DeleteSummary deleteFiles(ExecutorService executorService, Consumer<String> deleteFunc, Iterator<FileInfo> files) Deletes files and keeps track of how many files were removed for each file type.- Parameters:
executorService
- an executor service to use for parallel deletesdeleteFunc
- a delete funcfiles
- an iterator of Spark rows of the structure (path: String, type: String)- Returns:
- stats on which files were deleted
-
deleteFiles
protected org.apache.iceberg.spark.actions.BaseSparkAction.DeleteSummary deleteFiles(SupportsBulkOperations io, Iterator<FileInfo> files)
-