Package org.apache.iceberg.actions
Class SortStrategy
- java.lang.Object
-
- org.apache.iceberg.actions.BinPackStrategy
-
- org.apache.iceberg.actions.SortStrategy
-
- All Implemented Interfaces:
java.io.Serializable,RewriteStrategy
@Deprecated public abstract class SortStrategy extends BinPackStrategy
Deprecated.since 1.3.0, will be removed in 1.4.0; useSizeBasedFileRewriterinstead. Note: This can only be removed once Spark 3.2 isn't using this API anymore.A rewrite strategy for data files which aims to reorder data with data files to optimally lay them out in relation to a column. For example, if the Sort strategy is used on a set of files which is ordered by column x and original has files File A (x: 0 - 50), File B ( x: 10 - 40) and File C ( x: 30 - 60), this Strategy will attempt to rewrite those files into File A' (x: 0-20), File B' (x: 21 - 40), File C' (x: 41 - 60).Currently the there is no file overlap detection and we will rewrite all files if
BinPackStrategy.REWRITE_ALLis true (default: false). If this property is disabled any files that would be chosen byBinPackStrategywill be rewrite candidates.In the future other algorithms for determining files to rewrite will be provided.
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.apache.iceberg.actions.BinPackStrategy
DELETE_FILE_THRESHOLD, DELETE_FILE_THRESHOLD_DEFAULT, MAX_FILE_SIZE_BYTES, MAX_FILE_SIZE_DEFAULT_RATIO, MIN_FILE_SIZE_BYTES, MIN_FILE_SIZE_DEFAULT_RATIO, MIN_INPUT_FILES, MIN_INPUT_FILES_DEFAULT, REWRITE_ALL, REWRITE_ALL_DEFAULT
-
-
Constructor Summary
Constructors Constructor Description SortStrategy()Deprecated.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description java.lang.Stringname()Deprecated.Returns the name of this rewrite strategyRewriteStrategyoptions(java.util.Map<java.lang.String,java.lang.String> options)Deprecated.Sets options to be used with this strategyprotected SortOrdersortOrder()Deprecated.SortStrategysortOrder(SortOrder order)Deprecated.Sets the sort order to be used in this strategy when rewriting filesprotected voidvalidateOptions()Deprecated.java.util.Set<java.lang.String>validOptions()Deprecated.Returns a set of options which this rewrite strategy can use.-
Methods inherited from class org.apache.iceberg.actions.BinPackStrategy
inputFileSize, numOutputFiles, planFileGroups, selectFilesToRewrite, splitSize, targetFileSize, writeMaxFileSize
-
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.RewriteStrategy
rewriteFiles, table
-
-
-
-
Method Detail
-
sortOrder
public SortStrategy sortOrder(SortOrder order)
Deprecated.Sets the sort order to be used in this strategy when rewriting files- Parameters:
order- the order to use- Returns:
- this for method chaining
-
sortOrder
protected SortOrder sortOrder()
Deprecated.
-
name
public java.lang.String name()
Deprecated.Description copied from interface:RewriteStrategyReturns the name of this rewrite strategy- Specified by:
namein interfaceRewriteStrategy- Overrides:
namein classBinPackStrategy
-
validOptions
public java.util.Set<java.lang.String> validOptions()
Deprecated.Description copied from interface:RewriteStrategyReturns a set of options which this rewrite strategy can use. This is an allowed-list and any options not specified here will be rejected at runtime.- Specified by:
validOptionsin interfaceRewriteStrategy- Overrides:
validOptionsin classBinPackStrategy
-
options
public RewriteStrategy options(java.util.Map<java.lang.String,java.lang.String> options)
Deprecated.Description copied from interface:RewriteStrategySets options to be used with this strategy- Specified by:
optionsin interfaceRewriteStrategy- Overrides:
optionsin classBinPackStrategy
-
validateOptions
protected void validateOptions()
Deprecated.
-
-