public static class ListBucketingPruner.DynamicMultiDimensionalCollection
extends java.lang.Object
ListBucketingPruner.prune(org.apache.hadoop.hive.ql.parse.ParseContext, org.apache.hadoop.hive.ql.metadata.Partition, org.apache.hadoop.hive.ql.plan.ExprNodeDesc)
We will use a HasMap to represent the Dynamic-Multiple-Dimension collection:
1. Key is List| Constructor and Description |
|---|
DynamicMultiDimensionalCollection() |
| Modifier and Type | Method and Description |
|---|---|
static java.util.List<java.util.List<java.lang.String>> |
flat(java.util.List<java.util.List<java.lang.String>> uniqSkewedElements)
Flat a dynamic-multi-dimension collection.
|
static java.util.List<java.util.List<java.lang.String>> |
generateCollection(java.util.List<java.util.List<java.lang.String>> values)
Find out complete skewed-element collection
For example:
1.
|
static java.util.List<java.util.List<java.lang.String>> |
uniqueElementsList(java.util.List<java.util.List<java.lang.String>> values,
java.lang.String defaultDirName)
Convert value to unique element list.
|
static java.util.List<java.util.List<java.lang.String>> |
uniqueSkewedValueList(java.util.List<java.util.List<java.lang.String>> values)
Convert value to unique skewed value list.
|
public static java.util.List<java.util.List<java.lang.String>> generateCollection(java.util.List<java.util.List<java.lang.String>> values)
throws SemanticException
SemanticExceptionpublic static java.util.List<java.util.List<java.lang.String>> uniqueElementsList(java.util.List<java.util.List<java.lang.String>> values,
java.lang.String defaultDirName)
values - skewed value listpublic static java.util.List<java.util.List<java.lang.String>> uniqueSkewedValueList(java.util.List<java.util.List<java.lang.String>> values)
ListBucketingPrunerUtils.evaluateExprOnCell(java.util.List<java.lang.String>, java.util.List<java.lang.String>, org.apache.hadoop.hive.ql.plan.ExprNodeDesc, java.util.List<java.util.List<java.lang.String>>)
For example:
1. skewed column (list): C1, C2, C3
2. skewed value (list of list): (1,a,x), (2,b,x), (1,c,x), (2,a,y)
Input: skewed value (list of list): (1,a,x), (2,b,x), (1,c,x), (2,a,y)
Output: Unique skewed value for each skewed column (list of list):
(1,2), (a,b,c), (x,y)
Output matches order of skewed column. Output can be read as:
C1 has unique skewed value list (1,2,)
C2 has unique skewed value list (a,b,c)
C3 has unique skewed value list (x,y)values - skewed value listpublic static java.util.List<java.util.List<java.lang.String>> flat(java.util.List<java.util.List<java.lang.String>> uniqSkewedElements)
throws SemanticException
uniqSkewedElements - SemanticExceptionCopyright © 2012 The Apache Software Foundation