10 najważniejszych warunków Hadoop, które musisz znać i rozumieć

Autor: Eugene Taylor
Data Utworzenia: 10 Sierpień 2021
Data Aktualizacji: 1 Lipiec 2024
Anonim
10 najważniejszych warunków Hadoop, które musisz znać i rozumieć - Technologia
10 najważniejszych warunków Hadoop, które musisz znać i rozumieć - Technologia

Zawartość



Źródło: Trueffelpix / Dreamstime.com

Na wynos:

Aby naprawdę zrozumieć duże zbiory danych, musisz trochę zrozumieć Hadoop i otaczający go język.

Big data, chwytliwa nazwa ogromnych ilości ustrukturyzowanych, nieustrukturyzowanych lub częściowo ustrukturyzowanych danych, jest niezwykle trudna do przechwytywania, przechowywania, zarządzania, udostępniania, analizowania i wizualizacji, przynajmniej przy użyciu tradycyjnych baz danych i aplikacji. Właśnie dlatego technologie dużych zbiorów danych mogą skutecznie i wydajnie zarządzać i przetwarzać ogromne ilości danych. A także Apache Hadoop, który zapewnia platformę i powiązane technologie do przetwarzania dużych zbiorów danych w klastrach komputerów w sposób rozproszony. Tak więc, aby naprawdę zrozumieć duże zbiory danych, musisz trochę zrozumieć Hadoop. Tutaj dobrze spójrz na najważniejsze warunki, które usłyszysz w odniesieniu do Hadoop - i co one oznaczają.


Ale po pierwsze, jak działa Hadoop

Zanim przejdziesz do ekosystemu Hadoop, musisz jasno zrozumieć dwie podstawowe rzeczy. Pierwszym z nich jest sposób przechowywania pliku w Hadoop; po drugie, w jaki sposób przetwarzane są przechowywane dane. Wszystkie technologie związane z Hadoop działają głównie w tych dwóch obszarach i czynią je bardziej przyjaznymi dla użytkownika. (Zapoznaj się z podstawami działania Hadoop w artykule Jak Hadoop pomaga rozwiązać problem Big Data).

Teraz przejdźmy do warunków.

Hadoop Common

Struktura Hadoop ma różne moduły dla różnych funkcjonalności i moduły te mogą ze sobą współdziałać z różnych powodów. Hadoop Common można zdefiniować jako wspólną bibliotekę narzędzi do obsługi tych modułów w ekosystemie Hadoop. Te narzędzia są w zasadzie zarchiwizowanymi plikami JAR (Java). Z narzędzi tych korzystają głównie programiści i programiści w czasie programowania.


Hadoop Distributed File System (HDFS)

Hadoop Distributed File System (HDFS) jest podprojektem Apache Hadoop w ramach Apache Software Foundation. Jest to kręgosłup pamięci w środowisku Hadoop. Jest to rozproszony, skalowalny i odporny na awarie system plików, który obejmuje wiele towarów znanych jako klaster Hadoop. Celem systemu plików HDFS jest niezawodne przechowywanie ogromnej ilości danych przy wysokiej przepustowości dostępu do danych aplikacji. HDFS jest zgodny z architekturą master / slave, gdzie master jest znany jako NameNode, a slave są znane jako DataNodes.

MapReduce

Hadoop MapReduce jest także podprojektem Apache Software Foundation. MapReduce to w rzeczywistości framework programistyczny napisany wyłącznie w Javie. Jego głównym celem jest przetwarzanie dużych zbiorów danych w środowisku rozproszonym (składającym się ze sprzętu towarowego) w całkowicie równoległy sposób. Struktura zarządza wszystkimi działaniami, takimi jak planowanie zadań, monitorowanie, wykonywanie i ponowne wykonywanie (w przypadku zadań zakończonych niepowodzeniem).

HBase

Apache HBase jest znana jako baza danych Hadoop. Jest to kolumnowy, rozproszony i skalowalny magazyn dużych zbiorów danych. Jest również znany jako typ bazy danych NoSQL, który nie jest systemem zarządzania relacyjnymi bazami danych. Aplikacje HBase są również napisane w Javie, zbudowane na Hadoop i działają na HDFS. HBase jest używany, gdy potrzebujesz odczytu / zapisu w czasie rzeczywistym oraz losowego dostępu do dużych zbiorów danych. HBase jest modelowany w oparciu o koncepcje Googles BigTable.

Ul

Apache Hive to system oprogramowania do hurtowni danych typu open source. Hive został pierwotnie opracowany, zanim stał się częścią Apache Software Foundation i stał się open source. Ułatwia zarządzanie dużymi zestawami danych i zarządzanie nimi w rozproszonej pamięci masowej zgodnej z Hadoop. Hive wykonuje wszystkie swoje czynności, używając języka podobnego do SQL znanego jako HiveQL. (Dowiedz się więcej w Krótkim wprowadzeniu do Apache Hive i Pig.)

Bez błędów, bez stresu - Twój przewodnik krok po kroku do tworzenia oprogramowania zmieniającego życie bez niszczenia życia

Nie możesz poprawić swoich umiejętności programistycznych, gdy nikt nie dba o jakość oprogramowania.

Apache Pig

Pig został pierwotnie zainicjowany przez Yahoo do opracowywania i wykonywania zadań MapReduce na dużej ilości rozproszonych danych. Teraz stał się projektem open source w ramach Apache Software Foundation. Apache Pig można zdefiniować jako platformę do efektywnej analizy bardzo dużych zbiorów danych. Warstwa infrastruktury świń produkuje sekwencje zadań MapReduce do faktycznego przetwarzania. Warstwa językowa świń jest znana jako Pig Latin i zapewnia funkcje podobne do SQL do wykonywania zapytań na rozproszonych zestawach danych.

Apache Spark

Spark został pierwotnie opracowany przez AMPLab w UC Berkeley. W lutym 2014 r. Stał się projektem najwyższego poziomu Apache. Apache Spark można zdefiniować jako ogólnodostępną, klastrową platformę do przetwarzania klastrowego, która znacznie przyspiesza analizę danych. Jest zbudowany na rozproszonym systemie plików Hadoop, ale nie jest połączony z frameworkiem MapReduce. Wydajność iskier jest znacznie szybsza w porównaniu do MapReduce. Zapewnia interfejsy API wysokiego poziomu w językach Scala, Python i Java.

Apache Cassandra

Apache Cassandra to kolejna baza danych NoSQL typu open source. Cassandra jest szeroko stosowana do zarządzania dużymi ilościami strukturalnych, częściowo ustrukturyzowanych i nieustrukturyzowanych rozpiętości danych w wielu centrach danych i magazynie w chmurze. Cassandra została zaprojektowana w oparciu o architekturę „masterless”, co oznacza, że ​​nie obsługuje modelu master / slave. W tej architekturze wszystkie węzły są takie same, a dane są dystrybuowane automatycznie i jednakowo we wszystkich węzłach. Najważniejszymi cechami Cassandras są ciągła dostępność, liniowa skalowalność, wbudowana / konfigurowalna replikacja, brak pojedynczego punktu awarii i prostota obsługi.

Jeszcze inny negocjator zasobów (YARN)

Jeszcze inny negocjator zasobów (YARN) jest również znany jako MapReduce 2.0, ale tak naprawdę należy do Hadoop 2.0. YARN można zdefiniować jako strukturę planowania zadań i zarządzania zasobami. Podstawową ideą YARN jest zastąpienie funkcjonalności JobTracker dwoma oddzielnymi demonami odpowiedzialnymi za zarządzanie zasobami oraz planowanie / monitorowanie. W tej nowej platformie będzie dostępny globalny menedżer zasobów (RM) i wzorzec specyficzny dla aplikacji, znany jako ApplicationMaster (AM). Globalny ResourceManager (RM) i NodeManager (dla węzła slave) tworzą rzeczywistą strukturę obliczania danych. Istniejące aplikacje MapReduce v1 można również uruchamiać w YARN, ale te aplikacje muszą zostać ponownie skompilowane przy użyciu słoików Hadoop2.x.

Impala

Impala może być zdefiniowana jako silnik zapytań SQL o dużej mocy przetwarzania równoległego (MPP). Działa natywnie na frameworku Apache Hadoop. Impala została zaprojektowana jako część ekosystemu Hadoop. Dzieli ten sam elastyczny system plików (HDFS), metadane, zarządzanie zasobami i ramy bezpieczeństwa, jakie są używane przez inne komponenty ekosystemu Hadoop. Najważniejsze jest, aby zauważyć, że Impala jest znacznie szybsza w przetwarzaniu zapytań w porównaniu do Hive. Należy jednak pamiętać, że Impala jest przeznaczona do zapytań / analiz na niewielkim zestawie danych i jest głównie zaprojektowana jako narzędzie analityczne, które działa na przetworzonych i ustrukturyzowanych danych.

Hadoop jest ważnym tematem w IT, ale są tacy, którzy sceptycznie podchodzą do jego długoterminowej rentowności. Przeczytaj więcej w What Is Hadoop? Teoria cyników.