Database
 sql >> Baza danych >  >> RDS >> Database

Wprowadzenie do Hadoop i Big Data

Radzenie sobie z tonami danych wymaga specjalnego przygotowania. Powszechne techniki obliczeniowe są niewystarczające, aby obsłużyć zalew danych; tym bardziej, gdy pochodzą one z wielu źródeł. W Big Data wielkość, o której mówimy, jest ogromna — mierzona w zettabajtach, eksabajtach lub milionach petabajtów lub miliardach terabajtów. Struktura o nazwie Hadoop jest powszechnie używany do rozwiązywania niektórych problemów związanych z zarządzaniem Big Data. Ten artykuł jest próbą przedstawienia wstępnego pomysłu na temat Hadoop w świetle Big Data.

Ewolucja

Nic nie dzieje się z wielkim wybuchem. Powstanie i ewolucja Hadoopa przebiega stopniowo i zgodnie z potrzebą godziny w radzeniu sobie z Big Data. Krótko mówiąc, zawdzięcza swoje pochodzenie projektowi Doug Cutting Apache Nutch z 2003 roku, zwłaszcza na początku jego część kodowa. Geneza została opracowana na podstawie Google File System (GFS), artykułu opublikowanego w październiku 2003 r., który wpłynął na inny artykuł o nazwie MapReduce:Simplified Data Processing on Large Clusters. Kod dla HDFS w Hadoop jest uwzględniony w projekcie Apache Nutch w 2006 roku i jest pod dużym wpływem algorytmów GFS i MapReduce. A fakt, że nazwa „Hadoop” pochodzi od pluszowej zabawki słonia syna Cuttinga, wyraźnie odzwierciedla ideę, że w pokoju jest słoń, którym Hadoop wyraźnie chce się zająć.

W skrócie

Dzisiaj Hadoop wyrósł z monolitycznych początków jako biblioteka oprogramowania, platforma do tworzenia aplikacji wymagających rozproszonego przetwarzania ogromnych ilości danych znajdujących się w klastrach komputerów przy użyciu prostych modeli programowania. Może skalować od pojedynczego serwera do tysięcy maszyn. Pomysł polega na rozmieszczeniu obliczeń i pamięci na wielu komputerach, aby wykorzystać przetwarzanie dużych zestawów danych. Biblioteka ma możliwość wykrywania awarii na poziomie warstwy aplikacji, dzięki czemu programista może je obsłużyć i świadczyć usługi na szczycie klastra komputerów, zamiast przenikać awarię na jeden lub więcej niższych poziomów, gdzie staje się trudniejsze do zarządzać lub przezwyciężyć.

Hadoop jest zatem kombinacją narzędzi i bibliotek open source obsługiwanych przez Apache do tworzenia aplikacji do przetwarzania rozproszonego, które są wysoce niezawodne i skalowalne.

Jak to działa

Hadoop zasadniczo radzi sobie z Big Data na trzy sposoby:

  • Pierwszy problem to przechowywanie. Dane są przechowywane na wielu maszynach obliczeniowych w rozproszonym środowisku, gdzie mogą być przetwarzane równolegle w celu zmniejszenia czasu i zasobów. Dane są utrwalane w środowisku o nazwie Hadoop Distributed File System (HDFS) , który służy do przechowywania danych w wielu formatach w klastrach maszyn. W tym celu dzieli dane na bloki i przechowuje je w różnych węzłach danych. Wykorzystuje technikę o nazwie skalowanie poziome aby dodać dodatkowe węzły danych do istniejących klastrów HDFS zgodnie z wymaganiami. Maksymalizuje to wykorzystanie istniejącego zasobu zamiast dodawania go za każdym razem, gdy pojawia się potrzeba skalowania.
  • Drugą kwestią jest uwzględnienie różnorodności danych. HDFS jest przystosowany do przechowywania wszelkiego rodzaju danych, zarówno ustrukturyzowanych, częściowo ustrukturyzowanych, jak i nieustrukturyzowanych. Nie ma wstępnej walidacji schematu. Dane, raz zapisane, mogą być odczytywane wiele razy bez żadnego problemu.
  • Trzecia kwestia dotyczy przetwarzania i dostępu do przechowywanych danych. W związku z tym na ratunek przychodzi algorytm MapReduce, w którym przetwarzanie jest rozdzielane na węzły podrzędne, aby działały równolegle, a wynik jest wysyłany z powrotem do węzła głównego. Węzeł główny łączy wyniki przed dostarczeniem ostatecznego wyniku. Ta część jest obsługiwana przez YARN, który jest przeznaczony do równoległego przetwarzania danych przechowywanych w HDFS.

