![What is MapReduce?](https://i.ytimg.com/vi/43fqzaSH0CQ/hqdefault.jpg)
Zawartość
- Definicja - Co oznacza MapReduce?
- Wprowadzenie do Microsoft Azure i Microsoft Cloud | W tym przewodniku dowiesz się, na czym polega przetwarzanie w chmurze i jak Microsoft Azure może pomóc w migracji i prowadzeniu firmy z chmury.
- Techopedia wyjaśnia MapReduce
Definicja - Co oznacza MapReduce?
MapReduce to model programowania wprowadzony przez Google do przetwarzania i generowania dużych zestawów danych w klastrach komputerów.
Google najpierw sformułował strukturę w celu obsługi indeksowania stron internetowych Google, a nowa struktura zastąpiła wcześniejsze algorytmy indeksowania. Początkujący programiści uważają, że środowisko MapReduce jest korzystne, ponieważ procedury biblioteczne można wykorzystać do tworzenia programów równoległych bez obaw o komunikację wewnątrz klastrów, monitorowanie zadań lub procesy obsługi awarii.
MapReduce działa na dużym klastrze maszyn towarowych i jest wysoce skalowalny. Ma kilka form implementacji zapewnianych przez wiele języków programowania, takich jak Java, C # i C ++.
Wprowadzenie do Microsoft Azure i Microsoft Cloud | W tym przewodniku dowiesz się, na czym polega przetwarzanie w chmurze i jak Microsoft Azure może pomóc w migracji i prowadzeniu firmy z chmury.
Techopedia wyjaśnia MapReduce
Struktura MapReduce składa się z dwóch części:
- Funkcja o nazwie „Mapa”, która umożliwia różnym punktom rozproszonego klastra rozpowszechnianie ich pracy
- Funkcja o nazwie „Zmniejsz”, która została zaprojektowana w celu zredukowania ostatecznej postaci wyników klastrów do jednego wyniku
Główną zaletą struktury MapReduce jest jej odporność na awarie, w której oczekuje się okresowych raportów z każdego węzła w klastrze po zakończeniu pracy.
Zadanie jest przenoszone z jednego węzła do drugiego. Jeśli węzeł główny zauważy, że węzeł milczy przez dłuższy czas niż oczekiwano, węzeł główny wykonuje proces ponownego przypisania do zamrożonego / opóźnionego zadania.
Framework MapReduce jest inspirowany funkcjami „Map” i „Reduce” wykorzystywanymi w programowaniu funkcjonalnym. Przetwarzanie obliczeniowe zachodzi na danych przechowywanych w systemie plików lub w bazie danych, która pobiera zestaw wartości klucza wejściowego i tworzy zestaw wartości klucza wyjściowego.
Każdego dnia wiele programów MapReduce i zadań MapReduce są wykonywane w klastrach Googles. Programy są automatycznie równoległe i wykonywane na dużym klastrze maszyn towarowych. System wykonawczy zajmuje się partycjonowaniem danych wejściowych, planowaniem wykonywania programów na zestawie maszyn, obsługą awarii maszyn i zarządzaniem wymaganą komunikacją między urządzeniami. Programiści bez doświadczenia w pracy z systemami równoległymi i rozproszonymi mogą z łatwością korzystać z zasobów dużego systemu rozproszonego.
MapReduce jest wykorzystywany w rozproszonym grep, sortowaniu rozproszonym, odwróceniu linków do wykresów, statystykach dziennika dostępu do sieci, grupowaniu dokumentów, uczeniu maszynowym i statystycznym tłumaczeniu maszynowym.