V našem předchozím blogu jsme diskutovali o Úvodu Hadoop podrobně. Nyní v tomto blogu odpovíme na to, co je Hadoop Ecosystem a jaké jsou role Hadoop Components.
V tomto tutoriálu Hadoop Components budeme diskutovat o různých komponentách ekosystému rodiny Hadoop, jako je HDFS, MapReduce, YARN, Hive, HBase, Pig, Zookeeper atd.
Všechny tyto komponenty hadoopského ekosystému jsou diskutovány spolu s jejich vlastnostmi a odpovědnostmi.
Výukový program o ekosystému Hadoop
Apache Hadoop je nejmocnějším nástrojem Big Data. Ekosystém Hadoop se točí kolem tří hlavních komponent HDFS, MapReduce a YARN. Kromě těchto součástí Hadoop existují také některé další součásti ekosystému Hadoop, které hrají důležitou roli při posilování funkcí Hadoop.
pojďme nyní podrobně porozumět různým komponentám Hadoop.
a. HDFS
Distribuovaný systém souborů Hadoop (HDFS) je primární úložný systém Hadoop. HDFS ukládá velmi velké soubory běžící na clusteru komoditního hardwaru.
Řídí se zásadou ukládání menšího počtu velkých souborů spíše než velkého počtu malých souborů. HDFS uchovává data spolehlivě i v případě selhání hardwaru. Poskytuje tedy vysokou propustnost přístupu k aplikaci prostřednictvím paralelního přístupu.
Součásti HDFS:
- NameNode – Funguje jako Master v clusteru Hadoop. Namenode ukládá metadata, tj. počet bloků, replik a další podrobnosti. Metadata jsou přítomna v paměti hlavního serveru. NameNode přiděluje úkoly podřízenému uzlu. Měl by být nasazen na spolehlivém hardwaru, protože je ústředním prvkem HDFS.
- Datový uzel – Funguje jako Slave v clusteru Hadoop. V Hadoop HDFS je DataNode zodpovědný za ukládání skutečných dat v HDFS. DataNode také provádí operace čtení a zápisu podle požadavku pro klienty. DataNodes lze také nasadit na komoditní hardware.
b. MapReduce
Hadoop MapReduce je vrstva zpracování dat Hadoop. Zpracovává velká strukturovaná i nestrukturovaná data uložená v HDFS. MapReduce také paralelně zpracovává obrovské množství dat.
Dělá to rozdělením úkolu (předloženého úkolu) na sadu nezávislých úkolů (dílčího úkolu). V Hadoopu funguje MapReduce rozdělením zpracování do fází:Map and Reduce.
- Mapa – Je to první fáze zpracování, kde specifikujeme veškerý složitý logický kód.
- Snížit – Je to druhá fáze zpracování. Zde specifikujeme odlehčené zpracování, jako je agregace/součet.
c. PŘÍZE
Hadoop YARN poskytuje správu zdrojů. Je to operační systém Hadoop. Je tedy odpovědný za řízení a monitorování pracovních zátěží, zavádění bezpečnostních kontrol. Je to centrální platforma pro poskytování nástrojů pro správu dat napříč clustery Hadoop.
YARN umožňuje více motorů pro zpracování dat, jako je streamování v reálném čase, dávkové zpracování atd.
Součásti PŘÍZE:
- Správce zdrojů – Je to komponenta na úrovni clusteru a běží na hlavním počítači. Proto spravuje zdroje a plánuje aplikace běžící nad přízí. Má dvě součásti:Scheduler &Application Manager.
- Správce uzlů – Je to komponenta na úrovni uzlu. Běží na každém podřízeném stroji. Neustále komunikuje se Správcem zdrojů, aby zůstal aktuální
d. Úl
Apache Hive je systém datového skladu s otevřeným zdrojovým kódem používaný k dotazování a analýze velkých datových sad uložených v souborech Hadoop. Zpracovává strukturovaná a polostrukturovaná data v Hadoop.
Hive také podporuje analýzu velkých datových sad uložených v HDFS a také v souborovém systému Amazon S3 je podporován Hive. Hive používá jazyk zvaný HiveQL (HQL), který je podobný SQL. HiveQL automaticky překládá dotazy podobné SQL do úloh MapReduce.
e. Prase
Je to jazyková platforma na vysoké úrovni vyvinutá pro provádění dotazů na obrovské datové sady, které jsou uloženy v Hadoop HDFS. PigLatin je jazyk používaný v prase, který je velmi podobný SQL.
Pig načte data, použije požadované filtry a vypíše data v požadovaném formátu. Pig také převádí všechny operace na úkoly Map and Reduce, které jsou efektivně zpracovávány na Hadoop.
Charakteristika prasete:
- Rozšiřitelné – Uživatelé prasat mohou vytvářet vlastní funkce, které splňují jejich konkrétní požadavky na zpracování.
- Vlastní optimalizace – Od Pig umožňuje automatické optimalizaci systému. Uživatel se tak může soustředit na sémantiku.
- Zpracovává všechny druhy dat – Prase analyzuje strukturované i nestrukturované.
f. HBase
Apache HBase je NoSQL databáze, která běží nad Hadoopem. Je to databáze, která ukládá strukturovaná data v tabulkách, které mohou mít miliardy řádků a miliony sloupců. HBase také poskytuje v reálném čase přístup ke čtení nebo zápisu dat v HDFS.
Součásti HBase:
- HBase Master – Není součástí skutečného úložiště dat. Provádí ale administraci (rozhraní pro vytváření, aktualizaci a mazání tabulek.).
- Region Server – Je to pracovní uzel. Zvládá čtení, zápis, aktualizace a mazání požadavků od klientů. Proces serveru regionu také běží na každém uzlu v clusteru Hadoop.
g. HCatalog
Je to vrstva pro správu tabulek a úložiště na vrcholu Apache Hadoop. HCatalog je hlavní součástí Hive. Umožňuje tedy uživateli ukládat svá data v libovolném formátu a struktuře. Podporuje také různé součásti Hadoop pro snadné čtení a zápis dat z clusteru.
Výhody HCatalogu:
- Zajistěte viditelnost nástrojů pro čištění a archivaci dat.
- Díky tabulkové abstrakci zbavuje HCatalog uživatele režijních nákladů na ukládání dat.
- Povoluje upozornění na dostupnost dat.
i. Avro
Jedná se o open source projekt, který poskytuje služby pro serializaci dat a výměnu dat pro Hadoop. Pomocí serializace mohou servisní programy serializovat data do souborů nebo zpráv.
Také ukládá definici dat a data společně v jedné zprávě nebo souboru. Programům to tedy usnadňuje dynamicky porozumět informacím uloženým v souboru nebo zprávě Avro.
Avro poskytuje:
- Soubor kontejneru pro ukládání trvalých dat.
- Vzdálené volání procedury.
- Bohaté datové struktury.
- Kompaktní, rychlý, binární formát dat.
j. Šetrnost
Apache Thrift je softwarový rámec, který umožňuje škálovatelný vývoj mezijazykových služeb. Thrift se také používá pro RPC komunikaci. Apache Hadoop provádí mnoho RPC volání, takže existuje možnost použití Thrift pro výkon.
k. Vrták
Vrták se používá pro rozsáhlé zpracování dat. Návrh vrtáku je škálovat na několik tisíc uzlů a dotazovat se na petabajty dat. Je to také modul distribuovaných dotazů s nízkou latencí pro rozsáhlé datové sady.
Cvičení je také prvním distribuovaným dotazovacím strojem SQL, který má model bez schématu.
Charakteristiky cvičení :
- Vytváření decentralizovaných metadat – Drill nemá centralizovaný požadavek na metadata. Uživatelé modulu Drill nemusí vytvářet a spravovat tabulky v metadatech, aby mohli dotazovat data.
- Flexibilita – Drill poskytuje hierarchický sloupcový datový model. Dokáže reprezentovat komplexní, vysoce dynamická data a také umožňuje efektivní zpracování.
- Objevování dynamického schématu – Ke spuštění procesu provádění dotazu Drill nevyžaduje žádnou typovou specifikaci pro data. Namísto toho vrták začne zpracovávat data v jednotkách nazývaných záznamové dávky. Také zjišťuje schéma za chodu během zpracování.
l. Mahout
Jedná se o open source framework používaný pro vytváření škálovatelného algoritmu strojového učení. Jakmile uložíme data do HDFS, mahout poskytuje nástroje pro vědu o datech, které automaticky najdou smysluplné vzorce v těchto sadách velkých dat.
m. Sqoop
Používá se především pro import a export dat. Importuje tedy data z externích zdrojů do souvisejících komponent Hadoop, jako je HDFS, HBase nebo Hive. Také exportuje data z Hadoop do jiných externích zdrojů. Sqoop pracuje s relačními databázemi, jako jsou Teradata, Netezza, Oracle, MySQL.
n. Žlab
Flume efektivně shromažďuje, agreguje a přesouvá velké množství dat z jejich původu a posílá je zpět do HDFS. Má velmi jednoduchou a flexibilní architekturu založenou na streamování datových toků. Flume je odolný vůči chybám a je také spolehlivým mechanismem.
Flume také umožňuje tok dat ze zdroje do prostředí Hadoop. Využívá jednoduchý rozšiřitelný datový model, který umožňuje online analytickou aplikaci. Proto můžeme pomocí Flume získat data z více serverů okamžitě do Hadoopu.
o. Ambari
Jedná se o open source platformu pro správu. Jedná se o platformu pro poskytování, správu, monitorování a zabezpečení clusteru Apache Hadoop. Správa Hadoop je jednodušší, protože Ambari poskytuje konzistentní a bezpečnou platformu pro provozní kontrolu.
Výhody Ambari:
- Zjednodušená instalace, konfigurace a správa – Může snadno a efektivně vytvářet a spravovat clustery ve velkém měřítku.
- Centralizované nastavení zabezpečení – Ambari konfiguruje zabezpečení clusteru napříč celou platformou. Snižuje také složitost administrace.
- Vysoce rozšiřitelné a přizpůsobitelné – Ambari je vysoce rozšiřitelné pro převedení vlastních služeb pod správu.
- Úplný přehled o stavu clusteru – Ambari zajišťuje, že cluster je zdravý a dostupný s holistickým přístupem k monitorování.
str. Ošetřovatel zoo
Zookeeper v Hadoop je centralizovaná služba. Udržuje informace o konfiguraci, pojmenování a poskytuje distribuovanou synchronizaci. Poskytuje také skupinové služby. Zookeeper také spravuje a koordinuje velký shluk strojů.
Výhody Zookeeper:
- Rychlý – zookeeper je rychlý s pracovní zátěží, kde je čtení dat běžnější než zápis. Ideální poměr čtení/zápis je 10:1.
- Objednáno – zookeeper vede záznamy o všech transakcích, které lze použít i pro vysokou úroveň
q. Oozie
Jedná se o systém plánovače pracovních postupů pro správu úloh Apache Hadoop. Kombinuje více úloh postupně do jedné logické jednotky práce.
Rámec Oozie je tedy plně integrován se zásobníkem Apache Hadoop, YARN jako architektonickým centrem. Podporuje také úlohy Hadoop pro Apache MapReduce, Pig, Hive a Sqoop.
Oozie je škálovatelný a také velmi flexibilní. Úlohy lze snadno spouštět, zastavovat, pozastavovat a znovu spouštět. Proto Oozie velmi usnadňuje opětovné spuštění neúspěšných pracovních postupů. Je také možné přeskočit konkrétní neúspěšný uzel.
Existují dva základní typy úloh Oozie:
- Oozie workflow – Slouží k ukládání a spouštění pracovních postupů složených z úloh Hadoop, např. MapReduce, Pig, Hive.
- Koordinátor Oozie – Spouští úlohy pracovního toku na základě předem definovaných plánů a dostupnosti dat.
Závěr
Hadoop Ecosystem proto poskytuje různé komponenty, díky kterým je tak populární. Díky těmto komponentám Hadoop je nyní k dispozici několik pracovních rolí Hadoop.
Doufám, že tento tutoriál Hadoop Ecosystem vám hodně pomůže pochopit rodinu Hadoop a jejich role. Pokud najdete jakýkoli dotaz, podělte se s námi v poli komentáře.