public class HiveFilterPushdown extends Object implements ConnectorPlanOptimizer
| Modifier and Type | Class and Description |
|---|---|
static class |
HiveFilterPushdown.ConnectorPushdownFilterResult |
| Modifier and Type | Field and Description |
|---|---|
protected FunctionMetadataManager |
functionMetadataManager |
protected StandardFunctionResolution |
functionResolution |
protected HivePartitionManager |
partitionManager |
protected RowExpressionService |
rowExpressionService |
protected HiveTransactionManager |
transactionManager |
| Constructor and Description |
|---|
HiveFilterPushdown(HiveTransactionManager transactionManager,
RowExpressionService rowExpressionService,
StandardFunctionResolution functionResolution,
HivePartitionManager partitionManager,
FunctionMetadataManager functionMetadataManager) |
protected final HiveTransactionManager transactionManager
protected final RowExpressionService rowExpressionService
protected final StandardFunctionResolution functionResolution
protected final HivePartitionManager partitionManager
protected final FunctionMetadataManager functionMetadataManager
public HiveFilterPushdown(HiveTransactionManager transactionManager, RowExpressionService rowExpressionService, StandardFunctionResolution functionResolution, HivePartitionManager partitionManager, FunctionMetadataManager functionMetadataManager)
public PlanNode optimize(PlanNode maxSubplan, ConnectorSession session, VariableAllocator variableAllocator, PlanNodeIdAllocator idAllocator)
optimize in interface ConnectorPlanOptimizerprotected boolean useDynamicFilter(RowExpression expression, ConnectorTableHandle tableHandle, Map<String,ColumnHandle> columnHandleMap)
expression - expression to be evaluated.tableHandle - tableHandler where the expression to be evaluated.columnHandleMap - column name to column handle Map for all columns in the table.protected HiveFilterPushdown.ConnectorPushdownFilterResult pushdownFilter(ConnectorSession session, HiveMetadata metadata, ConnectorTableHandle tableHandle, RowExpression filter, Optional<ConnectorTableLayoutHandle> currentLayoutHandle)
public HiveFilterPushdown.ConnectorPushdownFilterResult pushdownFilter(ConnectorSession session, ConnectorMetadata metadata, SemiTransactionalHiveMetastore metastore, ConnectorTableHandle tableHandle, RowExpression filter, Optional<ConnectorTableLayoutHandle> currentLayoutHandle)
protected HiveMetadata getMetadata(TableHandle tableHandle)
protected boolean isPushdownFilterSupported(ConnectorSession session, TableHandle tableHandle)
public static Set<VariableReferenceExpression> extractVariableExpressions(RowExpression expression)
Copyright © 2012–2023. All rights reserved.