public class ConnectorTableLayout extends Object
| Constructor and Description |
|---|
ConnectorTableLayout(ConnectorTableLayoutHandle handle) |
ConnectorTableLayout(ConnectorTableLayoutHandle handle,
Optional<List<ColumnHandle>> columns,
TupleDomain<ColumnHandle> predicate,
Optional<ConnectorTablePartitioning> tablePartitioning,
Optional<Set<ColumnHandle>> streamPartitioningColumns,
Optional<DiscretePredicates> discretePredicates,
List<LocalProperty<ColumnHandle>> localProperties) |
ConnectorTableLayout(ConnectorTableLayoutHandle handle,
Optional<List<ColumnHandle>> columns,
TupleDomain<ColumnHandle> predicate,
Optional<ConnectorTablePartitioning> tablePartitioning,
Optional<Set<ColumnHandle>> streamPartitioningColumns,
Optional<DiscretePredicates> discretePredicates,
List<LocalProperty<ColumnHandle>> localProperties,
Optional<RowExpression> remainingPredicate) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(Object obj) |
Optional<List<ColumnHandle>> |
getColumns()
The columns from the original table provided by this layout.
|
Optional<DiscretePredicates> |
getDiscretePredicates()
A collection of discrete predicates describing the data in this layout.
|
ConnectorTableLayoutHandle |
getHandle() |
List<LocalProperty<ColumnHandle>> |
getLocalProperties()
Properties describing the layout of the data (grouping/sorting) within each partition
|
TupleDomain<ColumnHandle> |
getPredicate()
A TupleDomain that represents a predicate that every row this TableScan node
produces is guaranteed to satisfy.
|
Optional<RowExpression> |
getRemainingPredicate()
Returns the remaining predicates after the tuple domain push down in getTableLayout().
|
Optional<Set<ColumnHandle>> |
getStreamPartitioningColumns()
The partitioning for the table streams.
|
Optional<ConnectorTablePartitioning> |
getTablePartitioning()
The partitioning of the table across the worker nodes.
|
int |
hashCode() |
public ConnectorTableLayout(ConnectorTableLayoutHandle handle)
public ConnectorTableLayout(ConnectorTableLayoutHandle handle, Optional<List<ColumnHandle>> columns, TupleDomain<ColumnHandle> predicate, Optional<ConnectorTablePartitioning> tablePartitioning, Optional<Set<ColumnHandle>> streamPartitioningColumns, Optional<DiscretePredicates> discretePredicates, List<LocalProperty<ColumnHandle>> localProperties)
public ConnectorTableLayout(ConnectorTableLayoutHandle handle, Optional<List<ColumnHandle>> columns, TupleDomain<ColumnHandle> predicate, Optional<ConnectorTablePartitioning> tablePartitioning, Optional<Set<ColumnHandle>> streamPartitioningColumns, Optional<DiscretePredicates> discretePredicates, List<LocalProperty<ColumnHandle>> localProperties, Optional<RowExpression> remainingPredicate)
public ConnectorTableLayoutHandle getHandle()
public Optional<List<ColumnHandle>> getColumns()
public TupleDomain<ColumnHandle> getPredicate()
This guarantee can have different origins. For example, it may be successful predicate push down, or inherent guarantee provided by the underlying data.
public Optional<RowExpression> getRemainingPredicate()
predicate and discretePredicates.
Note that if the predicate is fully pushed down to the connector, it may reference columns which are not in the output of the table scan if the columns are not used in the
downstream plan.public Optional<ConnectorTablePartitioning> getTablePartitioning()
If the table is node partitioned, the connector guarantees that each combination of values for the distributed columns will be contained within a single worker.
public Optional<Set<ColumnHandle>> getStreamPartitioningColumns()
If the table is partitioned, the connector guarantees that each combination of values for the partition columns will be contained within a single split (i.e., partitions cannot straddle multiple splits)
public Optional<DiscretePredicates> getDiscretePredicates()
getPredicate(). They may be used by the engine for further optimizations.public List<LocalProperty<ColumnHandle>> getLocalProperties()
Copyright © 2012–2022. All rights reserved.