Mi az a Hadoop? Bevezetés, Architecture, ökoszisztéma, összetevők

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 épített alkalmazások nagy adathalmazokon futnak, amelyek árucikkek fürtjei között vannak elosztva. Az árucikk 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 eléréséhez használhatók alacsony költséggel.

Hasonlóan a személyi számítógépes rendszer helyi fájlrendszerében található adatokhoz, a Hadoopban az adatok egy elosztott fájlrendszerben találhatók, amelyet ún. Hadoop elosztott fájlrendszer. A feldolgozási modell alapja "Adatok helye" koncepció, amelyben a számítási logikát adatokat tartalmazó fürtcsomópontokhoz (szerverekhez) küldik. Ez a számítási logika nem más, mint egy magas szintű nyelven írt program lefordított változata, mint pl. Java. Egy ilyen program feldolgozza a benne tárolt adatokat Hadoop HDFS.

Tudod? A számítógépfürt több feldolgozó egység készletéből áll (tárolólemez + processzor), amelyek egymással kapcsolatban vannak, és egyetlen rendszerként működnek.

Hadoop EcoSystem és összetevők

Az alábbi diagram a Hadoop ökoszisztéma különböző összetevőit mutatja.

Hadoop EcoSystem és összetevők

Az Apache Hadoop két alprojektből áll –

  1. 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.
  2. 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é.

Bár a Hadoop leginkább a MapReduce-ról és elosztott fájlrendszeréről, a HDFS-ről ismert, a kifejezést a kapcsolódó projektek családjára is használják, amelyek az elosztott számítástechnika és a nagyszabású adatfeldolgozás ernyője alá tartoznak. Egyéb Hadoop-hoz kapcsolódó projektek itt Apache közé tartoznak Hive, HBase, Mahout, Sqoop, Flume és ZooKeeper.

Hadoop Architectúra

Hadoop Architectúra
Magas szintű Hadoop Architectúra

A Hadoopnak van egy Master-Slave-je Archiadattárolási és elosztott adatfeldolgozási technológiát használva MapReduce és HDFS módszerek.

Névcsomópont:

A NameNode a névtérben használt összes fájlt és könyvtárat képviselte

DataNode:

A DataNode segít a HDFS-csomópont állapotának kezelésében, és lehetővé teszi a blokkokkal való interakciót

MasterNode:

A főcsomópont lehetővé teszi az adatok párhuzamos feldolgozását a Hadoop MapReduce segítségével.

Slave csomópont:

A szolga csomópontok a Hadoop-fürt további gépei, amelyek lehetővé teszik az adatok tárolását összetett számítások elvégzéséhez. Ezenkívül az összes szolga csomóponthoz tartozik Task Tracker és egy DataNode. Ez lehetővé teszi a folyamatok szinkronizálását a NameNode-dal és a Job Trackerrel.

A Hadoopban a mester vagy a szolga rendszer beállítható a felhőben vagy a helyszínen

A 'Hadoop' jellemzői

• Alkalmas Big Data elemzésére

Mivel a Big Data általában elosztott és strukturálatlan jellegű, a HADOOP-fürtök a legalkalmasabbak a Big Data elemzésére. Mivel a feldolgozási logika (nem a tényleges adatok) áramlik a számítási csomópontokhoz, kevesebb hálózati sávszélességet használnak fel. Ezt a koncepciót ún adathelyesség fogalma ami segít növelni a Hadoop alapú alkalmazások hatékonyságát.

• Skálázhatóság

A HADOOP-fürtök további fürtcsomópontok hozzáadásával bármilyen mértékben könnyen méretezhetők, így lehetővé válik a Big Data növekedése. Ezenkívül a méretezés nem igényli az alkalmazáslogika módosítását.

• Hibatűrés

A HADOOP ökoszisztéma rendelkezik a bemeneti adatok replikálására más fürtcsomópontokkal. Így a fürtcsomópont meghibásodása esetén az adatfeldolgozás továbbra is folytatódhat egy másik fürtcsomóponton tárolt adatok felhasználásával.

Hálózati topológia a Hadoopban

A hálózat topológiája (elrendezése) befolyásolja a Hadoop-fürt teljesítményét, amikor a Hadoop-fürt mérete nő. A teljesítmény mellett a magas rendelkezésre állásra és a meghibásodások kezelésére is ügyelni kell. A Hadoop elérése érdekében a fürtképzés a hálózati topológiát használja.

Hálózati topológia a Hadoopban

Általában a hálózati sávszélesség fontos tényező, amelyet figyelembe kell venni 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 faként ábrázolják, és a fa csomópontjai közötti távolságot (ugrások száma) fontos tényezőnek tekintik a Hadoop-klaszter kialakulásában. Itt a két csomópont távolsága megegyezik a legközelebbi közös ősük távolságának összegével.

A Hadoop-fürt egy adatközpontból, a rackből és a feladatokat ténylegesen végrehajtó csomópontból áll. Itt az adatközpont állványokbó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. Ez azt jelenti, hogy a rendelkezésre álló sávszélesség csökken, ahogy távolodunk a

  • 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