2013-04-24 6 views

risposta

22

Per capire GroupComparator, vedere la mia risposta a questa domanda -

What is the use of grouping comparator in hadoop map reduce

SortComparator: Permette di definire come chiavi mappa di output sono ordinati

estratti dal libro Hadoop - Definitive Guida:

L'ordinamento per le chiavi è il seguente:

  1. Se la proprietà mapred.output.key.comparator.class è impostata, in modo esplicito o chiamando setSortComparatorClass() sul lavoro, quindi un'istanza di quella classe viene utilizzato. (In vecchia API metodo equivalente è setOutputKeyComparatorClass() su JobConf.)

  2. Altrimenti, codici deve essere una sottoclasse di WritableComparable, ed è usata la sede comparatore per la classe della chiave.

  3. Se non c'è comparatore registrato, allora un RawComparator viene utilizzato che deserializza i flussi di byte confrontati in oggetti e delega al metodo s ‘il WritableComparablecompareTo().

SortComparator Vs GroupComparator in un uno di linea: SortComparator decide come mappare i tasti di uscita sono ordinati, mentre GroupComparator decide quali chiavi mappa di uscita entro il riduttore vanno alla stessa chiamata al metodo di ridurre.

5

gruppo di confronto decide quali chiavi mappa di uscita saranno unite (raggruppati) in una chiave, e, naturalmente, saranno raggruppate anche tutte le collezioni di valori. Di solito ci vuole una prima chiave come unica per la raccolta sommaria.

SortComparator decide come chiavi verranno ordinati in ingresso di ridurre. Di default usa l'ordinamento naturale.