You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by jv...@apache.org on 2011/09/21 08:51:31 UTC

svn commit: r1173513 - in /hive/trunk: conf/ ql/src/java/org/apache/hadoop/hive/ql/index/ ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/

Author: jvs
Date: Wed Sep 21 06:51:31 2011
New Revision: 1173513

URL: http://svn.apache.org/viewvc?rev=1173513&view=rev
Log:
HIVE-2458. Group-by query optimization Followup: add flag in
conf/hive-default.xml
(Prajakta Kalmegh via jvs)


Modified:
    hive/trunk/conf/hive-default.xml
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/index/AggregateIndexHandler.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteCanApplyProcFactory.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteGBUsingIndex.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteQueryUsingAggregateIndex.java

Modified: hive/trunk/conf/hive-default.xml
URL: http://svn.apache.org/viewvc/hive/trunk/conf/hive-default.xml?rev=1173513&r1=1173512&r2=1173513&view=diff
==============================================================================
--- hive/trunk/conf/hive-default.xml (original)
+++ hive/trunk/conf/hive-default.xml Wed Sep 21 06:51:31 2011
@@ -355,6 +355,12 @@
 </property>
 
 <property>
+  <name>hive.optimize.index.groupby</name>
+  <value>false</value>
+  <description>Whether to enable optimization of group-by queries using Aggregate indexes.</description>
+</property>
+
+<property>
   <name>hive.optimize.ppd</name>
   <value>true</value>
   <description>Whether to enable predicate pushdown</description>

Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/index/AggregateIndexHandler.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/index/AggregateIndexHandler.java?rev=1173513&r1=1173512&r2=1173513&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/index/AggregateIndexHandler.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/index/AggregateIndexHandler.java Wed Sep 21 06:51:31 2011
@@ -81,10 +81,10 @@ public class AggregateIndexHandler exten
       String funcName = aggFuncCol[0];
       String colName = aggFuncCol[1].substring(0, aggFuncCol[1].length() - 1);
       if(colName.contains("*")){
-        colName = colName.replace("*", "ALL");
+        colName = colName.replace("*", "all");
       }
       FieldSchema aggregationFunction =
-        new FieldSchema("_" + funcName + "_Of_" + colName + "", "bigint", "");
+        new FieldSchema("_" + funcName + "_of_" + colName + "", "bigint", "");
       indexTblCols.add(aggregationFunction);
     }
 

Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteCanApplyProcFactory.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteCanApplyProcFactory.java?rev=1173513&r1=1173512&r2=1173513&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteCanApplyProcFactory.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteCanApplyProcFactory.java Wed Sep 21 06:51:31 2011
@@ -127,7 +127,7 @@ public final class RewriteCanApplyProcFa
                  }else if(para.size() == 0){
                    //count(*) case
                    canApplyCtx.setCountOnAllCols(true);
-                   canApplyCtx.setAggFunction("_count_Of_ALL");
+                   canApplyCtx.setAggFunction("_count_of_all");
                  }else{
                    assert para.size()==1;
                    for(int i=0; i< para.size(); i++){
@@ -144,12 +144,12 @@ public final class RewriteCanApplyProcFa
                        //if columns contained in agg func are index key columns
                        canApplyCtx.getAggFuncColList().add(
                            ((ExprNodeColumnDesc) expr).getColumn());
-                       canApplyCtx.setAggFunction("_count_Of_" +
+                       canApplyCtx.setAggFunction("_count_of_" +
                            ((ExprNodeColumnDesc) expr).getColumn() + "");
                      }else if(expr instanceof ExprNodeConstantDesc){
                        //count(1) case
                        canApplyCtx.setCountOfOne(true);
-                       canApplyCtx.setAggFunction("_count_Of_1");
+                       canApplyCtx.setAggFunction("_count_of_1");
                      }
                    }
                  }

Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteGBUsingIndex.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteGBUsingIndex.java?rev=1173513&r1=1173512&r2=1173513&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteGBUsingIndex.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteGBUsingIndex.java Wed Sep 21 06:51:31 2011
@@ -63,7 +63,7 @@ import org.apache.hadoop.hive.ql.parse.S
  * </code>
  *  to
  *  <code>
- *   select sum(_count_Of_key)
+ *   select sum(_count_of_key)
  *   from idx_table
  *   group by key;
  *  </code>
@@ -250,7 +250,7 @@ public class RewriteGBUsingIndex impleme
             String aggregationFunction = indexTableMap.get(index).toString();
             aggregationFunction = aggregationFunction.substring(1,
                 aggregationFunction.length() - 1);
-            canApplyCtx.setAggFunction("_count_Of_" + aggregationFunction + "");
+            canApplyCtx.setAggFunction("_count_of_" + aggregationFunction + "");
           }
         }
         break;

Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteQueryUsingAggregateIndex.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteQueryUsingAggregateIndex.java?rev=1173513&r1=1173512&r2=1173513&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteQueryUsingAggregateIndex.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteQueryUsingAggregateIndex.java Wed Sep 21 06:51:31 2011
@@ -84,7 +84,7 @@ public final class RewriteQueryUsingAggr
 
       //we need to set the colList, outputColumnNames, colExprMap,
       // rowSchema for only that SelectOperator which precedes the GroupByOperator
-      // count(indexed_key_column) needs to be replaced by sum(`_count_Of_indexed_key_column`)
+      // count(indexed_key_column) needs to be replaced by sum(`_count_of_indexed_key_column`)
       if (childOp instanceof GroupByOperator){
         List<ExprNodeDesc> selColList =
           operator.getConf().getColList();
@@ -97,7 +97,7 @@ public final class RewriteQueryUsingAggr
         RowSchema selRS = operator.getSchema();
         List<ColumnInfo> selRSSignature =
           selRS.getSignature();
-        //Need to create a new type for Column[_count_Of_indexed_key_column] node
+        //Need to create a new type for Column[_count_of_indexed_key_column] node
         PrimitiveTypeInfo pti = (PrimitiveTypeInfo) TypeInfoFactory.getPrimitiveTypeInfo("bigint");
         pti.setTypeName("bigint");
         ColumnInfo newCI = new ColumnInfo(rewriteQueryCtx.getAggregateFunction(), pti, "", false);