ThisT
- the child Java API class, returned by method chainingT
- the Java type of tasks produces by this scanG
- the Java type of task groups produces by this scanpublic interface Scan<ThisT,T extends ScanTask,G extends ScanTaskGroup<T>>
select(Collection)
and filter(Expression)
, create new TableScan instances.Modifier and Type | Method and Description |
---|---|
ThisT |
caseSensitive(boolean caseSensitive)
Create a new scan from this that, if data columns where selected via
select(java.util.Collection) , controls whether the match to the schema will be done with case
sensitivity. |
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.
|
default ThisT |
metricsReporter(MetricsReporter reporter)
Create a new scan that will report scan metrics to the provided reporter in addition to
reporters maintained by the scan.
|
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. |
CloseableIterable<T> |
planFiles()
Plan tasks for this scan where each task reads a single file.
|
CloseableIterable<G> |
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 schema)
Create a new scan from this with the schema as its projection.
|
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.
|
default ThisT |
select(java.lang.String... columns)
Create a new scan from this that will read the given columns.
|
int |
splitLookback()
Returns the split lookback for this scan.
|
long |
splitOpenFileCost()
Returns the split open file cost for this scan.
|
long |
targetSplitSize()
Returns the target split size for this scan.
|
ThisT option(java.lang.String property, java.lang.String value)
Table
's
behavior based on the incoming pair. Unknown properties will be ignored.property
- name of the table property to be overriddenvalue
- value to override withThisT project(Schema schema)
schema
- a projection schemaThisT caseSensitive(boolean caseSensitive)
select(java.util.Collection)
, controls whether the match to the schema will be done with case
sensitivity. Default is true.boolean isCaseSensitive()
ThisT includeColumnStats()
Column stats include: value count, null value count, lower bounds, and upper bounds.
ThisT select(java.util.Collection<java.lang.String> columns)
columns
- column names from the table's schemadefault ThisT select(java.lang.String... columns)
columns
- column namesThisT filter(Expression expr)
Expression
.expr
- a filter expressionExpression filter()
Expression
.ThisT ignoreResiduals()
ThisT planWith(java.util.concurrent.ExecutorService executorService)
executorService
- the provided executorSchema schema()
Schema
.
If the projection schema was set directly using project(Schema)
, returns that
schema.
If the projection schema was set by calling select(Collection)
, returns a
projection schema that includes the selected data fields and any fields used in the filter
expression.
CloseableIterable<T> planFiles()
Use planTasks()
for planning balanced tasks where each task will read either a
single file, a part of a file, or multiple files.
CloseableIterable<G> planTasks()
Task groups created by this method may read partial input files, multiple input files or both.
long targetSplitSize()
int splitLookback()
long splitOpenFileCost()
default ThisT metricsReporter(MetricsReporter reporter)