Wprowadzenie do ekosystemu Hadoop

Apache Hadoop to system typu open source do niezawodnego przechowywania i przetwarzania wielu informacji na wielu komputerach towarowych. Hadoop został po raz pierwszy napisany w gazecie i opublikowany w październiku 2013 r. Jako „System plików Google”. Doug Cutting, który wówczas pracował w Yahoo, wprowadził nazwę jako Hadoop Ecosystem w oparciu o zabawkowe imię jego syna. Jeśli weźmiemy pod uwagę główny rdzeń Apache Hadoop, to po pierwsze może wziąć pod uwagę część pamięci, która jest znana jako Hadoop Distributed File System (HDFS), a po drugie część przetwarzającą, która jest znana jako moduł Map Reduce Programming. Hadoop faktycznie dzieli jeden ogromny plik i przechowuje je w wielu węzłach w klastrze.

Koncepcja ekosystemu Hadoop

Środowisko Apache Hadoop zawiera głównie poniższe moduły:

  1. Hadoop Common: zawiera wszystkie biblioteki i narzędzia potrzebne do korzystania z modułu Hadoop.
  2. Hadoop Distributed File System (HDFS): Jest to jeden z rozproszonych systemów plików, który pomaga przechowywać ogromne dane na wielu urządzeniach lub urządzeniach. Ponadto zapewniają dużą użyteczność w przypadku przepustowości, zwykle zapewnia bardzo wysoką przepustowość w rodzaju agregatu w klastrze.
  3. Hadoop Yarn: Wprowadzono go w 2012 r. Jest on głównie wprowadzany do zarządzania zasobami w całym systemie towarowym, nawet w klastrze. W oparciu o możliwości zasobów dystrybuuje lub planuje aplikację użytkownika zgodnie z wymaganiami.
  4. Hadoop MapReduce: Pomaga głównie przetwarzać dane na dużą skalę za pomocą metodologii programowania zmniejszającej mapę.

Apache Hadoop zawsze pomaga obniżyć koszty IT pod względem przetwarzania i inteligentnego przechowywania dużych danych. Ponieważ Apache Hadoop jest oprogramowaniem typu open source, a sprzęt jest bardzo powszechnie dostępny, zawsze pomaga nam w prawidłowym obniżeniu kosztów IT.

Oprogramowanie Open Source + sprzęt towarowy = redukcja kosztów IT

Na przykład, jeśli będziemy rozważać codzienne otrzymywanie 942787 plików i katalogów, które wymagają 4077936 bloków, łącznie 5020723 bloków. Jeśli więc skonfigurujemy pojemność co najmniej 1, 46 PB, to w przypadku obsługi powyżej obciążenia rozproszony system plików użyje 1, 09 PB, co oznacza prawie 74, 85% całkowitej skonfigurowanej pojemności, podczas gdy rozważamy 178 aktywnych węzłów i 24 martwe węzły.

Ekosystem Hadoop przeznaczony głównie do przechowywania i przetwarzania dużych zbiorów danych, które zwykle mają pewne kluczowe cechy, takie jak poniżej:

  • Tom

Wolumen oznacza rozmiar danych, które faktycznie przechowywane i generowane. W zależności od wielkości danych ustalono, że zestaw danych to duże zbiory danych lub nie.

  • Różnorodność

Różnorodność oznacza naturę, strukturę i rodzaj wykorzystywanych danych.

  • Prędkość

Prędkość oznacza prędkość danych, które zostały zapisane i wygenerowane w określonym przepływie procesu programowania.

  • Prawdziwość

Veracity oznacza jakość przechwyconych danych, a także pomaga analizie danych w osiągnięciu zamierzonego celu.

HDFS jest przeznaczony głównie do przechowywania bardzo dużej ilości informacji (terabajtów lub petabajtów) na dużej liczbie komputerów w klastrze. Zawsze zachowuje pewne wspólne cechy, takie jak niezawodność danych, działa na sprzęcie towarowym, wykorzystuje bloki do przechowywania pliku lub jego części, wykorzystuje model „zapisz raz przeczytałem wiele”.

HDFS zgodnie z poniższą architekturą z koncepcją węzłów nazw i węzłów danych.

Odpowiedzialność za węzeł nazwy (główny):

- zarządza przestrzenią nazw systemu plików

- utrzymuje konfigurację klastra

- Odpowiedzialny za zarządzanie replikacją

Odpowiedzialność węzła danych (slave):

