Ekosystem i komponenty Hadoop: kompleksowy samouczek 2022

Opublikowany: 2021-01-04

Hadoop to platforma typu open source używana do procesów big data. Jest ogromny i ma wiele składników. Każdy z tych komponentów wykonuje określony zestaw zadań związanych z Big Data. Ogromna kolekcja rozwiązań Hadoop sprawiła, że ​​stał się podstawą w branży. A jeśli chcesz zostać ekspertem od big data, musisz zapoznać się ze wszystkimi jego komponentami.

Nie martw się jednak, ponieważ w tym artykule przyjrzymy się wszystkim tym komponentom:

Spis treści

Jakie są podstawowe składniki Hadoop?

Podstawowe komponenty platformy Hadoop regulują jego działanie i czy musisz się o nich dowiedzieć przed użyciem innych sekcji jego ekosystemu. Ekosystem Hadoopa jest rozległy i wypełniony wieloma narzędziami. Inną nazwą jego podstawowych komponentów są moduły. Są to przede wszystkim następujące

Podstawowe składniki Hadoop:

1. HDFS

Pełna forma HDFS to rozproszony system plików Hadoop. Jest to najbardziej krytyczny składnik Hadoop, ponieważ dotyczy przechowywania danych. HDFS umożliwia przechowywanie danych w sieci rozproszonych urządzeń pamięci masowej. Ma swój zestaw narzędzi, które pozwalają odczytać te zapisane dane i odpowiednio je przeanalizować. HDFS umożliwia akwizycję danych niezależnie od systemu operacyjnego komputera. Przeczytaj więcej o HDFS i jego architekturze.

Ponieważ nie musisz się martwić o system operacyjny, możesz pracować z wyższą produktywnością, ponieważ nie musisz modyfikować systemu za każdym razem, gdy napotkasz nowy system operacyjny. HDFS składa się z następujących komponentów:

  • NazwaNode
  • Węzeł danych
  • Drugorzędna nazwaNode

Nazwa węzła jest również nazywana „Master” w HDFS. Przechowuje metadane węzłów podrzędnych, aby śledzić przechowywanie danych. Informuje, co i gdzie jest przechowywane. Węzeł główny monitoruje również stan węzłów podrzędnych. Może również przypisywać zadania do węzłów danych. Węzły danych przechowują dane. Węzły danych są również nazywane w HDFS jako „Slave”.

Węzły podrzędne odpowiadają na żądanie węzła nadrzędnego dotyczące stanu zdrowia i informują go o swojej sytuacji. W przypadku, gdy węzeł podrzędny nie odpowiada na żądanie stanu kondycji węzła głównego, węzeł główny zgłosi jego śmierć i przydzieli swoje zadanie innemu węzłowi danych.

Oprócz węzła nazwy i węzłów podrzędnych jest jeszcze trzeci, Secondary Name Node. Jest buforem węzła głównego. Aktualizuje dane do obrazu FinalFS, gdy węzeł główny nie jest aktywny.

2. MapaReduce

MapReduce to drugi główny składnik Hadoop, który może wykonywać dwa zadania: Mapowanie i Redukcja. Mapreduce to jedno z najlepszych narzędzi Hadoop, które może ułatwić podróż do Big Data. Mapowanie polega na odczytaniu danych znajdujących się w bazie danych i przeniesieniu ich do bardziej przystępnego i funkcjonalnego formatu. Mapowanie umożliwia systemowi wykorzystanie danych do analizy poprzez zmianę ich formy. Potem przychodzi Redukcja, która jest funkcją matematyczną. Redukuje zmapowane dane do zestawu zdefiniowanych danych w celu lepszej analizy.

Analizuje pary klucz i wartość i redukuje je do krotek pod kątem funkcjonalności. MapReduce pomaga w wielu zadaniach w Hadoop, takich jak sortowanie i filtrowanie danych. Jego dwa składniki współpracują ze sobą i pomagają w przygotowaniu danych. MapReduce obsługuje również monitorowanie i planowanie zadań.

Działa jako węzeł komputerowy ekosystemu Hadoop. Głównie MapReduce zajmuje się rozbiciem zadania big data na grupę małych zadań. Możesz wydajnie uruchamiać zadania MapReduce, ponieważ możesz korzystać z różnych języków programowania. Pozwala używać Pythona, C++, a nawet Javy do pisania swoich aplikacji. Jest szybki i skalowalny, dlatego jest ważnym elementem ekosystemu Hadoop.

3. PRZĘDZA

