public class Distributions
extends java.lang.Object
| Modifier and Type | Class and Description | 
|---|---|
| static class  | Distributions.DistributionImplCreate a distribution on columns. | 
| Modifier and Type | Field and Description | 
|---|---|
| static Distribution | HASHList bucketing strategy hash, TODO: #1505 Separate the bucket number from the Distribution. | 
| static Distribution | NONENONE is used to indicate that there is no distribution. | 
| static Distribution | RANGEList bucketing strategy range, TODO: #1505 Separate the bucket number from the Distribution. | 
| Modifier and Type | Method and Description | 
|---|---|
| static Distribution | even(int number,
    Expression... expressions)Create a distribution by evenly distributing the data across the number of buckets. | 
| static Distribution | fields(Strategy strategy,
      int number,
      java.lang.String[]... fieldNames)Create a distribution on columns. | 
| static Distribution | hash(int number,
    Expression... expressions)Create a distribution by hashing the data across the number of buckets. | 
| static Distribution | of(Strategy strategy,
  int number,
  Expression... expressions)Create a distribution by the given strategy. | 
public static final Distribution NONE
public static final Distribution HASH
public static final Distribution RANGE
public static Distribution even(int number, Expression... expressions)
number - The number of bucketsexpressions - The expressions to distribute bypublic static Distribution hash(int number, Expression... expressions)
number - The number of bucketsexpressions - The expressions to distribute bypublic static Distribution of(Strategy strategy, int number, Expression... expressions)
strategy - The strategy to usenumber - The number of bucketsexpressions - The expressions to distribute bypublic static Distribution fields(Strategy strategy, int number, java.lang.String[]... fieldNames)
Distributions.DistributionImpl.Builder
 to create.
 
   NOTE: a, b, c are column names.
   SQL syntax: distribute by hash(a, b) buckets 5
   fields(Strategy.HASH, 5, new String[]{"a"}, new String[]{"b"});
   SQL syntax: distribute by hash(a, b, c) buckets 10
   fields(Strategy.HASH, 10, new String[]{"a"}, new String[]{"b"}, new String[]{"c"});
   SQL syntax: distribute by EVEN(a) buckets 128
   fields(Strategy.EVEN, 128, new String[]{"a"});
 strategy - The strategy to use.number - The number of buckets.fieldNames - The field names to distribute by.