Co to jest Hadoop?

Zanim zrozumiesz Zalety Hadoop, najpierw zrozum Hadoop. Hadoop to paradygmat przetwarzania dużych danych, który zapewnia niezawodne, skalowalne miejsce do przechowywania i przetwarzania danych. Hadoop został stworzony przez Douga Cuttinga i jest uważany za „Ojca Hadoopa”. Hadoop to imię zabawkowego słonia jego syna. Hadoop miał swoje korzenie w Nutch Search Engine Project. Hadoop to struktura przetwarzania, która wprowadziła ogromne zmiany w sposobie przetwarzania danych, w sposobie ich przechowywania. W porównaniu z tradycyjnymi narzędziami do przetwarzania, takimi jak RDBMS, Hadoop udowodnił, że możemy skutecznie walczyć z wyzwaniami związanymi z Big Data, takimi jak,

Różnorodność danych: Hadoop może przechowywać i przetwarzać zarówno ustrukturyzowane, jak i częściowo ustrukturyzowane formaty danych.

Objętość danych : Hadoop został specjalnie zaprojektowany do obsługi ogromnej ilości danych w zakresie petabajtów.

Prędkość danych : Hadoop może przetwarzać petabajty danych z dużą prędkością w porównaniu do innych narzędzi przetwarzania, takich jak RDBMS, tj. Czas przetwarzania w Hadoop jest bardzo krótszy.

Istotne cechy Hadoop

  • Hadoop ma charakter open source.
  • Działa na klastrze maszyn. Rozmiar klastra zależy od wymagań.
  • Może działać na zwykłym sprzęcie towarowym.

Zalety Hadoop

W tej sekcji omówiono zalety Hadoop. Teraz przyjrzyjmy się im jeden po drugim:

1. Open Source

Hadoop ma charakter open source, tzn. Jego kod źródłowy jest swobodnie dostępny. Możemy modyfikować kod źródłowy zgodnie z naszymi wymaganiami biznesowymi. Dostępne są nawet zastrzeżone wersje Hadoop, takie jak prace Cloudera i Horton.

2. Skalowalny

Hadoop działa na klastrze Maszyn. Hadoop jest wysoce skalowalny. Możemy zwiększyć rozmiar naszego klastra, dodając nowe węzły zgodnie z wymaganiami bez żadnych przestojów. Ten sposób dodawania nowych maszyn do klastra jest znany jako Skalowanie w poziomie, podczas gdy zwiększanie liczby komponentów, takich jak podwajanie dysku twardego i pamięci RAM, jest znane jako Skalowanie w pionie.

3. Odporny na awarie

Tolerancja błędów jest istotną cechą Hadoop. Domyślnie każdy blok w systemie plików HDFS ma współczynnik replikacji równy 3. Dla każdego bloku danych system plików HDFS tworzy dwie dodatkowe kopie i przechowuje je w innym miejscu w klastrze. Jeśli którykolwiek blok zaginie z powodu awarii maszyny, nadal mamy dwie kolejne kopie tego samego bloku i są one używane. W ten sposób w Hadoop osiąga się tolerancję błędu.

4. Schemat niezależny

Hadoop może pracować na różnych typach danych. Jest wystarczająco elastyczny, aby przechowywać różne formaty danych i może pracować zarówno na danych ze schematem (ustrukturyzowanym), jak i danymi bez schematu (nieustrukturyzowanym).

5. Wysoka przepustowość i niskie opóźnienia

Przepustowość oznacza ilość pracy wykonanej na jednostkę czasu, a niskie opóźnienie oznacza przetwarzanie danych bez opóźnienia lub z mniejszym opóźnieniem. Ponieważ Hadoop opiera się na zasadzie rozproszonego przechowywania i przetwarzania równoległego, przetwarzanie odbywa się jednocześnie na każdym bloku danych i niezależnie od siebie. Ponadto zamiast przenosić dane kod jest przenoszony do danych w klastrze. Te dwa czynniki przyczyniają się do wysokiej przepustowości i niskiego opóźnienia.

6. Lokalizacja danych

Hadoop działa na zasadzie „Przenieś kod, a nie dane”. W Hadoop dane pozostają nieruchome, a do przetwarzania danych kod jest przenoszony do danych w postaci zadań, jest to znane jako lokalizacja danych. Ponieważ mamy do czynienia z danymi z zakresu petabajtów, przenoszenie danych przez sieć staje się zarówno trudne, jak i kosztowne, lokalizacja danych zapewnia, że ​​ruch danych w klastrze jest minimalny.

7. Wydajność

W starszych systemach, takich jak RDBMS, dane są przetwarzane sekwencyjnie, ale w Hadoop przetwarzanie rozpoczyna się na wszystkich blokach jednocześnie, zapewniając w ten sposób przetwarzanie równoległe. Ze względu na techniki przetwarzania równoległego wydajność Hadoop jest znacznie wyższa niż w starszych systemach, takich jak RDBMS. W 2008 roku Hadoop pokonał nawet najszybszy superkomputer obecny w tym czasie.

8. Architektura Nic nie udostępniaj

Każdy węzeł w klastrze Hadoop jest od siebie niezależny. Nie współużytkują zasobów ani pamięci, ta architektura jest znana jako Share Nothing Architecture (SN). Jeśli węzeł w klastrze ulegnie awarii, nie zniszczy całego klastra, ponieważ każdy węzeł działa niezależnie, eliminując w ten sposób pojedynczy punkt awarii.

9. Wsparcie dla wielu języków

