public static class AllDeleteFilesTable.AllDeleteFilesTableScan
extends java.lang.Object
Modifier and Type | Method and Description |
---|---|
TableScan |
appendsAfter(long fromSnapshotId)
Create a new
TableScan to read appended data from fromSnapshotId exclusive to
the current snapshot inclusive. |
TableScan |
appendsBetween(long fromSnapshotId,
long toSnapshotId)
Create a new
TableScan to read appended data from fromSnapshotId exclusive to
toSnapshotId inclusive. |
TableScan |
asOfTime(long timestampMillis)
Create a new
TableScan from this scan's configuration that will use the most recent
snapshot as of the given time in milliseconds on the branch in the scan or main if no branch is
set. |
ThisT |
caseSensitive(boolean caseSensitive)
Create a new scan from this that, if data columns where selected via
Scan.select(java.util.Collection) , controls whether the match to the schema will be done with case
sensitivity. |
protected boolean |
colStats()
Deprecated.
Will be removed in 1.2.0, use
TableScanContext.returnColumnStats()
directly. |
protected org.apache.iceberg.TableScanContext |
context() |
protected CloseableIterable<FileScanTask> |
doPlanFiles() |
Expression |
filter()
Returns this scan's filter
Expression . |
ThisT |
filter(Expression expr)
Create a new scan from the results of this filtered by the
Expression . |
ThisT |
ignoreResiduals()
Create a new scan from this that applies data filtering to files but not to rows in those
files.
|
ThisT |
includeColumnStats()
Create a new scan from this that loads the column stats with each data file.
|
boolean |
isCaseSensitive()
Returns whether this scan is case-sensitive with respect to column names.
|
protected CloseableIterable<ManifestFile> |
manifests()
Returns an iterable of manifest files to explore for this all files metadata table scan
|
protected TableScan |
newRefinedScan(TableOperations ops,
Table table,
Schema schema,
org.apache.iceberg.TableScanContext context) |
ThisT |
option(java.lang.String property,
java.lang.String value)
Create a new scan from this scan's configuration that will override the
Table 's
behavior based on the incoming pair. |
protected java.util.Map<java.lang.String,java.lang.String> |
options() |
protected java.util.concurrent.ExecutorService |
planExecutor() |
CloseableIterable<FileScanTask> |
planFiles()
Plan tasks for this scan where each task reads a single file.
|
CloseableIterable<CombinedScanTask> |
planTasks()
Plan balanced task groups for this scan by splitting large and combining small tasks.
|
ThisT |
planWith(java.util.concurrent.ExecutorService executorService)
Create a new scan to use a particular executor to plan.
|
ThisT |
project(Schema projectedSchema)
Create a new scan from this with the schema as its projection.
|
protected CloseableIterable<ManifestFile> |
reachableManifests(org.apache.iceberg.relocated.com.google.common.base.Function<Snapshot,java.lang.Iterable<ManifestFile>> toManifests) |
protected java.util.List<java.lang.String> |
scanColumns() |
protected ScanMetrics |
scanMetrics() |
Schema |
schema()
Returns this scan's projection
Schema . |
ThisT |
select(java.util.Collection<java.lang.String> columns)
Create a new scan from this that will read the given data columns.
|
protected boolean |
shouldIgnoreResiduals() |
protected boolean |
shouldPlanWithExecutor() |
Snapshot |
snapshot()
Returns the
Snapshot that will be used by this scan. |
protected java.lang.Long |
snapshotId() |
int |
splitLookback()
Returns the split lookback for this scan.
|
long |
splitOpenFileCost()
Returns the split open file cost for this scan.
|
Table |
table()
Returns the
Table from which this scan loads data. |
protected TableOperations |
tableOps() |
protected Schema |
tableSchema() |
protected MetadataTableType |
tableType()
Type of scan being performed, such as
MetadataTableType.ALL_DATA_FILES when scanning a
table's AllDataFilesTable . |
long |
targetSplitSize()
Returns the target split size for this scan.
|
java.lang.String |
toString() |
TableScan |
useRef(java.lang.String ref)
Create a new
TableScan from this scan's configuration that will use the given
reference. |
TableScan |
useSnapshot(long scanSnapshotId)
Create a new
TableScan from this scan's configuration that will use the given snapshot
by ID. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
caseSensitive, filter, filter, ignoreResiduals, includeColumnStats, isCaseSensitive, option, planWith, project, schema, select, select, splitLookback, splitOpenFileCost
protected TableScan newRefinedScan(TableOperations ops, Table table, Schema schema, org.apache.iceberg.TableScanContext context)
protected CloseableIterable<ManifestFile> manifests()
protected CloseableIterable<FileScanTask> doPlanFiles()
public TableScan useSnapshot(long scanSnapshotId)
TableScan
TableScan
from this scan's configuration that will use the given snapshot
by ID.useSnapshot
in interface TableScan
scanSnapshotId
- a snapshot IDpublic TableScan useRef(java.lang.String ref)
TableScan
TableScan
from this scan's configuration that will use the given
reference.public TableScan asOfTime(long timestampMillis)
TableScan
TableScan
from this scan's configuration that will use the most recent
snapshot as of the given time in milliseconds on the branch in the scan or main if no branch is
set.public CloseableIterable<FileScanTask> planFiles()
Scan
Use Scan.planTasks()
for planning balanced tasks where each task will read either a
single file, a part of a file, or multiple files.
planFiles
in interface Scan<TableScan,FileScanTask,CombinedScanTask>
protected CloseableIterable<ManifestFile> reachableManifests(org.apache.iceberg.relocated.com.google.common.base.Function<Snapshot,java.lang.Iterable<ManifestFile>> toManifests)
protected MetadataTableType tableType()
MetadataTableType.ALL_DATA_FILES
when scanning a
table's AllDataFilesTable
.
Used for logging and error messages.
public TableScan appendsBetween(long fromSnapshotId, long toSnapshotId)
TableScan
TableScan
to read appended data from fromSnapshotId
exclusive to
toSnapshotId
inclusive.appendsBetween
in interface TableScan
fromSnapshotId
- the last snapshot id read by the user, exclusivetoSnapshotId
- read append data up to this snapshot idfromSnapshotId
exclusive and up to
toSnapshotId
inclusivepublic TableScan appendsAfter(long fromSnapshotId)
TableScan
TableScan
to read appended data from fromSnapshotId
exclusive to
the current snapshot inclusive.appendsAfter
in interface TableScan
fromSnapshotId
- - the last snapshot id read by the user, exclusivefromSnapshotId
exclusive and up to
current snapshot inclusivepublic long targetSplitSize()
Scan
targetSplitSize
in interface Scan<TableScan,FileScanTask,CombinedScanTask>
protected java.lang.Long snapshotId()
@Deprecated protected boolean colStats()
TableScanContext.returnColumnStats()
directly.protected java.util.Map<java.lang.String,java.lang.String> options()
protected ScanMetrics scanMetrics()
public Table table()
TableScan
Table
from which this scan loads data.public CloseableIterable<CombinedScanTask> planTasks()
Scan
Task groups created by this method may read partial input files, multiple input files or both.
planTasks
in interface Scan<TableScan,FileScanTask,CombinedScanTask>
public Snapshot snapshot()
TableScan
Snapshot
that will be used by this scan.
If the snapshot was not configured using TableScan.asOfTime(long)
or TableScan.useSnapshot(long)
, the current table snapshot will be used.
public java.lang.String toString()
toString
in class java.lang.Object
protected TableOperations tableOps()
protected Schema tableSchema()
protected org.apache.iceberg.TableScanContext context()
protected java.util.List<java.lang.String> scanColumns()
protected boolean shouldIgnoreResiduals()
protected boolean shouldPlanWithExecutor()
protected java.util.concurrent.ExecutorService planExecutor()
public ThisT option(java.lang.String property, java.lang.String value)
Scan
Table
's
behavior based on the incoming pair. Unknown properties will be ignored.option
in interface Scan<ThisT,T extends ScanTask,G extends ScanTaskGroup<T>>
property
- name of the table property to be overriddenvalue
- value to override withpublic ThisT project(Schema projectedSchema)
Scan
project
in interface Scan<ThisT,T extends ScanTask,G extends ScanTaskGroup<T>>
projectedSchema
- a projection schemapublic ThisT caseSensitive(boolean caseSensitive)
Scan
Scan.select(java.util.Collection)
, controls whether the match to the schema will be done with case
sensitivity. Default is true.caseSensitive
in interface Scan<ThisT,T extends ScanTask,G extends ScanTaskGroup<T>>
public boolean isCaseSensitive()
Scan
isCaseSensitive
in interface Scan<ThisT,T extends ScanTask,G extends ScanTaskGroup<T>>
public ThisT includeColumnStats()
Scan
Column stats include: value count, null value count, lower bounds, and upper bounds.
includeColumnStats
in interface Scan<ThisT,T extends ScanTask,G extends ScanTaskGroup<T>>
public ThisT select(java.util.Collection<java.lang.String> columns)
Scan
select
in interface Scan<ThisT,T extends ScanTask,G extends ScanTaskGroup<T>>
columns
- column names from the table's schemapublic ThisT filter(Expression expr)
Scan
Expression
.filter
in interface Scan<ThisT,T extends ScanTask,G extends ScanTaskGroup<T>>
expr
- a filter expressionpublic Expression filter()
Scan
Expression
.filter
in interface Scan<ThisT,T extends ScanTask,G extends ScanTaskGroup<T>>
public ThisT ignoreResiduals()
Scan
ignoreResiduals
in interface Scan<ThisT,T extends ScanTask,G extends ScanTaskGroup<T>>
public ThisT planWith(java.util.concurrent.ExecutorService executorService)
Scan
planWith
in interface Scan<ThisT,T extends ScanTask,G extends ScanTaskGroup<T>>
executorService
- the provided executorpublic Schema schema()
Scan
Schema
.
If the projection schema was set directly using Scan.project(Schema)
, returns that
schema.
If the projection schema was set by calling Scan.select(Collection)
, returns a
projection schema that includes the selected data fields and any fields used in the filter
expression.
schema
in interface Scan<ThisT,T extends ScanTask,G extends ScanTaskGroup<T>>
public int splitLookback()
Scan
splitLookback
in interface Scan<ThisT,T extends ScanTask,G extends ScanTaskGroup<T>>
public long splitOpenFileCost()
Scan
splitOpenFileCost
in interface Scan<ThisT,T extends ScanTask,G extends ScanTaskGroup<T>>