Jest w nim wiele zawiłych elementów, ale to właśnie robi Hadoop. Pomysł z modułami dałby dalszy wgląd.

Moduły

Projekt Apache Hadoop składa się z sześciu modułów. Pierwsze cztery są następujące:

  • Hadoop wspólne :Składa się z narzędzi powszechnie używanych przez Hadoop i obsługuje inne moduły Hadoop. Jest również znany jako Hadoop Core i jest istotną częścią ekosystemu, wraz z HDFS, YARN i MapReduce. To właśnie w tej części Hadoop zakłada, że ​​sprzęt jest podatny na awarie i zapewnia programiście wszelkie niezbędne środki, aby automatycznie radzić sobie z awariami oprogramowania.
  • Rozproszony system plików Hadoop (HDFS) :Rozproszony system plików, który może pomieścić różne pliki w rozproszonym środowisku. Dzieli pliki na bloki i przechowuje je w węzłach w architekturze rozproszonej. Zapewnia skalowanie w poziomie zamiast skalowania w pionie, do dodatkowego grupowania w górę. Jest wysoce odporny na uszkodzenia i niski koszt pod względem możliwości wdrażania sprzętu.
  • Przędza Hadoop :To jest procesor platformy Hadoop. Z dwoma głównymi komponentami, zwanymi NodeManager i Menedżer zasobów , YARN wykonuje wszystkie czynności przetwarzania, takie jak alokacja zasobów, planowanie zadań i zarządzanie klastrami.
  • Hadoop MapReduce :Jest to framework do wykonywania wszystkich obliczeń równoległych. MapReduce to równoległy model programowania do przetwarzania danych w środowisku rozproszonym. Idealnie nadaje się do pisania aplikacji rozproszonych, które mogą wydajnie przetwarzać duże ilości danych w klastrach zwykłego sprzętu. Dzieli proces na dwie fazy, zwane Mapą i Zmniejsz , gdzie zadaniem Mappera klasa jest pobranie danych wejściowych, tokenizacja, mapowanie i sortowanie. Wyjście staje się wtedy wejściem do Reduktora klasa, która wyszukuje pasujące pary i redukuje je. Istnieją pary klucz-wartość dla wejścia i wyjścia w każdej fazie, a typ pary jest określany przez programistę.

Niedawno dodano dwa nowe podprojekty:

  • Ozon Hadoop :Jest to skalowalna, nadmiarowa i rozproszona składnica obiektów dla platformy Hadoop. Oprócz skalowania do miliardów obiektów o różnych rozmiarach, Ozone może skutecznie działać w środowiskach kontenerowych, takich jak Kubernetes i YARN. Jest zbudowany na wysoce dostępnej, replikowanej warstwie pamięci blokowej o nazwie Hadoop Distributed Data Store (HDDS) . [Fragment. Kliknij, aby znaleźć więcej.]
  • Okręt podwodny Hadoop :Silnik uczenia maszynowego dla Hadoop. Jest to projekt, który umożliwia inżynierowi infrastruktury/badaczowi danych uruchamianie aplikacji głębokiego uczenia (Tensorflow, Pytorch itd.) na platformie zarządzania zasobami (takiej jak YARN). [Fragment. Kliknij, aby znaleźć więcej.]

Wniosek

Hadoop wywarł znaczący wpływ na wyszukiwania, w procesie rejestrowania, w hurtowniach danych i analizie Big Data w wielu dużych organizacjach, takich jak Amazon, Facebook, Yahoo i tak dalej. Jest to kompleksowe rozwiązanie do przechowywania ogromnych ilości dowolnego rodzaju danych, któremu towarzyszy skalowalna moc obliczeniowa umożliwiająca wykorzystanie praktycznie nieograniczonej liczby jednoczesnych zadań. Krótko mówiąc, popularność Hadoopa w dużej mierze zawdzięcza jego odporności na błędy, skalowalności, opłacalności i szybkości.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Formatowanie danych w wizualizacjach programu Power BI Desktop

  2. Repozytorium testowej bazy danych IRI-Windocks

  3. Pytania do wywiadu z inżynierem danych w Pythonie

  4. Jak łączyć ciągi w SQL

  5. Jak uporządkować wiersze według sumy grup w SQL