Chociaż Hadoop został opracowany głównie w Javie, rozszerza on obsługę innych języków, takich jak Python, Ruby, Perl i Groovy.

10. Opłacalność

Hadoop ma bardzo ekonomiczny charakter. Możemy zbudować klaster Hadoop przy użyciu zwykłego sprzętu, zmniejszając w ten sposób koszty sprzętu. Zgodnie z erą chmury, koszty zarządzania danymi w Hadoop, tj. Zarówno sprzęt, jak i oprogramowanie oraz inne wydatki są bardzo minimalne w porównaniu z tradycyjnymi systemami ETL.

11. Abstrakcja

Hadoop zapewnia Abstrakcję na różnych poziomach. Ułatwia to pracę programistom. Duży plik jest dzielony na bloki tego samego rozmiaru i przechowywany w różnych lokalizacjach klastra. Tworząc zadanie zmniejszania mapy, musimy martwić się lokalizacją bloków. Dajemy pełny plik jako dane wejściowe, a platforma Hadoop zajmuje się przetwarzaniem różnych bloków danych znajdujących się w różnych lokalizacjach. Rój jest częścią ekosystemu Hadoop i stanowi abstrakcję na szczycie Hadoop. Ponieważ zadania Map-Reduce są pisane w Javie, programiści SQL na całym świecie nie mogli skorzystać z Map Reduce. Dlatego Hive został wprowadzony w celu rozwiązania tego problemu. Możemy pisać zapytania SQL jak w Hive, co z kolei wyzwala Map redukuje zadania. Dzięki Hive społeczność SQL może także pracować nad Map Reduce Tasks.

12. Kompatybilność

W Hadoop HDFS to warstwa pamięci, a Map Reduce to silnik przetwarzania. Ale nie ma sztywnej zasady, że Map Reduce powinien być domyślnym silnikiem przetwarzania. Nowe środowiska przetwarzania, takie jak Apache Spark i Apache Flink, używają HDFS jako systemu pamięci masowej. Nawet w gałęzi możemy również zmienić nasz silnik wykonawczy na Apache Tez lub Apache Spark zgodnie z naszymi wymaganiami. Apache HBase, która jest NoSQL Columnar Database, wykorzystuje HDFS jako warstwę Storage.

13. Wsparcie dla różnych systemów plików

Hadoop ma bardzo elastyczny charakter. Może przyjmować różne formaty danych, takie jak obrazy, filmy, pliki itp. Może także przetwarzać dane strukturalne i nieustrukturyzowane. Hadoop obsługuje różne systemy plików, takie jak JSON, XML, Avro, Parquet itp.

Działanie Hadoop

Poniżej znajdują się punkty pokazujące, jak działa Hadoop:

1. Pamięć rozproszona i przetwarzanie równoległe

Jest to zasada działania wszystkich platform ekosystemu Hadoop, w tym Apache Spark. Aby zrozumieć działanie Hadoop i Spark, najpierw powinniśmy zrozumieć, co to jest „Pamięć rozproszona i równoległe przetwarzanie”.

2. Pamięć rozproszona

Hadoop nie przechowuje danych na jednej maszynie, zamiast tego dzieli ogromne dane na bloki o równej wielkości, które domyślnie mają 256 MB i przechowuje te bloki w różnych węzłach klastra (węzły robocze). Przechowuje metadane tych bloków w węźle głównym. Ten sposób przechowywania pliku w rozproszonych lokalizacjach w klastrze jest znany jako rozproszony system plików Hadoop - HDFS.

3. Przetwarzanie równoległe

Jest to paradygmat przetwarzania, w którym przetwarzanie odbywa się jednocześnie na blokach danych przechowywanych w HDFS. Przetwarzanie równoległe działa na zasadzie „Przenieś kod, a nie dane”. Dane pozostają nieruchome w HDFS, ale kod jest przenoszony do danych w celu przetworzenia. Mówiąc prościej, jeśli nasz plik jest podzielony na 100 bloków, wówczas tworzonych jest 100 kopii zadania, które przechodzą przez klaster do miejsca, w którym znajduje się blok, i przetwarzanie na 100 blokach rozpoczyna się jednocześnie (Faza mapy). Dane wyjściowe ze wszystkich bloków są gromadzone i redukowane do wyjścia końcowego (faza zmniejszania). Map Reduce jest uważane za „Heart of Hadoop”.

Wnioski - zalety Hadoop

W erze danych Hadoop utorował drogę do innego podejścia do wyzwań stawianych przez Big Data. Kiedy mówimy, Hadoop nie mamy na myśli samego Hadoopa, obejmuje on narzędzia ekosystemu Hadoop, takie jak Apache Hive, który zapewnia operacje SQL podobne do Hadoop, Apache Pig, Apache HBase dla bazy danych magazynu Columnar, Apache Spark do przetwarzania w pamięci i wiele innych więcej. Chociaż Hadoop ma swoje wady, jest wysoce elastyczny i stale się rozwija z każdym wydaniem.

Polecane artykuły

To jest przewodnik po zaletach Hadoop. Tutaj omawiamy, czym jest Hadoop i najważniejsze zalety Hadoop. Możesz również przejrzeć nasze inne powiązane artykuły, aby dowiedzieć się więcej-

  1. HADOOP Framework
  2. Co to jest klaster Hadoop?
  3. Co to jest MapReduce w Hadoop?
  4. Baza danych Hadoop
  5. Co to jest Hadoop? | Aplikacje i funkcje

Kategoria: