Co je Hadoop?

Před pochopením výhod Hadoop nejprve pochopit Hadoop. Hadoop je velké paradigma zpracování dat, které poskytuje spolehlivé a škálovatelné místo pro ukládání a zpracování dat. Hadoop vytvořil Doug Cutting a je považován za „otce Hadoop“. Hadoop bylo jméno slona hračky jeho syna. Hadoop měl své kořeny v projektu Nutch Search Engine Project. Hadoop je rámec pro zpracování, který přinesl ohromné ​​změny ve způsobu, jakým zpracováváme data, jak ukládáme data. Ve srovnání s tradičními nástroji pro zpracování, jako je RDBMS, Hadoop dokázal, že můžeme účinně bojovat proti výzvám velkých dat, jako jsou,

Rozmanitost dat: Hadoop umí ukládat a zpracovávat strukturované i polostrukturované a nestrukturované formáty dat.

Objem dat : Hadoop je speciálně navržen tak, aby zvládl obrovský objem dat v rozsahu petabytů.

Rychlost dat : Hadoop dokáže zpracovávat petabajty dat s vysokou rychlostí ve srovnání s jinými nástroji pro zpracování, jako je RDBMS, tj. Doba zpracování v Hadoopu je velmi menší.

Hlavní rysy Hadoopu

  • Hadoop je v přírodě open source.
  • Funguje na klastru strojů. Velikost clusteru závisí na požadavcích.
  • Může běžet na běžném komoditním hardwaru.

Výhody Hadoop

V této části jsou diskutovány výhody Hadoopu. Nyní se na ně podíváme jeden po druhém:

1. Otevřete zdroj

Hadoop je ve své podstatě open source, tj. Jeho zdrojový kód je volně k dispozici. Můžeme upravit zdrojový kód podle našich obchodních požadavků. K dispozici jsou i proprietární verze Hadoop, jako jsou práce Cloudera a Horton.

2. Škálovatelné

Hadoop pracuje na clusteru strojů. Hadoop je vysoce škálovatelný. Můžeme zvětšit velikost našeho clusteru přidáním nových uzlů podle požadavku bez jakýchkoli prostojů. Tento způsob přidávání nových počítačů do klastru se nazývá horizontální škálování, zatímco zvyšující se součásti, jako je zdvojnásobení pevného disku a RAM, se označuje jako vertikální škálování.

3. Odolnost proti poruchám

Tolerance poruch je hlavním rysem Hadoopu. Ve výchozím nastavení má každý blok v HDFS faktor replikace 3. Pro každý datový blok vytvoří HDFS dvě další kopie a uloží je na jiné místo v klastru. Pokud některý blok zmizí z důvodu selhání stroje, máme ještě dvě kopie stejného bloku a ty jsou použity. Tímto způsobem je v Hadoop dosaženo chyby tolerance.

4. Schéma nezávislé

Hadoop umí pracovat s různými typy dat. Je dostatečně flexibilní pro ukládání různých formátů dat a může pracovat na datech se schématy (strukturovaná) i bez schématu (nestrukturovaná).

5. Vysoká propustnost a nízká latence

Propustnost znamená množství práce za jednotku času a Nízká latence znamená zpracování dat bez zpoždění nebo menšího zpoždění. Protože Hadoop je poháněn principem distribuovaného úložiště a paralelního zpracování, zpracování se provádí současně na každém bloku dat a nezávisle na sobě. Místo přesunutí dat je kód přesunut na data v clusteru. Tyto dva přispívají k vysoké propustnosti a nízké latenci.

6. Místo dat

Hadoop pracuje na principu „Přesuňte kód, ne data“. V Hadoopu Data zůstávají stacionární a pro zpracování dat se kód přesouvá do dat ve formě úkolů, což se nazývá Datová lokalita. Vzhledem k tomu, že se zabýváme daty v rozsahu petabytů, je obtížné a nákladné přesouvat data přes síť, umístění dat zajišťuje, že pohyb dat v klastru je minimální.

7. Výkon

V systémech Legacy, jako je RDBMS, jsou data zpracovávána postupně, ale v Hadoopu začíná zpracování na všech blocích najednou, čímž poskytuje paralelní zpracování. Díky technikám paralelního zpracování je výkon Hadoop mnohem vyšší než u starších systémů, jako je RDBMS. V roce 2008 Hadoop dokonce porazil nejrychlejší superpočítač v té době.

8. Sdílejte nic architektury

Každý uzel v klastru Hadoop je na sobě nezávislý. Nesdílejí zdroje ani úložiště, tato architektura je známá jako Share Nothing Architecture (SN). Pokud uzel v klastru selže, nezruší celý klastr, protože každý uzel se chová nezávisle, čímž eliminuje jediný bod selhání.

9. Podpora více jazyků

