Mi az a Hadoop? Archistruktúra, ökoszisztéma és összetevők
⚡ Okos összefoglaló
Az Apache Hadoop egy nyílt forráskódú keretrendszer, amely hatalmas adathalmazokat tárol különböző számítógépekből álló klaszterekben, és a feldolgozási logikát az adatokhoz mozgatja, így az elemzés méretezhető olcsó csomópontok hozzáadásával, nem pedig nagyobb szerverekkel.
Mi az a Hadoop?
Az Apache Hadoop egy nyílt forráskódú szoftverkeretrendszer, amelyet olyan adatfeldolgozó alkalmazások fejlesztésére használnak, amelyeket elosztott számítástechnikai környezetben futtatnak.
A Hadoop segítségével készült alkalmazások nagyméretű adathalmazokon futnak, amelyek egyszerű számítógépek klasztereiben vannak elosztva. Az egyszerű számítógépek olcsók és széles körben elérhetők. Ezek főként nagyobb számítási teljesítmény alacsony költséggel történő elérésére hasznosak.
A személyi számítógép helyi fájlrendszerében tárolt adatokhoz hasonlóan a Hadoopban az adatok egy elosztott fájlrendszerben találhatók, amelyet ún. Hadoop elosztott fájlrendszerA feldolgozási modell a következőn alapul: "Adatok helye" koncepció, amelyben a számítási logika a fürtcsomópontokhoz (szerverekhez) kerül elküldésre, amelyek az adatokat tartalmazzák. Ez a számítási logika egyszerűen egy magas szintű nyelven írt program lefordított változata, például JavaEgy ilyen program feldolgozza a tárolt adatokat Hadoop HDFS.
Tudod? Egy számítógépes klaszter több feldolgozóegységből (tárolólemez + processzor) áll, amelyek egymáshoz kapcsolódnak, és egyetlen rendszerként működnek.
A 2026. április 2-án kiadott 3.5.0-s verzió a jelenlegi stabil kiadás; a 3.4-es vonal továbbra is kap karbantartási frissítéseket.
Hadoop ökoszisztéma és összetevői
Az alábbi ábra a Hadoop ökoszisztéma különböző összetevőit mutatja be, az általuk ellátott feladatok – tárolás, feldolgozás, valamint a körülöttük lévő lekérdezési, betöltési és koordinációs eszközök – szerint csoportosítva.
Az Apache Hadoop két alprojektből áll –
- Hadoop MapReduce: A MapReduce egy számítási modell és szoftver keretrendszer Hadoopon futó alkalmazások írására. Ezek a MapReduce programok hatalmas mennyiségű adat párhuzamos feldolgozására képesek a számítási csomópontok nagy csoportjain.
- HDFS (Hadoop elosztott fájlrendszer): A HDFS gondoskodik a Hadoop-alkalmazások tárolási részéről. A MapReduce alkalmazások HDFS-ből fogyasztanak adatokat. A HDFS több adatblokkot hoz létre, és elosztja azokat egy fürt számítási csomópontjain. Ez az elosztás megbízható és rendkívül gyors számításokat tesz lehetővé.
A jelenlegi kiadások további két alapmodult tartalmaznak. Hadoop FONAL, amelyet a Hadoop 2.x verzióban adtak hozzá, ütemezi a fürtön végzett munkát, és Hadoop Common birtokolja a megosztott Java könyvtárak, amelyekre minden modul támaszkodik. A YARN segítségével olyan motorok, mint a SparkA Tez és a Flink a MapReduce mellett futnak.
Bár a Hadoop leginkább a MapReduce-ról és annak elosztott fájlrendszeréről, a HDFS-ről ismert, a kifejezést a kapcsolódó projektek egy családjára is használják, amelyek az elosztott számítástechnika és a nagyméretű adatfeldolgozás alá tartoznak. Az Apache egyéb Hadoop-hoz kapcsolódó projektjei közé tartozik Kaptár, HBase, Mahout, Sqoop, Flumeés a ZooKeeper.
Hadoop Architectúra
A Hadoop master-slave architektúrával rendelkezik az adattároláshoz és az elosztott adatfeldolgozáshoz, amely a következőket használja: MapReduce és HDFS metódusok. Az alábbi ábra egymás mellé helyezi ezeket a szerepköröket, az egyik oldalon a tárolási réteggel, a másikon pedig a feldolgozási réteggel.
Magas szintű Hadoop Architectúra
NameNode
A NameNode tárolja a névtérben használt összes fájl és könyvtár metaadatait, beleértve azt is, hogy mely blokkok alkotják az egyes fájlokat, és hol találhatók ezek a blokkok.
DataNode
Egy DataNode kezeli egy HDFS csomópont állapotát, és lehetővé teszi a tárolt blokkokkal való interakciót, periodikus blokkjelentésekkel és szívverésekkel küldve visszajelzést a NameNode-nak.
MasterNode
A főcsomópont lehetővé teszi az adatok párhuzamos feldolgozását a Hadoop MapReduce segítségével.
Szolga csomópont
A slave csomópontok a Hadoop klaszter további gépei, amelyek lehetővé teszik az adatok tárolását és összetett számítások futtatását. Ezenkívül minden slave csomópont futtat egy Task-ot.Tracker és egy DataNode. Ez lehetővé teszi a folyamatok szinkronizálását a NameNode-dal és a Job-bal.Tracker rendre.
A Hadoopban a master vagy slave rendszerek beállíthatók a felhőben vagy a helyszínen.
Egy névezési megjegyzés: MunkaTracker és a FeladatTracker az első generációs MapReduce futtatókörnyezethez (MRv1) tartoznak. A Hadoop 2.x-től kezdve a YARN megosztja feladatait egy klaszterszintű Erőforrás menedzserEgy Csomópontkezelő munkavállalónként, és egy Alkalmazásmester jobonként. A NameNode és a DataNode változatlanok.
A Hadoop jellemzői
Alkalmas Big Data elemzésre
As Big adatok Mivel természeténél fogva elosztott és strukturálatlan, a Hadoop klaszterek a legalkalmasabbak a Big Data elemzésére. Mivel a feldolgozási logika (nem maga az adat) áramlik a számítási csomópontokhoz, kevesebb hálózati sávszélességet fogyasztanak. Ezt nevezik adathelyesség fogalma, és segít növelni a Hadoop-alapú alkalmazások hatékonyságát.
Bővíthetőség
A Hadoop klaszterek könnyen skálázhatók bármilyen mértékben további klasztercsomópontok hozzáadásával, így lehetővé téve a Big Data növekedését. A skálázás továbbá nem igényli az alkalmazáslogika módosítását.
Hibatűrés
A Hadoop ökoszisztéma rendelkezik egy olyan lehetőséggel, amely lehetővé teszi a bemeneti adatok más klasztercsomópontokra történő replikálását. Így egy klasztercsomópont meghibásodása esetén az adatfeldolgozás továbbra is folytatódhat egy másik klasztercsomóponton tárolt adatok felhasználásával. A HDFS alapértelmezés szerint minden blokkról három másolatot tart fenn, ezt az értéket a... dfs.replication tulajdonságot, és a NameNode újrareplikálja azokat a blokkokat, amelyek száma ezen szám alá esik.
Hálózati topológia Hadoopban
A hálózat topológiája (elrendezése) befolyásolja a Hadoop klaszter teljesítményét a klaszter méretének növekedésével. A teljesítmény mellett a magas rendelkezésre állásra és a hibák kezelésére is figyelni kell. Ennek eléréséhez a Hadoop klaszter kialakítása hálózati topológiát használ.
Az alábbi fa bemutatja, hogyan modelleződik ez az elrendezés, az adatközponttól az egyes rackekben található csomópontokig.
A hálózati sávszélesség jellemzően fontos tényező bármely hálózat kialakításakor. Mivel azonban a sávszélesség mérése nehézkes lehet, a Hadoopban a hálózatot egy faként ábrázolják, és a fa csomópontjai közötti távolságot (a ugrások számát) tekintik fontos tényezőnek egy Hadoop klaszter kialakításában. Itt két csomópont közötti távolság megegyezik a legközelebbi közös ősüktől való távolságuk összegével.
Egy Hadoop klaszter egy adatközpontból, a rackből és a feladatokat ténylegesen végrehajtó csomópontból áll. Itt az adatközpont rackekből, a rack pedig csomópontokból áll. A folyamatok számára elérhető hálózati sávszélesség a folyamatok helyétől függően változik. Vagyis az elérhető sávszélesség egyre kisebb lesz, ahogy távolodunk a következőktől:
- Folyamatok ugyanazon a csomóponton
- Különböző csomópontok ugyanazon a rack-en
- Csomópontok ugyanazon adatközpont különböző rackjein
- Csomópontok különböző adatközpontokban
A rack-tudatosság ugyanazt a fát használja: a HDFS a replikákat egynél több racken helyezi el, így egy rack-kapcsoló elvesztése nem viszi magával az adatok összes másolatát.



