Główny cel tego Hadoop Tutorial ma opisać każdy aspekt Apache Hadoop Framework. Zasadniczo ten samouczek został zaprojektowany w taki sposób, aby można było łatwo nauczyć się Hadoop od podstaw.
W tym artykule zrobimy co w naszej mocy, aby odpowiedzieć na pytania, takie jak:czym jest Hadoop Big Data, Jaka jest potrzeba Hadoop, jaka jest historia Hadoop i wreszcie zalety i wady frameworka Apache Hadoop.
Mamy nadzieję, że po przeczytaniu tego artykułu dobrze zrozumiesz, czym jest Hadoop Framework.
Co to jest Hadoop?
Jest to platforma oprogramowania typu open source do rozproszonego przechowywania i przetwarzania ogromnych ilości zestawów danych. Open source oznacza, że jest dostępny bezpłatnie, a nawet możemy zmienić jego kod źródłowy zgodnie z Twoimi wymaganiami.
Umożliwia również uruchamianie aplikacji w systemie z tysiącami węzłów. Jego rozproszony system plików zapewnia szybkie szybkości przesyłania danych między węzłami. Pozwala również systemowi na kontynuowanie działania w przypadku awarii węzła.
Hadoop zapewnia-
- Warstwa pamięci – HDFS
- Silnik przetwarzania wsadowego – MapReduce
- Warstwa zarządzania zasobami — Przędza
Hadoop – Historia
W 2003 roku Google uruchamia projekt Nutch do obsługi miliardów wyszukiwań. Również do indeksowania milionów stron internetowych. W październiku 2003 r. Google opublikował GFS (Google File System), z którego pochodzi Hadoop.
W 2004 roku Google wydaje papier z MapReduce . A w 2005 Nutch używał GFS i MapReduce do wykonywania operacji.
W 2006 r. informatycy Doug Cutting i Mike Cafarella stworzył Hadoopa. W lutym 2006 Doug Cutting dołączył do Yahoo . Zapewniło to zasoby i oddany zespół do przekształcenia Hadoop w system działający w skali internetowej. W 2007 roku Yahoo zaczęło używać Hadoop w klastrze 100 węzłów.
W styczniu 2008 roku Hadoop zrealizował swój własny projekt na najwyższym poziomie w Apache, potwierdzając swój sukces. Wiele innych firm korzystało z Hadoop oprócz Yahoo!, takich jak New York Times i Facebook.
W kwietniu 2008 r. Hadoop pobił światowy rekord, stając się najszybszym systemem do sortowania terabajta danych. Działa na klastrze 910 węzłów, posortował jeden terabajt w 209 sekund.
W grudniu 2011 Apache Hadoop wydał wersję 1.0. W sierpniu 2013 była dostępna wersja 2.0.6. Później, w czerwcu 2017, Apache Hadoop 3.0.0-alpha4 jest dostępny. ASF (Apache Software Foundation) zarządza i utrzymuje strukturę i ekosystem technologii Hadoop.
Dlaczego Hadoop?
Jak nauczyliśmy się Wstępu, teraz dowiemy się, jaka jest potrzeba Hadoop?
Pojawił się jako rozwiązanie dla „Big Data ” problemy-
a. Przechowywanie Big Data – HDFS rozwiązał ten problem. Przechowuje Big Data w sposób rozproszony. HDFS przechowuje również każdy plik jako bloki. Blok to najmniejsza jednostka danych w systemie plików.
Załóżmy, że masz 512 MB danych. Skonfigurowałeś HDFS tak, że utworzy 128 MB bloków danych. Więc HDFS dzieli dane na 4 bloki (512/128=4) i przechowuje je w różnych DataNodes. Replikuje również bloki danych w różnych węzłach danych.
Dlatego przechowywanie dużych zbiorów danych nie jest wyzwaniem.
b. Skalowalność – Rozwiązuje również problem skalowania. Koncentruje się głównie na skalowaniu poziomym, a nie pionowym. W razie potrzeby możesz dodać dodatkowe węzły danych do klastra HDFS. Zamiast zwiększać zasoby swoich węzłów danych.
W związku z tym radykalnie poprawia wydajność.
c. Przechowywanie różnorodnych danych – HDFS rozwiązał ten problem. HDFS może przechowywać wszelkiego rodzaju dane (ustrukturyzowane, częściowo ustrukturyzowane lub nieustrukturyzowane). Wynika również z tego, że napisz raz i przeczytaj wiele modeli .
Dzięki temu możesz zapisać dowolny rodzaj danych raz i możesz je czytać wiele razy, aby znaleźć spostrzeżenia.
d. Szybkość przetwarzania danych – To jest główny problem big data. Aby rozwiązać ten problem, przenieś obliczenia do danych zamiast danych do obliczeń. Ta zasada to Lokalizacja danych .
Podstawowe składniki usługi Hadoop
Teraz szczegółowo poznamy główny komponent Apache Hadoop. Ma 3 podstawowe komponenty-
- HDFS
- MapReduce
- YARN (kolejny negocjator zasobów)
Omówmy te podstawowe komponenty jeden po drugim.
a. HDFS
Rozproszony system plików Hadoop (HDFS) to podstawowy system pamięci masowej Hadoop. HDFS przechowuje bardzo duże pliki działające na klastrze zwykłego sprzętu. Kieruje się zasadą przechowywania mniejszej liczby dużych plików niż ogromnej liczby małych plików.
Przechowuje dane niezawodnie nawet w przypadku awarii sprzętu. Zapewnia dostęp do aplikacji o dużej przepustowości poprzez dostęp równoległy.
Komponenty HDFS:
- NameNode – Działa jako Master w klastrze. Namenode przechowuje metadane . Szereg klocków, replik i innych detali. Metadane są obecne w pamięci mastera. NameNode utrzymuje i zarządza węzłami podrzędnymi oraz przydziela im zadania. Powinien być wdrażany na niezawodnym sprzęcie, ponieważ jest centralnym elementem HDFS.
- DataNode – Działa jako Slave w klastrze. W HDFS DataNode odpowiada za przechowywanie rzeczywistych danych w HDFS. DataNode wykonuje operacje odczytu i zapisu zgodnie z żądaniem dla klientów. DataNodes można również wdrażać na zwykłym sprzęcie.
b. MapReduce
MapReduce to warstwa przetwarzania danych platformy Hadoop. Przetwarza duże ustrukturyzowane i nieustrukturyzowane dane przechowywane w HDFS. MapReduce przetwarza również równolegle ogromne ilości danych.
Dokonuje tego poprzez podzielenie zadania (przesłanej pracy) na zestaw niezależnych zadań (pod-praca). MapReduce działa, dzieląc przetwarzanie na fazy:mapowanie i redukcja.
- Mapa – Jest to pierwsza faza przetwarzania, w której określamy cały złożony kod logiczny.
- Zmniejsz – To druga faza przetwarzania. Tutaj określamy lekkie przetwarzanie, takie jak agregacja/sumowanie.
c. PRZĘDZA
YARN zapewnia zarządzanie zasobami. Jest to system operacyjny Hadoop. Odpowiada za zarządzanie i monitorowanie obciążeń, a także wdrażanie kontroli bezpieczeństwa. Apache YARN jest również centralną platformą do dostarczania narzędzi do zarządzania danymi w klastrach.
YARN umożliwia korzystanie z wielu silników przetwarzania danych, takich jak przesyłanie strumieniowe w czasie rzeczywistym, przetwarzanie wsadowe itp.
Składniki przędzy:
- Menedżer zasobów – Jest to składnik na poziomie klastra i działa na maszynie Master. Zarządza zasobami i planuje aplikacje działające na górze YARN. Składa się z dwóch komponentów:harmonogramu i menedżera aplikacji.
- Menedżer węzłów – Jest to składnik na poziomie węzła. Działa na każdej maszynie podrzędnej. Stale komunikuje się z Menedżerem zasobów, aby być na bieżąco
Zalety Hadoopa
Omówmy teraz różne zalety Hadoop, aby rozwiązać problemy związane z dużymi danymi.
- Skalowalność – Dodając węzły możemy łatwo rozwijać nasz system, aby obsłużyć więcej danych.
- Elastyczność – W tej strukturze nie musisz wstępnie przetwarzać danych przed ich przechowywaniem. Możesz przechowywać tyle danych, ile chcesz i zdecydować, jak użyć później.
- Niski koszt – Platforma open source jest bezpłatna i działa na niedrogim, standardowym sprzęcie.
- Tolerancja błędów – Jeśli węzły ulegną awarii, zadania są automatycznie przekierowywane do innych węzłów.
- Moc obliczeniowa – To jest model przetwarzania rozproszonego szybko przetwarza duże zbiory danych. Im więcej węzłów obliczeniowych zużywasz, tym więcej masz mocy obliczeniowej.
Wady Hadoopa
Niektóre wady Apache Hadoop Framework są podane poniżej-
- Obawy dotyczące bezpieczeństwa – Zarządzanie złożoną aplikacją może być trudne. Jeśli użytkownik nie wie, jak włączyć platformę, która zarządza platformą, Twoje dane mogą stanowić ogromne ryzyko. Ponieważ na poziomach pamięci i sieci Hadoop nie ma szyfrowania, co jest głównym problemem.
- Z natury zagrożony – Framework jest napisany prawie w języku Java, najczęściej używanym języku. Java jest intensywnie wykorzystywana przez cyberprzestępców. W rezultacie zamieszany w liczne naruszenia bezpieczeństwa.
- Nie nadaje się do małych danych – Ponieważ nie nadaje się do małych danych. W związku z tym nie ma możliwości wydajnego wspierania losowego odczytu małych plików.
- Potencjalne problemy ze stabilnością – Ponieważ jest to framework open source. Oznacza to, że jest tworzony przez wielu programistów, którzy nadal pracują nad projektem. Chociaż stale wprowadzane są ulepszenia, ma problemy ze stabilnością. Aby uniknąć tych problemów, organizacje powinny korzystać z najnowszej stabilnej wersji.
Wniosek
Podsumowując można powiedzieć, że jest to najpopularniejsze i najpotężniejsze narzędzie Big Data. Przechowuje ogromne ilości danych w sposób rozproszony.
A następnie przetwarza dane równolegle w klastrze węzłów. Zapewnia również najbardziej niezawodną na świecie warstwę pamięci masowej - HDFS. Silnik przetwarzania wsadowego MapReduce i warstwa zarządzania zasobami - YARN.
Dlatego te demony zapewniają funkcjonalność Hadoop.