Přestože byl Hadoop většinou vyvíjen v Javě, rozšiřuje podporu i pro další jazyky, jako je Python, Ruby, Perl a Groovy.

10. Nákladově efektivní

Hadoop má velmi ekonomický charakter. Můžeme vytvořit Hadoop Cluster pomocí běžného komoditního hardwaru, a tím snížit náklady na hardware. Podle cloudové éry jsou náklady na správu dat Hadoop, tj. Hardware i software a další náklady, ve srovnání s tradičními systémy ETL velmi minimální.

11. Abstrakce

Hadoop poskytuje abstrakci na různých úrovních. To vývojářům usnadní práci. Velký soubor je rozdělen do bloků stejné velikosti a uložen na různých místech klastru. Při vytváření úlohy snižování mapy se musíme starat o umístění bloků. Jako vstup poskytujeme kompletní soubor a rámec Hadoop se stará o zpracování různých bloků dat, které jsou na různých místech. Úl je součástí ekosystému Hadoop a je to abstrakce na vrcholu Hadoopu. Protože úkoly Map-Reduce jsou psány v Javě, vývojáři SQL z celého světa nemohli využít výhody Map Reduce. Proto je představen Hive k vyřešení tohoto problému. Můžeme psát SQL jako dotazy na Hive, což zase spouští Map redukovat úlohy. Díky Hive je tedy komunita SQL také schopna pracovat na Map Reduce Tasks.

12. Kompatibilita

V Hadoopu je HDFS úložná vrstva a Map Reduce je procesor pro zpracování. Neexistuje však přísné pravidlo, že by Map Reduce měla být výchozím procesorem zpracování. Nové rámce zpracování jako Apache Spark a Apache Flink používají systém HDFS jako úložný systém. I v Úlu můžeme podle našeho požadavku změnit náš spouštěcí engine na Apache Tez nebo Apache Spark. Apache HBase, což je NoSQL Columnar Database, používá HDFS pro vrstvu Storage.

13. Podpora různých systémů souborů

Hadoop má velmi flexibilní povahu. Může přijímat různé formáty dat, jako jsou obrázky, videa, soubory atd. Může zpracovávat také strukturovaná a nestrukturovaná data. Hadoop podporuje různé systémy souborů jako JSON, XML, Avro, Parquet atd.

Práce Hadoop

Níže jsou uvedeny body, jak Hadoop funguje:

1. Distribuované úložiště a paralelní zpracování

Toto je hnací princip všech rámců ekosystému Hadoop, včetně Apache Spark. Abychom pochopili fungování Hadoop a Spark, měli bychom nejprve pochopit, co je „Distribuované úložiště a paralelní zpracování“.

2. Distribuované úložiště

Hadoop neukládá data do jediného počítače, místo toho rozděluje tato obrovská data do bloků stejné velikosti, které jsou ve výchozím nastavení 256 MB, a ukládá je do různých uzlů klastru (pracovní uzly). Ukládá metadata těchto bloků v hlavním uzlu. Tento způsob ukládání souboru v distribuovaných umístěních v klastru se nazývá Hadoop distribuovaný systém souborů - HDFS.

3. Paralelní zpracování

Je to paradigma zpracování, kde se zpracování provádí současně na blocích dat uložených v HDFS. Paralelní zpracování pracuje na pojmu „Přesunout kód, ne data“. Data zůstávají v HDFS nehybná, ale kód se přesouvá do dat pro zpracování. Zjednodušeně řečeno, pokud je náš soubor rozdělen do 100 bloků, je vytvořeno 100 kopií úlohy a putují napříč klastrem do místa, kde je blok umístěn a zpracování na 100 blocích začíná současně (mapa fáze). Výstupní data ze všech bloků jsou shromažďována a redukována na konečný výstup (Reduce Phase). Mapa Reduce je považována za „Heart of Hadoop“.

Závěr - výhody Hadoopu

V tomto datovém věku Hadoop připravil cestu pro odlišný přístup k výzvám, které představují velká data. Když řekneme: Hadoop nemyslíme samotný Hadoop, zahrnuje nástroje Hadoop Ecosystem, jako je Apache Hive, které poskytují operace typu SQL na vrcholu Hadoop, Apache Pig, Apache HBase pro databázi úložiště sloupců, Apache Spark pro zpracování v paměti a mnoho více. Přestože má Hadoop své nevýhody, je vysoce přizpůsobivý a s každým vydáním se neustále vyvíjí.

Doporučené články

Toto je průvodce výhodami Hadoopu. Zde diskutujeme o tom, co je Hadoop a hlavní výhody Hadoopu. Další informace naleznete také v dalších souvisejících článcích.

  1. HADOOP Framework
  2. Co je Hadoop Cluster?
  3. Co je MapReduce v Hadoopu?
  4. Hadoop databáze
  5. Co je Hadoop? | Aplikace a funkce

Kategorie: