-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/13059/#review28671
-----------------------------------------------------------



ql/src/java/org/apache/hadoop/hive/ql/exec/vector/ColumnVector.java
<https://reviews.apache.org/r/13059/#comment55588>

    Nice to see good comments



ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnAssign.java
<https://reviews.apache.org/r/13059/#comment55589>

    A comment that explains at a high level where and how this interface is 
used would be helpful.



ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnAssignFactory.java
<https://reviews.apache.org/r/13059/#comment55593>

    should these fields be marked private?



ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnAssignFactory.java
<https://reviews.apache.org/r/13059/#comment55594>

    Please add a comment that explains this method.
    
    Should this be a new method on ByteColumnVector or can you use 
BytesColumnVector.setVal()?
    
    setVal automatically extends the internal buffer if needed.



ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnAssignFactory.java
<https://reviews.apache.org/r/13059/#comment55612>

    Please add a comment to explain the purpose of this method
    



ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnAssignFactory.java
<https://reviews.apache.org/r/13059/#comment55617>

    conventions are to put blanks before and after operators =, < etc.



ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnAssignFactory.java
<https://reviews.apache.org/r/13059/#comment55616>

    The Sun Java coding style conventions that are used for Hive say to use 
this style:
    
    } else [if (...)] {
      ...
    }



ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnAssignFactory.java
<https://reviews.apache.org/r/13059/#comment55618>

    Please add a descriptive comment for this method



ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnAssignFactory.java
<https://reviews.apache.org/r/13059/#comment55622>

    and the what?



ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorMapJoinOperator.java
<https://reviews.apache.org/r/13059/#comment55627>

    remove blank comment?



ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorMapJoinOperator.java
<https://reviews.apache.org/r/13059/#comment55629>

    correct spelling of Vectorization



ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorMapJoinOperator.java
<https://reviews.apache.org/r/13059/#comment55632>

    supper -> super?
    Please explain what out-of-band params are.



ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorMapJoinOperator.java
<https://reviews.apache.org/r/13059/#comment55635>

    colon should be surounded by blanks



ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorizedRowBatch.java
<https://reviews.apache.org/r/13059/#comment55653>

    Please add a comment that describes what this method does.



ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/Vectorizer.java
<https://reviews.apache.org/r/13059/#comment55654>

    Please add a comment



ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/Vectorizer.java
<https://reviews.apache.org/r/13059/#comment55649>

    Please add a comment explaining what's done by this method



ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/Vectorizer.java
<https://reviews.apache.org/r/13059/#comment55650>

    Please add a descriptive comment for this method


This looks good. I made a bunch of stylistic comments. Could you also add a 
page or so of design description to the design document for vectorized query 
execution attached to HIVE-4160? Thanks Remus. -Eric

- Eric Hanson


On Oct. 12, 2013, 9:51 p.m., Remus Rusanu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/13059/
> -----------------------------------------------------------
> 
> (Updated Oct. 12, 2013, 9:51 p.m.)
> 
> 
> Review request for hive, Eric Hanson and Jitendra Pandey.
> 
> 
> Bugs: HIVE-4850
>     https://issues.apache.org/jira/browse/HIVE-4850
> 
> 
> Repository: hive-git
> 
> 
> Description
> -------
> 
> This is a working implementation based on current trunk. It is simpler than 
> the .1 patch in as it delegates the JOIN entirely to the row-mode 
> MapJoinOperator. The vectorized operator is literally calling the row-mode 
> implementaiton for each row in the input batch and collects the row-mode 
> forward into the output batch. This is not as bad as it seems because the 
> JOIN operators has to resort to row-mode operations anyway, due to the small 
> tables (hashtables) being row-mode (objects and object-inspectors). By 
> delegating the entire join logic to the row mode we piggyback on the 
> correctness of exiting implementation. I do plan to come up with a 
> full-vectorized mode implementation but that would require changes to the 
> hash table creation-serialization. Note that the filtering and key evaluation 
> of the big table does use vectorized operators. the row mode applies only to 
> the key HT lookup and to the JOIN logic
> 
> 
> Diffs
> -----
> 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/CommonJoinOperator.java d320b47 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/JoinOperator.java 86db044 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/JoinUtil.java fa9ee35 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/MapJoinOperator.java 153b8ea 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/OperatorFactory.java 54f2644 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/SMBMapJoinOperator.java cde1a59 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/vector/ColumnVector.java 8b4c615 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnAssign.java 
> PRE-CREATION 
>   
> ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorColumnAssignFactory.java
>  PRE-CREATION 
>   
> ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorHashKeyWrapperBatch.java
>  9955d09 
>   
> ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorMapJoinOperator.java 
> PRE-CREATION 
>   
> ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorReduceSinkOperator.java
>  6df3551 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorSelectOperator.java 
> 0fb763a 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorizationContext.java 
> 8f10644 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorizedRowBatch.java 
> ff13f89 
>   
> ql/src/java/org/apache/hadoop/hive/ql/exec/vector/expressions/VectorExpressionWriterFactory.java
>  9e189c9 
>   ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/Vectorizer.java 
> 02c32cb 
>   ql/src/java/org/apache/hadoop/hive/ql/plan/MapWork.java a72ec8b 
>   ql/src/test/queries/clientpositive/vectorized_mapjoin.q PRE-CREATION 
>   ql/src/test/results/clientpositive/vectorized_mapjoin.q.out PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/13059/diff/
> 
> 
> Testing
> -------
> 
> Manually run some join queries on alltypes_orc table.
> 
> 
> Thanks,
> 
> Remus Rusanu
> 
>

Reply via email to