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 TableScanappendsAfter(long fromSnapshotId)Deprecated.since 1.0.0, will be removed in 2.0.0; useTable.newIncrementalAppendScan()instead.default TableScanappendsBetween(long fromSnapshotId, long toSnapshotId)Deprecated.since 1.0.0, will be removed in 2.0.0; useTable.newIncrementalAppendScan()instead.TableScanasOfTime(long timestampMillis)Create a newTableScanfrom 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.Snapshotsnapshot()Returns theSnapshotthat will be used by this scan.Tabletable()Returns theTablefrom which this scan loads data.default TableScanuseRef(java.lang.String ref)Create a newTableScanfrom this scan's configuration that will use the given reference.TableScanuseSnapshot(long snapshotId)Create a newTableScanfrom 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, includeColumnStats, isCaseSensitive, metricsReporter, option, planFiles, planTasks, planWith, project, schema, select, select, splitLookback, splitOpenFileCost, targetSplitSize
-
-
-
-
Method Detail
-
useSnapshot
TableScan useSnapshot(long snapshotId)
Create a newTableScanfrom 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 newTableScanfrom 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 newTableScanfrom 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 newTableScanto read appended data fromfromSnapshotIdexclusive totoSnapshotIdinclusive.- 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
fromSnapshotIdexclusive and up totoSnapshotIdinclusive
-
appendsAfter
@Deprecated default TableScan appendsAfter(long fromSnapshotId)
Deprecated.since 1.0.0, will be removed in 2.0.0; useTable.newIncrementalAppendScan()instead.Create a newTableScanto read appended data fromfromSnapshotIdexclusive 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
fromSnapshotIdexclusive and up to current snapshot inclusive
-
snapshot
Snapshot snapshot()
Returns theSnapshotthat 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
-
-