YARN to skrót od Yet Another Resource Negotiator. Obsługuje zarządzanie zasobami w Hadoop. Zarządzanie zasobami to również kluczowe zadanie. Dlatego YARN jest jednym z podstawowych komponentów Hadoop. Monitoruje i zarządza obciążeniami w Hadoop. YARN jest wysoce skalowalny i zwinny. Oferuje zaawansowane rozwiązania w zakresie wykorzystania klastrów, co jest kolejną istotną zaletą. Dowiedz się więcej o architekturze Hadoop YARN.

YARN składa się z wielu komponentów; najważniejszy z nich to Menedżer Zasobów. Menedżer zasobów zapewnia elastyczne i ogólne struktury do obsługi zasobów w klastrze Hadoop. Inna nazwa menedżera zasobów to Master. Menedżer węzłów jest kolejnym ważnym elementem YARN.

Monitoruje stan menedżera aplikacji i kontenera w YARN. Całe przetwarzanie danych odbywa się w kontenerze, a menedżer aplikacji zarządza tym procesem, jeśli kontener wymaga więcej zasobów do wykonania zadań przetwarzania danych, menedżer aplikacji żąda tego od menedżera zasobów.

4. Hadoop wspólne

Apache dodał wiele bibliotek i narzędzi do ekosystemu Hadoop, z których można korzystać z różnymi modułami. Hadoop Common umożliwia komputerowi dołączenie do sieci Hadoop bez problemów ze zgodnością systemu operacyjnego lub sprzętem. Ten komponent wykorzystuje narzędzia Java, aby umożliwić platformie przechowywanie danych w wymaganym systemie.

Otrzymuje nazwę Hadoop Common, ponieważ zapewnia systemowi standardową funkcjonalność.

Składniki Hadoop zgodnie z rolą

Teraz, gdy przyjrzeliśmy się podstawowym komponentom Hadoop, zacznijmy omawiać jego pozostałe części. Jak wspomnieliśmy wcześniej, Hadoop ma ogromną kolekcję narzędzi, więc podzieliliśmy je według ich ról w ekosystemie Hadoop. Zacznijmy:

Przechowywanie danych

dozorca zoo

Zookeeper pomaga zarządzać konwencjami nazewnictwa, konfiguracją, synchronizacją i innymi informacjami w klastrach Hadoop. Jest to scentralizowany serwer ekosystemu typu open source.

HKatalog

HCatalog przechowuje dane w formacie binarnym i obsługuje zarządzanie tabelami w Hadoop. Umożliwia użytkownikom korzystanie z danych przechowywanych w HIVE, dzięki czemu mogą używać narzędzi do przetwarzania danych do swoich zadań. Umożliwia przeprowadzanie uwierzytelniania w oparciu o Kerberos oraz pomaga w tłumaczeniu i interpretacji danych.

HDFS

Omówiliśmy już HDFS. HDFS to skrót od Hadoop Distributed File System i obsługuje przechowywanie danych w Hadoop. Obsługuje skalowalność poziomą i pionową. Jest odporny na błędy i ma współczynnik replikacji, który przechowuje kopie danych na wypadek ich utraty z powodu jakiegoś błędu.

Silnik wykonawczy

Iskra

Używałbyś Sparka do przetwarzania mikrowsadowego w Hadoop. Może wykonywać ETL i strumieniowanie danych w czasie rzeczywistym. Jest bardzo zwinny, ponieważ może obsługiwać 80 operatorów wysokiego poziomu. Jest to framework do przetwarzania klastrów. Dowiedz się więcej o aplikacjach Apache Spark.

MapaReduce

Ten niezależny od języka moduł umożliwia przekształcanie złożonych danych w dane użyteczne do analizy. Wykonuje mapowanie i redukowanie danych, dzięki czemu można na nich wykonywać różne operacje, w tym sortowanie i filtrowanie tych samych. Pozwala również na lokalne przetwarzanie danych.

Tez

Tez umożliwia jednoczesne wykonywanie wielu zadań MapReduce. Jest to struktura przetwarzania danych, która pomaga w przetwarzaniu danych i przetwarzaniu wsadowym. Może zaplanować rekonfigurację i pomóc w podjęciu skutecznych decyzji dotyczących przepływu danych. Jest idealny do zarządzania zasobami.

Zarządzania bazami danych

Impala

Używałbyś Impali w klastrach Hadoop. Może dołączyć do metasklepu Hive i udostępniać mu wymagane informacje. Interfejs SQL jest łatwy do nauczenia i można bez większego wysiłku wysyłać zapytania do dużych zbiorów danych.

Ul

