public abstract class TableFunctionResolver
extends java.lang.Object
GenericUDAFResolver. Break up the responsibility of the
old AbstractTableFunction class into a Resolver and Evaluator.
The Resolver is responsible for:
tableFunctionEvaluator
TableFunctionDef. This provides information
about the arguments to the function, the shape of the Input partition and the Partitioning details.
FunctionRegistry. The Resolver is initialized
by the following 4 step process:
PTFDesc and the TableFunctionDef.
| Constructor and Description |
|---|
TableFunctionResolver() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
carryForwardNames() |
protected abstract TableFunctionEvaluator |
createEvaluator(PTFDesc ptfDesc,
PTFDesc.PartitionedTableFunctionDef tDef) |
TableFunctionEvaluator |
getEvaluator() |
abstract java.util.ArrayList<java.lang.String> |
getOutputColumnNames() |
PTFDesc |
getPtfDesc() |
java.util.ArrayList<java.lang.String> |
getRawInputColumnNames() |
void |
initialize(HiveConf cfg,
PTFDesc ptfDesc,
PTFDesc.PartitionedTableFunctionDef tDef) |
void |
initialize(PTFDesc ptfDesc,
PTFDesc.PartitionedTableFunctionDef tDef,
TableFunctionEvaluator evaluator) |
abstract void |
initializeOutputOI()
This method is invoked during runtime(during deserialization of theQueryDef).
|
void |
initializeRawInputOI() |
protected void |
setOutputOI(StructObjectInspector outputOI) |
protected void |
setRawInputOI(StructObjectInspector rawInputOI) |
abstract void |
setupOutputOI() |
void |
setupRawInputOI() |
abstract boolean |
transformsRawInput() |
public void initialize(HiveConf cfg, PTFDesc ptfDesc, PTFDesc.PartitionedTableFunctionDef tDef) throws SemanticException
SemanticExceptionpublic void initialize(PTFDesc ptfDesc, PTFDesc.PartitionedTableFunctionDef tDef, TableFunctionEvaluator evaluator) throws HiveException
HiveExceptionpublic TableFunctionEvaluator getEvaluator()
public abstract void setupOutputOI()
throws SemanticException
SemanticExceptionpublic abstract java.util.ArrayList<java.lang.String> getOutputColumnNames()
throws SemanticException
SemanticExceptionpublic abstract void initializeOutputOI()
throws HiveException
Expression Nodes
exist for all the Def (ArgDef, ColumnDef, WindowDef..). It is the responsibility of
the TableFunction to construct the evaluators and setup the OI.tblFuncDef - ptfDesc - HiveExceptionpublic void setupRawInputOI()
throws SemanticException
SemanticExceptionpublic java.util.ArrayList<java.lang.String> getRawInputColumnNames()
throws SemanticException
SemanticExceptionpublic void initializeRawInputOI()
throws HiveException
HiveExceptionprotected void setRawInputOI(StructObjectInspector rawInputOI)
protected void setOutputOI(StructObjectInspector outputOI)
public PTFDesc getPtfDesc()
public boolean carryForwardNames()
public abstract boolean transformsRawInput()
protected abstract TableFunctionEvaluator createEvaluator(PTFDesc ptfDesc, PTFDesc.PartitionedTableFunctionDef tDef)
Copyright © 2012 The Apache Software Foundation