Jakie są zalety frameworka Hadoop 2.0 (YARN)?

Autor: Roger Morrison
Data Utworzenia: 18 Wrzesień 2021
Data Aktualizacji: 1 Lipiec 2024
Anonim
Spotkanie 76: Marek Stój - Big Data: Should you care?
Wideo: Spotkanie 76: Marek Stój - Big Data: Should you care?

Zawartość


Źródło: Jim Hughes / Dreamstime.com

Na wynos:

YARN to znacząca poprawa w stosunku do frameworka Hadoop 1.0. Tutaj analizujemy niektóre zalety, jakie ma w porównaniu do swojego poprzednika.

Od czasu wprowadzenia koncepcji dużych zbiorów danych przechodzi ona przez wiele faz ewolucji. Hadoop został wprowadzony w 2005 r. Z kilkoma początkowymi funkcjami, takimi jak silnik przetwarzania MapReduce, który pozwalał na przetwarzanie danych na dużą skalę rozproszone w klastrach. Sam Hadoop doświadczył wielu zmian i opracował zaawansowane ramy i metody.

YARN jest podstawowym składnikiem Hadoop 2.0. Zasadniczo zarządza zasobami w środowisku klastrowym. Broker YARN współdziała z zasobami obliczeniowymi (w imieniu aplikacji) i przydziela zasoby do każdej aplikacji na podstawie różnych kryteriów filtrowania.

W tym artykule przyjrzymy się najważniejszym zaletom YARN w stosunku do Hadoop 1.0.

Co to jest platforma YARN?

Yet ZAnother Rźródło N.egotiator jest podstawowym składnikiem Hadoop 2.0, który zarządza zasobami w środowisku klastrowym. Platforma Hadoop YARN to zaawansowana wersja Hadoop 1.0, która zapewnia lepszą wydajność, co jest korzystne dla ekosystemu Hadoop i całej gamy technologii z nim związanych. Teraz, gdy jesteśmy trochę bardziej zaznajomieni z YARN, przyjrzyjmy się bliżej Hadoop 1.0 i YARN.


Ograniczenia platformy Hadoop 1.0

Aby zrozumieć zalety frameworku YARN, bardzo ważne jest, aby zrozumieć, jak działa Hadoop 1.0 i jakie są ograniczenia tego frameworka.

W tym miejscu pojawia się rola JobTracker. Zarządza on zarówno zasobami klastra, jak i determinuje wykonanie zadania MapReduce. W skrócie, JobTracker planuje i rezerwuje przedziały zadań oraz konfiguruje i monitoruje każde uruchomione zadanie. Jeśli zadanie się nie powiedzie, przydziela ono nowe miejsce do ponownego uruchomienia. Po zakończeniu zadania JobTracker zwalnia miejsce na inne zadania i czyści zasoby tymczasowe.

Główne wady powyższego podejścia:

  • Dostępność - JobTracker jest jedynym punktem dostępności w Hadoop 1.0. Oznacza to, że jeśli JobTracker zawiedzie, wszystkie zadania zostaną ponownie uruchomione domyślnie.
  • Ograniczona skalowalność - ponieważ JobTracker wykonuje wiele zadań i działa na jednym komputerze, pozostałe dostępne komputery nie są używane; stąd skutkuje ograniczoną skalowalnością.
  • Wykorzystanie zasobów - w powyższym podejściu przedziały na mapy i przedziały zmniejszone są wstępnie zdefiniowane. Może się zdarzyć, że jedno z gniazd jest pełne, ale pozostałe są puste. Ponieważ puste miejsca są zarezerwowane, będą one pozostawać bezczynne zamiast kompromisu dla pełnych miejsc. Może to powodować problem z wykorzystaniem zasobów.
  • Uruchamianie aplikacji innych niż MapReduce - JobTracker to aplikacja stworzona dla środowiska MapReduce. Problem pojawia się, gdy aplikacja inna niż MapReduce próbuje uruchomić się w tym środowisku. Aplikacja musi być zgodna z programowaniem ramowym MapReduce, aby działać poprawnie. Niektóre z typowych problemów z tym związanych obejmują problemy z:
    • Zapytanie ad hoc
    • Analiza w czasie rzeczywistym
    • podejście przelotowe
  • Niepowodzenie w kaskadowaniu - jeden z głównych problemów w tej strukturze występuje, gdy liczba węzłów jest większa niż 4000. W takim scenariuszu występuje kaskadowa awaria, która powoduje pogorszenie całego klastra.