- Przechowuj dane w lokalnym systemie plików

- Okresowo zgłaszaj powrót do węzła nazwy za pomocą pulsu

Operacja zapisu HDFS:

Hadoop wykonuje poniższe kroki, aby zapisać dowolny duży plik:

  1. Utwórz plik i zaktualizuj obraz FS po otrzymaniu jednego żądania zapisu pliku od dowolnego klienta HDFS.
  2. Uzyskaj informacje o lokalizacji bloku lub szczegóły węzła danych z węzła nazwy.
  3. Napisz pakiet równolegle w poszczególnych węzłach danych.
  4. Potwierdź zakończenie lub przyjęcie zapisu pakietu i odeślij informacje do klienta Hadoop.

Rurociąg replikacji bloków HDFS:

  1. Klient pobiera listę Datanodes z Namenode, który będzie hostem repliki tego bloku
  2. Następnie klient opróżnia blok danych do pierwszego Datanode
  3. Pierwszy Datanode odbiera blok, zapisuje go i przenosi do następnego węzła danych w potoku
  4. Po napisaniu wszystkich replik Klient przechodzi do następnego bloku w pliku

Tolerancja błędów HDFS:

Jeden węzeł danych został nagle wyłączony, w takim przypadku HDFS ma możliwość automatycznego zarządzania tym scenariuszem. Po pierwsze, wszystkie węzły nazw zawsze otrzymują jedno uderzenie serca z każdego węzła danych, jeśli w jakiś sposób straci jedno uderzenie serca z jednego węzła danych, biorąc pod uwagę ten sam węzeł danych jak w dół, natychmiast podejmij działanie, aby automatycznie zreplikować wszystkie bloki pozostałych węzłów natychmiast, aby spełnić replikację czynnik.

Jeśli nazwa węzła wykryje jeden nowy węzeł danych dostępny w klastrze, natychmiast ponownie równoważy wszystkie bloki, w tym dodany węzeł danych.

Teraz jakoś utrata lub uszkodzenie węzła nazwy, w tym przypadku również węzeł zapasowy zawierający jeden obraz węzła nazwy węzła odtwarza wszystkie operacje FS natychmiast i w górę węzła nazwy zgodnie z wymaganiami. Ale w takim przypadku wymagana jest ręczna interwencja, a cały system ekosystemu Hadoop zostanie wyłączony kilka razy, aby ponownie ustawić nowy węzeł nazw. W takim przypadku węzeł nazwy może być awarią pojedynczego punktu, aby uniknąć tego scenariusza. Federacja HDFS wprowadza wiele konfiguracji węzła nazwy, a ZooKeeper może zarządzać natychmiastowym alternatywnym węzłem nazwy zgodnie z wymaganiami.

Przykłady ekosystemu Hadoop

Pełny przykład ekosystemu Hadoop można poprawnie wyjaśnić na poniższym rysunku:

Dane mogą pochodzić z dowolnego źródła, takiego jak hurtownia danych, repozytorium zarządzanych dokumentów, udziały plików, normalna baza danych RDMS lub chmura lub źródła zewnętrzne. Wszystkie te dane przyszły do ​​HDFS w sposób strukturalny, niestrukturalny lub częściowo ustrukturyzowany. HDFS przechowuje wszystkie te dane w sposób rozproszony, co oznacza bardzo inteligentne przechowywanie w rozproszonym systemie towarowym.

Wniosek

Ekosystem Hadoop przeznaczony głównie do przechowywania i przetwarzania ogromnych danych, które powinny były przedstawiać jeden z dwóch czynników między wielkością, prędkością i różnorodnością. Przechowuje dane w rozproszonym systemie przetwarzania, który działa na sprzęcie towarowym. Biorąc pod uwagę pełny proces ekosystemu Hadoop, HDFS rozdziela bloki danych, a Map Reduce zapewnia strukturę programowania do odczytu danych z pliku przechowywanego w HDFS.

Polecane artykuły:

To był przewodnik po ekosystemie Hadoop. Omówiliśmy podstawową koncepcję ekosystemu Hadoop, jego architekturę, operacje HDFS, przykłady, odporność na awarie HDFS itp. Aby dowiedzieć się więcej, możesz także zapoznać się z następującymi artykułami -

  1. Zastosowania Hadoop w prawdziwym świecie
  2. Hadoop vs Splunk
  3. Kariera w Hadoop
  4. Wydajność Hadoop vs SQL

Kategoria: