Tartalom
- De először nézzük meg, hogyan működik a Hadoop
- Hadoop Common
- Hadoop elosztott fájlrendszer (HDFS)
- MapReduce
- HBase
- Kaptár
- Nincsenek hibák, nincs stressz - Az Ön életét megváltoztató szoftverek készítésének lépésről lépésre történő leírása az élet megsemmisítése nélkül
- Apache Pig
- Apache Spark
- Apache Cassandra
- Még egy erőforrás-tárgyaló (YARN)
- Impala
Forrás: Trueffelpix / Dreamstime.com
Elvitel:
Annak érdekében, hogy valóban megértsük a nagy adatokat, meg kell értenünk egy kissé a Hadoop-ot és a körülötte lévő nyelvet.
A nagy adatok - a strukturált, strukturálatlan vagy félig strukturált adatok hatalmas mennyiségének fülbemászó neve - hírhedten nehéz a begyűjtése, tárolása, kezelése, megosztása, elemzése és megjelenítése, legalábbis a hagyományos adatbázis és szoftver alkalmazások segítségével. Ez az oka annak, hogy a nagy adattechnológiák képesek-e hatékonyan és eredményesen kezelni és feldolgozni a hatalmas mennyiségű adatmennyiséget. És az Apache Hadoop, amely keretet és kapcsolódó technológiákat biztosít a nagy adatkészletek elosztott módon történő feldolgozására a számítógépcsoportok között. Tehát ahhoz, hogy valóban megértsük a nagy adatokat, meg kell értenünk egy kicsit a Hadoopról. Itt nézze meg a legfontosabb kifejezéseket, amelyeket Hadoop kapcsán hallani fogsz - és mit értenek ezekben.
De először nézzük meg, hogyan működik a Hadoop
Mielőtt belépne a Hadoop ökoszisztémába, meg kell értenie két alapvető dolgot. Az első a fájl tárolásának módja a Hadoop-ban; a második a tárolt adatok feldolgozása. Az összes Hadoop-technológia elsősorban ezen a két területen működik, és felhasználóbarátabbá teszi. (Ismerje meg a Hadoop működésének alapjait, hogyan segít a Hadoop a nagy adatprobléma megoldásában.)
Most tovább a feltételekhez.
Hadoop Common
A Hadoop keretrendszernek különböző moduljai vannak a különböző funkciókhoz, és ezek a modulok különböző okokból kölcsönhatásba léphetnek egymással. A Hadoop Common meghatározható közös közüzemi könyvtárként, amely támogatja ezeket a modulokat a Hadoop ökoszisztémájában. Ezek a segédprogramok alapvetően Java-alapú, archivált (JAR) fájlok. Ezeket a segédprogramokat főként a programozók és a fejlesztők használják a fejlesztési idő alatt.
Hadoop elosztott fájlrendszer (HDFS)
A Hadoop Distributed File System (HDFS) az Apache Hadoop alprojektje, az Apache Software Foundation keretében. Ez a tárolás gerince a Hadoop keretrendszerben. Ez egy elosztott, méretezhető és hibatűrő fájlrendszer, amely a Hadoop klaszter néven ismert árucikkek több hardverén átterjed. A HDFS célja, hogy hatalmas mennyiségű adatot tároljon megbízhatóan, nagy teljesítményű hozzáféréssel az alkalmazási adatokhoz. A HDFS a master / slave architektúrát követi, ahol a master neve NameNode, a slave pedig DataNodes.
MapReduce
A Hadoop MapReduce az Apache Software Foundation alprojektje. A MapReduce valójában egy kizárólag Java nyelven írt szoftver keret. Elsődleges célja a nagy adatkészletek egy párhuzamos módon történő feldolgozása elosztott környezetben (árucikkekből álló hardverből). A keretrendszer kezeli az összes tevékenységet, például a feladatok ütemezését, megfigyelését, végrehajtását és újra végrehajtását (sikertelen feladatok esetén).
HBase
Az Apache HBase Hadoop adatbázis néven ismert. Ez egy oszlopos, elosztott és méretezhető nagy adattár. Ez a NoSQL adatbázis típusa is ismert, amely nem relációs adatbázis-kezelő rendszer. A HBase alkalmazásokat szintén Java nyelven írják, a Hadoop tetejére épülnek és a HDFS-en futnak. A HBase akkor használható, amikor valós idejű olvasásra / írásra és véletlenszerű hozzáférésre van szüksége a nagy adatokhoz. A HBase a Googles BigTable koncepciókon alapul.
Kaptár
Az Apache Hive egy nyílt forráskódú adattárház szoftver. A Hive-t eredetileg azelőtt fejlesztette ki, hogy az Apache Software Foundation alá került és nyílt forrásúvá vált. Megkönnyíti a nagy adatsorok kezelését és lekérdezését az elosztott Hadoop kompatibilis tárolón. A Hive minden tevékenységét egy SQL-szerű nyelv, a HiveQL néven használja. (További információ az Apache Hive and Pig rövid ismertetésében.)
Nincsenek hibák, nincs stressz - Az Ön életét megváltoztató szoftverek készítésének lépésről lépésre történő leírása az élet megsemmisítése nélkül
Nem javíthatja a programozási készségét, ha senki sem törődik a szoftver minőségével.
Apache Pig
A Pigot eredetileg a Yahoo kezdeményezte a MapReduce feladatok kidolgozására és végrehajtására nagy mennyiségű elosztott adatban. Most nyílt forrású projektévé vált az Apache Software Foundation keretében. Az Apache Pig úgy definiálható, mint egy platform a nagyon nagy adatkészletek hatékony elemzésére. A sertésinfrastruktúra-réteg a MapReduce feladatok sorozatait hozza létre a tényleges feldolgozás elvégzéséhez. A sertések nyelvi rétegét Pig Latin néven ismerték, és SQL-szerű funkciókat kínálnak az elosztott adatkészletekre vonatkozó lekérdezések végrehajtására.
Apache Spark
A Sparkot eredetileg az AMPLab fejlesztette ki az UC Berkeleynél. 2014 februárjában vált az Apache legfelső szintű projektjévé. Az Apache Spark nyílt forrású, általános célú, klaszter-számítási keretként definiálható, amely sokkal gyorsabbá teszi az adatok elemzését. A Hadoop elosztott fájlrendszer tetejére épül, de nincs összekapcsolva a MapReduce keretrendszerrel. A Sparks teljesítménye sokkal gyorsabb, mint a MapReduce. Magas szintű API-kat biztosít a Scala, Python és Java nyelven.
Apache Cassandra
Az Apache Cassandra egy másik nyílt forráskódú NoSQL adatbázis. A Cassandra-t széles körben használják nagy mennyiségű strukturált, félig strukturált és strukturálatlan adatátvitel kezelésére több adatközponton és felhőtárolón keresztül. A Cassandra egy "mester nélküli" architektúrán alapul, vagyis nem támogatja a master / slave modellt. Ebben az architektúrában az összes csomópont azonos és az adatok automatikusan és egyenlően oszlanak meg az összes csomópont között. A kasandrák legfontosabb tulajdonságai a folyamatos rendelkezésre állás, a lineáris méretezhetőség, a beépített / testreszabható replikáció, egyetlen hibapont és a működési egyszerűség.
Még egy erőforrás-tárgyaló (YARN)
Még egy másik erőforrás-tárgyaló (YARN) is ismert MapReduce 2.0 néven, de valójában a Hadoop 2.0 alá tartozik. A YARN definiálható mint munka ütemezési és erőforrás-kezelési keret. A YARN alapgondolata a JobTracker funkcióinak kicserélése két különálló démonra, amelyek felelősek az erőforrás-kezelésért és az ütemezésért / megfigyelésért. Ebben az új keretben lesz egy globális ResourceManager (RM) és egy alkalmazás-specifikus mester, az úgynevezett ApplicationMaster (AM). A globális ResourceManager (RM) és a NodeManager (csomópont rabszolgánként) képezik az aktuális adatok számítási keretét. A meglévő MapReduce v1 alkalmazások is futtathatók a YARN-en, de ezeket az alkalmazásokat újra kell fordítani a Hadoop2.x jar-ekkel.
Impala
Az Impala meghatározható egy hatalmas párhuzamos feldolgozás (MPP) teljesítményű SQL lekérdező motorként. Natív módon fut az Apache Hadoop keretén. Az Impala a Hadoop ökoszisztéma része. Ugyanazt a rugalmas fájlrendszert (HDFS), metaadatokat, erőforrás-kezelési és biztonsági kereteket osztja meg, mint a többi Hadoop ökoszisztéma-összetevőt. A legfontosabb észrevenni, hogy az Impala sokkal gyorsabb a lekérdezések feldolgozásában, mint a Hive. Nem szabad megfeledkeznünk arról sem, hogy az Impala egy kis adatkészlet lekérdezésére / elemzésére szolgál, és elsősorban elemzett eszközként lett kifejlesztve, amely feldolgozott és strukturált adatokra működik.
A Hadoop fontos téma az informatika területén, de vannak olyanok, akik szkeptikusak a hosszú távú életképességével kapcsolatban. Tudjon meg többet arról, mi az a Hadoop? A cinikus elmélet.