Oto niektóre z głównych ograniczeń, jakie napotykasz podczas pracy z tymi ramami. Istnieją również inne drobne ograniczenia, o których nie wspomniano. Ramy YARN zostały wprowadzone w celu przezwyciężenia tych ograniczeń.


Bez błędów, bez stresu - Twój przewodnik krok po kroku do tworzenia oprogramowania zmieniającego życie bez niszczenia życia

Nie możesz poprawić swoich umiejętności programistycznych, gdy nikt nie dba o jakość oprogramowania.

YARN Framework i jego zalety

Struktura YARN, wprowadzona w Hadoop 2.0, ma na celu podział obowiązków MapReduce i zarządzanie zadaniami zarządzania klastrami. Umożliwia to MapReduce wykonywanie tylko przetwarzania danych, a tym samym usprawnienie procesu.

YARN wprowadza koncepcję centralnego zarządzania zasobami. Pozwala to na uruchamianie wielu aplikacji w Hadoop, dzieląc wspólne zarządzanie zasobami.

Niektóre z głównych składników frameworku YARN to:

  • ResourceManager - składnik ResourceManager jest negocjatorem w klastrze dla wszystkich zasobów obecnych w tym klastrze. Ponadto ten komponent jest klasyfikowany jako menedżer aplikacji, który jest odpowiedzialny za zarządzanie zadaniami użytkowników. Od Hadoop 2.0 każde zadanie MapReduce będzie uważane za aplikację.
  • ApplicationMaster - ten składnik jest miejscem, w którym istnieje zadanie lub aplikacja. Zarządza także wszystkimi zadaniami MapReduce i zostaje zakończony po zakończeniu przetwarzania zadania.
  • NodeManager - komponent menedżera węzłów działa jako serwer dla historii zadań. Odpowiada za zabezpieczenie informacji o ukończonych zadaniach. Śledzi także zadania użytkowników wraz z ich przepływem pracy dla określonego węzła.

Pamiętając, że platforma YARN ma różne komponenty do zarządzania różnymi zadaniami, zobaczmy, jak przeciwdziała ograniczeniom Hadoop 1.0.

  • Lepsze wykorzystanie zasobów - platforma YARN nie ma żadnych ustalonych miejsc dla zadań. Zapewnia centralny menedżer zasobów, który umożliwia współużytkowanie wielu aplikacji za pośrednictwem wspólnego zasobu.
  • Uruchamianie aplikacji innych niż MapReduce - w YARN funkcje planowania i zarządzania zasobami są oddzielone od komponentu przetwarzania danych. Dzięki temu Hadoop może uruchamiać różne typy aplikacji, które nie są zgodne z programowaniem frameworka Hadoop. Klastry Hadoop są teraz w stanie uruchamiać niezależne interaktywne zapytania i przeprowadzać lepszą analizę w czasie rzeczywistym.
  • Kompatybilność wsteczna - YARN jest strukturą kompatybilną wstecz, co oznacza, że ​​każde istniejące zadanie MapReduce można wykonać w Hadoop 2.0.
  • JobTracker już nie istnieje - Dwie główne role JobTracker to zarządzanie zasobami i planowanie zadań. Po wprowadzeniu frameworku YARN są one teraz podzielone na dwa osobne komponenty, a mianowicie:
    • NodeManager
    • ResourceManager

Wniosek

Wprowadzenie frameworku YARN ułatwiło tworzenie aplikacji dla programistów Hadoop. Teraz aplikacje nie muszą już być implementowane za pomocą narzędzi innych firm. YARN to ogromna zmiana, która pozwoli użytkownikom rozważyć Hadoop 2.0 do tworzenia aplikacji i bardziej efektywnego manipulowania danymi. Z czasem pojawią się dalsze udoskonalenia zwiększające użyteczność Hadoop. Na razie platforma YARN będzie odgrywać kluczową rolę w rozwiązywaniu istniejących problemów i tworzeniu bezproblemowego środowiska, które jest bardziej wszechstronne niż wcześniejsza wersja modelu MapReduce.