|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.hadoop.io.WritableComparator
org.apache.hadoop.mapreduce.lib.partition.KeyFieldBasedComparator<K,V>
@InterfaceAudience.Public @InterfaceStability.Stable public class KeyFieldBasedComparator<K,V>
This comparator implementation provides a subset of the features provided by the Unix/GNU Sort. In particular, the supported features are: -n, (Sort numerically) -r, (Reverse the result of comparison) -k pos1[,pos2], where pos is of the form f[.c][opts], where f is the number of the field to use, and c is the number of the first character from the beginning of the field. Fields and character posns are numbered starting with 1; a character position of zero in pos2 indicates the field's last character. If '.c' is omitted from pos1, it defaults to 1 (the beginning of the field); if omitted from pos2, it defaults to 0 (the end of the field). opts are ordering options (any of 'nr' as described above). We assume that the fields in the key are separated by mapreduce.map.output.key.field.separator.
| Field Summary | |
|---|---|
static String |
COMPARATOR_OPTIONS
|
| Constructor Summary | |
|---|---|
KeyFieldBasedComparator()
|
|
| Method Summary | |
|---|---|
int |
compare(byte[] b1,
int s1,
int l1,
byte[] b2,
int s2,
int l2)
Optimization hook. |
Configuration |
getConf()
Return the configuration used by this object. |
static String |
getKeyFieldComparatorOption(JobContext job)
Get the KeyFieldBasedComparator options |
void |
setConf(Configuration conf)
Set the configuration to be used by this object. |
static void |
setKeyFieldComparatorOptions(Job job,
String keySpec)
Set the KeyFieldBasedComparator options used to compare keys. |
| Methods inherited from class org.apache.hadoop.io.WritableComparator |
|---|
compare, compare, compareBytes, define, get, getKeyClass, hashBytes, hashBytes, newKey, readDouble, readFloat, readInt, readLong, readUnsignedShort, readVInt, readVLong |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface java.util.Comparator |
|---|
equals |
| Field Detail |
|---|
public static String COMPARATOR_OPTIONS
| Constructor Detail |
|---|
public KeyFieldBasedComparator()
| Method Detail |
|---|
public void setConf(Configuration conf)
Configurable
setConf in interface Configurablepublic Configuration getConf()
Configurable
getConf in interface Configurable
public int compare(byte[] b1,
int s1,
int l1,
byte[] b2,
int s2,
int l2)
WritableComparatorThe default implementation reads the data into two WritableComparables (using Writable.readFields(DataInput), then calls WritableComparator.compare(WritableComparable,WritableComparable).
compare in interface RawComparatorcompare in class WritableComparator
public static void setKeyFieldComparatorOptions(Job job,
String keySpec)
KeyFieldBasedComparator options used to compare keys.
keySpec - the key specification of the form -k pos1[,pos2], where,
pos is of the form f[.c][opts], where f is the number
of the key field to use, and c is the number of the first character from
the beginning of the field. Fields and character posns are numbered
starting with 1; a character position of zero in pos2 indicates the
field's last character. If '.c' is omitted from pos1, it defaults to 1
(the beginning of the field); if omitted from pos2, it defaults to 0
(the end of the field). opts are ordering options. The supported options
are:
-n, (Sort numerically)
-r, (Reverse the result of comparison)public static String getKeyFieldComparatorOption(JobContext job)
KeyFieldBasedComparator options
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||