public interface RewriteStrategy
extends java.io.Serializable
Modifier and Type | Method and Description |
---|---|
java.lang.String |
name()
Returns the name of this rewrite strategy
|
RewriteStrategy |
options(java.util.Map<java.lang.String,java.lang.String> options)
Sets options to be used with this strategy
|
java.lang.Iterable<java.util.List<FileScanTask>> |
planFileGroups(java.lang.Iterable<FileScanTask> dataFiles)
Groups file scans into lists which will be processed in a single executable unit.
|
java.util.Set<DataFile> |
rewriteFiles(java.util.List<FileScanTask> filesToRewrite)
Method which will rewrite files based on this particular RewriteStrategy's algorithm.
|
java.lang.Iterable<FileScanTask> |
selectFilesToRewrite(java.lang.Iterable<FileScanTask> dataFiles)
Selects files which this strategy believes are valid targets to be rewritten.
|
Table |
table()
Returns the table being modified by this rewrite strategy
|
java.util.Set<java.lang.String> |
validOptions()
Returns a set of options which this rewrite strategy can use.
|
java.lang.String name()
Table table()
java.util.Set<java.lang.String> validOptions()
RewriteStrategy options(java.util.Map<java.lang.String,java.lang.String> options)
java.lang.Iterable<FileScanTask> selectFilesToRewrite(java.lang.Iterable<FileScanTask> dataFiles)
dataFiles
- iterable of FileScanTasks for files in a given partitionjava.lang.Iterable<java.util.List<FileScanTask>> planFileGroups(java.lang.Iterable<FileScanTask> dataFiles)
dataFiles
- iterable of FileScanTasks to be rewrittenjava.util.Set<DataFile> rewriteFiles(java.util.List<FileScanTask> filesToRewrite)
filesToRewrite
- a group of files to be rewritten together