Co to jest MapReduce w Hadoop? Duże dane Architektura
Co to jest MapReduce w Hadoop?
MapaReduce to framework oprogramowania i model programowania używany do przetwarzania ogromnych ilości danych. MapaReduce Praca programowa składa się z dwóch faz: Mapowania i Redukcji. Zadania związane z mapowaniem dotyczą podziału i mapowania.ping danych, podczas gdy zadania Reduce przestawiają i redukują dane.
Hadoop może uruchamiać programy MapReduce napisane w różnych językach: Java, Rubin, Python, C++Programy Map Reduce w chmurze obliczeniowej mają charakter równoległy, dlatego są bardzo przydatne do przeprowadzania analiz danych na dużą skalę przy użyciu wielu maszyn w klastrze.
Wejście do każdej fazy jest kluczowa wartość pary. Dodatkowo każdy programista musi określić dwie funkcje: funkcja mapy oraz zmniejszyć funkcję.
MapaReduce Architecture w Big Data wyjaśniona na przykładzie
Cały proces przebiega przez cztery fazy wykonania, mianowicie: podział, mapowanieping, tasowania i redukcji.
Teraz w tym samouczku MapReduce wyjaśnijmy to na przykładzie MapReduce–
Załóżmy, że masz następujące dane wejściowe dla swojego MapReduce w Program Big Data
Welcome to Hadoop Class Hadoop is good Hadoop is bad

Ostatecznym wynikiem zadania MapReduce jest
| zły | 1 |
| Klasa | 1 |
| dobry | 1 |
| Hadoop | 3 |
| is | 2 |
| do | 1 |
| Witaj | 1 |
Dane przechodzą przez następujące fazy MapReduce w Big Data
Podziały wejściowe:
Dane wejściowe zadania MapReduce w Big Data są dzielone na części o stałym rozmiarze, tzw podziały wejściowe Podział danych wejściowych to fragment danych wejściowych zużywany przez pojedynczą mapę
Mapaping
To pierwsza faza wykonywania programu map-reduce. W tej fazie dane z każdego podziału są przekazywane do mapy.ping funkcja do generowania wartości wyjściowych. W naszym przykładzie zadanie mapowaniaping faza polega na zliczeniu liczby wystąpień każdego słowa z podziałów wejściowych (więcej szczegółów na temat podziału wejściowego podano poniżej) i przygotowaniu listy w formie
Szuranie
Ta faza zużywa dane wyjściowe Mapyping Faza. Jej zadaniem jest konsolidacja odpowiednich rekordów z Mapyping wyjście fazowe. W naszym przykładzie te same słowa są łączone razem wraz z odpowiadającymi im częstotliwościami.
Redukcja
W tej fazie wartości wyjściowe z fazy Shuffling są agregowane. Ta faza łączy wartości z fazy Shuffling i zwraca pojedynczą wartość wyjściową. Krótko mówiąc, ta faza podsumowuje cały zestaw danych.
W naszym przykładzie ta faza agreguje wartości z fazy Tasowania, tj. oblicza całkowitą liczbę wystąpień każdego słowa.
MapaReduce Archiszczegółowo wyjaśniona struktura
- Dla każdego podziału tworzone jest jedno zadanie mapy, które następnie wykonuje funkcję mapy dla każdego rekordu w podziale.
- Zawsze korzystne jest posiadanie wielu podziałów, ponieważ czas potrzebny na przetworzenie podziału jest krótki w porównaniu z czasem potrzebnym na przetworzenie całego wejścia. Gdy podziały są mniejsze, lepiej jest równoważyć obciążenie przetwarzania, ponieważ przetwarzamy podziały równolegle.
- Jednakże nie jest pożądane, aby podziały były zbyt małe. Kiedy podziały są zbyt małe, przeciążenie związane z zarządzaniem podziałami i tworzeniem zadań mapowych zaczyna dominować nad całkowitym czasem wykonania zadania.
- W przypadku większości zadań lepiej jest podzielić rozmiar równy rozmiarowi bloku HDFS (który domyślnie wynosi 64 MB).
- Wykonanie zadań mapowania skutkuje zapisem danych wyjściowych na dysk lokalny odpowiedniego węzła, a nie do HDFS.
- Powodem wyboru dysku lokalnego zamiast HDFS jest chęć uniknięcia replikacji, która ma miejsce w przypadku operacji przechowywania HDFS.
- Wynik mapy to wynik pośredni, który jest przetwarzany przez zadania redukcji w celu uzyskania końcowego wyniku.
- Po zakończeniu zadania wynik mapy można wyrzucić. Dlatego przechowywanie go w HDFS z replikacją staje się przesadą.
- W przypadku awarii węzła, zanim dane wyjściowe mapy zostaną wykorzystane przez zadanie zmniejszania, Hadoop ponownie uruchamia zadanie mapy w innym węźle i ponownie tworzy wynik mapy.
- Zadanie Redukuj nie działa w przypadku koncepcji lokalizacji danych. Dane wyjściowe każdego zadania mapy są przekazywane do zadania zmniejszania. Dane wyjściowe mapy są przesyłane do komputera, na którym uruchomione jest zadanie redukcji.
- Na tym komputerze dane wyjściowe są łączone, a następnie przekazywane do funkcji zmniejszania zdefiniowanej przez użytkownika.
- W przeciwieństwie do danych wyjściowych mapy, dane wyjściowe zmniejszenia są przechowywane w HDFS (pierwsza replika jest przechowywana w węźle lokalnym, a pozostałe repliki są przechowywane w węzłach poza szafą). Zatem zapisanie wyniku zmniejszenia
Jak MapReduce organizuje pracę?
W tym samouczku MapReduce dowiemy się, jak działa MapReduce
Hadoop dzieli pracę na zadania. Istnieją dwa rodzaje zadań:
- Zadania mapy (Podziały i mapaping)
- Zmniejsz zadania (Tasowanie, redukcja)
jak wspomniano powyżej.
Cały proces wykonawczy (wykonanie zadań Map i Redukcja) jest kontrolowany przez dwa typy podmiotów zwanych a
- Pracatracker: Działa jak mistrz (odpowiedzialny za pełną realizację przesłanego zadania)
- Wiele zadań Trackers: Zachowuje się jak niewolnicy, każdy z nich wykonuje swoją pracę
Na każde zadanie zgłoszone do realizacji w systemie przypada jedno Pracatracker na którym się znajduje Węzeł nazwy i tu są wiele zadańtrackers na których się znajdują Węzeł danych.

- Zadanie jest dzielone na wiele zadań, które są następnie uruchamiane na wielu węzłach danych w klastrze.
- To jest odpowiedzialność pracy tracker koordynuje działania poprzez planowanie zadań do wykonania na różnych węzłach danych.
- Wykonywanie poszczególnych zadań należy następnie wykonywać według zadań tracker, który znajduje się w każdym węźle danych wykonującym część zadania.
- Zadanie tracobowiązkiem kera jest wysłanie raportu postępu do pracy tracker.
- Ponadto zadanie tracker okresowo wysyła 'bicie serca' sygnał do pracytracker, aby powiadomić go o aktualnym stanie systemu.
- Tak więc praca tracker utrzymuje track ogólnego postępu każdego zadania. W przypadku niepowodzenia zadania, zadanie tracker może przełożyć to na inne zadanie tracker.
