Package org.apache.iceberg
Interface TableScan
-
- All Superinterfaces:
Scan<TableScan,FileScanTask,CombinedScanTask>
- All Known Implementing Classes:
AllDataFilesTable.AllDataFilesTableScan
,AllDeleteFilesTable.AllDeleteFilesTableScan
,AllFilesTable.AllFilesTableScan
,AllManifestsTable.AllManifestsTableScan
,DataFilesTable.DataFilesTableScan
,DataTableScan
,DeleteFilesTable.DeleteFilesTableScan
,FilesTable.FilesTableScan
public interface TableScan extends Scan<TableScan,FileScanTask,CombinedScanTask>
API for configuring a table scan.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description default TableScan
appendsAfter(long fromSnapshotId)
Deprecated.since 1.0.0, will be removed in 2.0.0; useTable.newIncrementalAppendScan()
instead.default TableScan
appendsBetween(long fromSnapshotId, long toSnapshotId)
Deprecated.since 1.0.0, will be removed in 2.0.0; useTable.newIncrementalAppendScan()
instead.TableScan
asOfTime(long timestampMillis)
Create a newTableScan
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.Snapshot
snapshot()
Returns theSnapshot
that will be used by this scan.Table
table()
Returns theTable
from which this scan loads data.default TableScan
useRef(java.lang.String ref)
Create a newTableScan
from this scan's configuration that will use the given reference.TableScan
useSnapshot(long snapshotId)
Create a newTableScan
from this scan's configuration that will use the given snapshot by ID.-
Methods inherited from interface org.apache.iceberg.Scan
caseSensitive, filter, filter, ignoreResiduals, includeColumnStats, isCaseSensitive, metricsReporter, option, planFiles, planTasks, planWith, project, schema, select, select, splitLookback, splitOpenFileCost, targetSplitSize
-
-
-
-
Method Detail
-
useSnapshot
TableScan useSnapshot(long snapshotId)
Create a newTableScan
from this scan's configuration that will use the given snapshot by ID.- Parameters:
snapshotId
- a snapshot ID- Returns:
- a new scan based on this with the given snapshot ID
- Throws:
java.lang.IllegalArgumentException
- if the snapshot cannot be found
-
useRef
default TableScan useRef(java.lang.String ref)
Create a newTableScan
from this scan's configuration that will use the given reference.- Parameters:
ref
- reference- Returns:
- a new scan based on the given reference.
- Throws:
java.lang.IllegalArgumentException
- if a reference with the given name could not be found
-
asOfTime
TableScan asOfTime(long timestampMillis)
Create a newTableScan
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.- Parameters:
timestampMillis
- a timestamp in milliseconds.- Returns:
- a new scan based on this with the current snapshot at the given time
- Throws:
java.lang.IllegalArgumentException
- if the snapshot cannot be found or time travel is attempted on a tag
-
appendsBetween
@Deprecated default TableScan appendsBetween(long fromSnapshotId, long toSnapshotId)
Deprecated.since 1.0.0, will be removed in 2.0.0; useTable.newIncrementalAppendScan()
instead.Create a newTableScan
to read appended data fromfromSnapshotId
exclusive totoSnapshotId
inclusive.- Parameters:
fromSnapshotId
- the last snapshot id read by the user, exclusivetoSnapshotId
- read append data up to this snapshot id- Returns:
- a table scan which can read append data from
fromSnapshotId
exclusive and up totoSnapshotId
inclusive
-
appendsAfter
@Deprecated default TableScan appendsAfter(long fromSnapshotId)
Deprecated.since 1.0.0, will be removed in 2.0.0; useTable.newIncrementalAppendScan()
instead.Create a newTableScan
to read appended data fromfromSnapshotId
exclusive to the current snapshot inclusive.- Parameters:
fromSnapshotId
- - the last snapshot id read by the user, exclusive- Returns:
- a table scan which can read append data from
fromSnapshotId
exclusive and up to current snapshot inclusive
-
snapshot
Snapshot snapshot()
Returns theSnapshot
that will be used by this scan.If the snapshot was not configured using
asOfTime(long)
oruseSnapshot(long)
, the current table snapshot will be used.- Returns:
- the Snapshot this scan will use
-
-