Czy ktoś może wyjaśnić, jak działa RecordReader? Jak działają metody po uruchomieniu programu?Praca RecordReadera w Hadoop
9
A
Odpowiedz
13
(nowe API): Domyślna klasa Mapper ma metodę run, który wygląda tak:
public void run(Context context) throws IOException, InterruptedException {
setup(context);
while (context.nextKeyValue()) {
map(context.getCurrentKey(), context.getCurrentValue(), context);
}
cleanup(context);
}
W Context.nextKeyValue()
, Context.getCurrentKey()
i Context.getCurrentValue()
metody są owijarki do metod RecordReader
. Zobacz plik źródłowy src/mapred/org/apache/hadoop/mapreduce/MapContext.java
.
Ta pętla wykonuje i wywołuje metodę wdrożenia Mappera pod nazwą map(K, V, Context)
.
Co jeszcze chciałbyś wiedzieć?
0
org.apache.hadoop.mapred.MapTask - runNewMapper()
Imp kroki:
tworzy nowe Mapper
dostać wejściowe podzielone na odwzorowującego
pobierz rejestrator dla podziału
zainicjować czytnika rekord
użyciu czytnika rekord iterację getNextKeyVal() i przekazać klucz, val do metody mappers mapy
oczyścić
Powiązane problemy
- 1. Praca Hadoop prosi o wyłączenie bezpiecznego węzła
- 2. Praca Hadoop przy pobieraniu plików wejściowych z wielu katalogów
- 3. Hadoop Bezpieczeństwo
- 4. Wymazanie DFS w Hadoop
- 5. Praca trójskładnikowa w CoffeeScript
- 6. Dane transmisyjne i Hadoop? (nie Hadoop Streaming)
- 7. Ponad 120 liczników w hadoop
- 8. Hadoop w zmianie nazwy plików
- 9. Praca z ratowaniem w Railsach
- 10. Praca z jsonem w wyroczni
- 11. praca -z w systemie UNIX
- 12. Praca z datetime w Rails
- 13. Praca z bitmapą w WPF
- 14. Jaka jest różnica między job.submit i job.waitForComplete w hadoop?
- 15. Jak zabezpieczyć pracę hadoop z wdziękiem/przechwycić `hadoop job -kill`
- 16. Przesyłanie strumieniowe Hadoop do Pythona przy użyciu mongo-hadoop
- 17. Faza Shuffle trwa zbyt długo Hadoop
- 18. Błąd konfiguracji Hadoop
- 19. Wykonanie zadań spekulacyjnych Hadoop
- 20. Hadoop HADOOP_CLASSPATH issues
- 21. Jak uruchomić program Hadoop?
- 22. Dokumentacja Hadoop dla Eclipse
- 23. Zapisywanie danych do Hadoop
- 24. Hadoop i Stata
- 25. Praca z laravel tinker
- 26. Praca z plikami .ui.qml
- 27. Hadoop Hive powolne zapytania
- 28. Praca z wyciekiem SpellCheckerSession?
- 29. $ HADOOP_HOME jest przestarzałe, Hadoop
- 30. Praca z System.ComponentModel
@ Chris..Thts bardzo pomocny .. ... i czy możesz wyjaśnić, że podziały i zapisy pojawiają się w rejestratorze? Jestem zdezorientowany ... – Amnesiac
Podziały są tworzone przez InputFormat i pochodzą z plików wejściowych, które przekazujesz, niezależnie od tego, czy same pliki wejściowe są dzielalne, oraz z innych opcji, które możesz ominąć, np. Podział maksymalny/min. –
Każdy podział jest wtedy przetwarzane w celu wytworzenia zapisów, które są przekazywane do metody mapowej –