2013-04-24 5 views

Antwort

22

GroupComparator, Um zu verstehen, meine Antwort auf diese Frage sehen -

What is the use of grouping comparator in hadoop map reduce

SortComparator: Wird verwendet, um festzulegen, wie Schlüssel Karte Ausgabe

Auszüge aus dem Buch Hadoop sortiert werden - Definitive Leitfaden:

Sortierreihenfolge für Schlüssel wird wie folgt gefunden:

  1. Wenn die Eigenschaft mapred.output.key.comparator.class gesetzt, entweder explizit oder durch setSortComparatorClass() auf Job aufrufen, dann wird eine Instanz dieser Klasse verwendet wird. (In der alten API die äquivalente Methode ist setOutputKeyComparatorClass() auf JobConf.)

  2. Andernfalls Schlüssel müssen eine Unterklasse von WritableComparable sein, und der registrierten Komparator für die Schlüsselklasse verwendet wird.

  3. Wenn kein registrierter Komparator ist, wird ein RawComparator verwendet, das deserialisiert die Byteströme in Objekte und Delegierten der WritableComparable ‚s compareTo() Verfahren verglichen wird.

SortComparator Vs GroupComparator in einem Motto: SortComparator entscheidet, wie Tasten Karte sortiert ausgegeben werden, während GroupComparator entscheidet, welche innerhalb der Reducer Kartenausgabe Schlüssel zur gleichen gehen Methodenaufruf reduzieren.

5

Gruppe Vergleicher entscheidet, welche Karte Ausgang Schlüssel vereinigt wird (gruppiert) in einen Schlüssel, und natürlich alle Sammlungen von Werten zu gruppieren. Normalerweise wird ein erster Schlüssel als einziger für die Zusammenfassungssammlung benötigt.

SortComparator entscheidet, wie Schlüssel werden von verringern in Eingang sortiert werden. Standardmäßig verwendet es natürliche Reihenfolge.