Twórcą tego komponentu Hadoop jest Facebook. Wykorzystuje HiveQL, który jest dość podobny do SQL i umożliwia przeprowadzanie analiz danych, podsumowań, zapytań. Dzięki indeksowaniu Hive przyspiesza wykonywanie zapytań o dane.

HBase

HBase używa HDFS do przechowywania danych. Jest to baza danych skoncentrowana na kolumnach. Umożliwia bazom danych NoSQL tworzenie ogromnych tabel, które mogą mieć setki tysięcy (a nawet miliony) kolumn i wierszy. Należy używać HBase, jeśli potrzebujesz dostępu do odczytu lub zapisu do zestawów danych. Facebook wykorzystuje HBase do obsługi swojej platformy wiadomości.

Wiertło Apache

Apache Drill umożliwia łączenie wielu zestawów danych. Może obsługiwać różne bazy danych NoSQL, dlatego jest całkiem przydatny. Ma wysoką skalowalność i może z łatwością pomóc wielu użytkownikom. Pozwala z łatwością wykonywać wszystkie zadania analityczne podobne do SQL. Posiada również rozwiązania do uwierzytelniania w celu utrzymania pełnego bezpieczeństwa w systemie.

Abstrakcja

Apache Sqoop

Możesz użyć Apache Sqoop do importowania danych ze źródeł zewnętrznych do magazynu danych Hadoop, takiego jak HDFS lub HBase. Możesz go używać do eksportowania danych z magazynu danych Hadoop do zewnętrznych magazynów danych. Zdolność Sqoop do równoległego przesyłania danych zmniejsza nadmierne obciążenie zasobów i umożliwia importowanie lub eksportowanie danych z wysoką wydajnością. Możesz również użyć Sqoopa do kopiowania danych.

Świnia Apaczów

Opracowany przez Yahoo, Apache Pig pomaga w analizie dużych zbiorów danych. Używa swojego języka, Pig Latin, do płynnego i wydajnego wykonywania wymaganych zadań. Możesz zrównoleglać strukturę programów Pig, jeśli potrzebujesz obsłużyć ogromne zbiory danych, co czyni Pig doskonałym rozwiązaniem do analizy danych. Skorzystaj z naszego samouczka dotyczącego świni Apache, aby dowiedzieć się więcej.

Strumieniowe przesyłanie danych

Flume

Flume umożliwia gromadzenie ogromnych ilości danych. Jest to rozwiązanie do zbierania danych, które przesyła zebrane dane do HDFS. Ma trzy sekcje, którymi są kanały, źródła i wreszcie umywalki. Flume ma agentów, którzy obsługują przepływ danych. Dane obecne w tym przepływie nazywane są zdarzeniami. Twitter używa Flume do przesyłania strumieniowego swoich tweetów.

Kafka

Apache Kafka to trwałe, szybkie i skalowalne rozwiązanie do rozproszonego przesyłania wiadomości publicznych. LinkedIn stoi za rozwojem tego potężnego narzędzia. Utrzymuje duże kanały wiadomości w ramach tematu. Wiele przedsiębiorstw używa Kafki do strumieniowego przesyłania danych. MailChimp, Airbnb, Spotify i FourSquare to niektórzy z wybitnych użytkowników tego potężnego narzędzia.

Dowiedz się więcej – Komponenty Hadoop

W tym przewodniku staraliśmy się pokrótce omówić każdy składnik Hadoop, aby dokładnie go zaznajomić. Jeśli chcesz dowiedzieć się więcej o komponentach Hadoop i ich architekturze, proponujemy zajrzeć na nasz blog, który jest pełen przydatnych artykułów poświęconych analizie danych.

Jeśli chcesz dowiedzieć się więcej o Big Data, sprawdź nasz program PG Diploma in Software Development Specialization in Big Data, który jest przeznaczony dla pracujących profesjonalistów i zawiera ponad 7 studiów przypadków i projektów, obejmuje 14 języków programowania i narzędzi, praktyczne praktyczne warsztaty, ponad 400 godzin rygorystycznej pomocy w nauce i pośrednictwie pracy w najlepszych firmach.

Ucz się kursów rozwoju oprogramowania online z najlepszych światowych uniwersytetów. Zdobywaj programy Executive PG, Advanced Certificate Programs lub Masters Programs, aby przyspieszyć swoją karierę.

Opanuj technologię przyszłości — Big Data

7 studiów przypadku i projektów. Pomoc w pracy z najlepszymi firmami. Dedykowany mentor studencki.
Zaawansowany program certyfikacji w Big Data z IIIT Bangalore