java program felépítése
Az Apache HBase egy nyílt forráskódú, elosztott, nem relációs adatbázis, amelyet a Google Bigtable-jéről készítettek és Java-ban írtak. A Hadoop és a HDFS (Hadoop Distributed Filesystem) tetején a Bigtable-hez hasonló képességeket biztosít, azaz hibatűrő módon biztosítja a nagy mennyiségű, ritka adat tárolását, ami sok nagy adatfelhasználási esetben általános. A HBase a Big Data valós idejű olvasási / írási hozzáférésére szolgál.
A HBase Storage architektúra számos komponenst tartalmaz. Nézzük meg ezeknek az összetevőknek a funkcióit, és tudjuk, hogyan íródnak az adatok.
HFájlok:
A HFiles alkotja a HBase architektúrájának alacsony szintjét. A HFile fájlok a HBase adatainak gyors és hatékony tárolására létrehozott tárfájlok.
HMaster:
A HMaster feladata, hogy a HBase indításakor minden egyes HRegionServerhez hozzárendelje a régiókat. Feladata a sorokkal, táblákkal és azok koordinációs tevékenységeivel kapcsolatos dolgok kezelése. A Hmaster rendelkezik a metaadatok részleteivel is.
Alkatrészek HBase:
A HBase a következő összetevőket tartalmazza:
- Táblázat - A régiókat tartalmazza
- Régió - együtt tárolt sorok tartománya
- Region Servers - Egy vagy több régiót szolgál ki
- Master Server - A Daemon felelős a HBase-fürt kezeléséért
A HBase adatokat közvetlenül a HDFS-be tárolja, és nagyban támaszkodik a HDFS magas rendelkezésre állási és hibatűrési képességeire.
HBase Storage architektúra:
Az általános folyamat az, hogy az ügyfél először felveszi a kapcsolatot a Zookeeperrel, hogy megtalálja az adott sor kulcsát. Ezt úgy teszi, hogy lekéri a szerver nevét a Zookeeper-től. Ezzel az információval most lekérdezheti a szervert, hogy megkapja azt a szervert, amely a metatable-t tartja. Mindkét részlet gyorsítótárban van, és csak egyszer keresték fel őket. Végül lekérdezheti a metaszervert, és lekérheti azt a kiszolgálót, amely rendelkezik az ügyfél által keresett sorral.
Miután megtudta, hogy a sor melyik régióban található, tárolja ezeket az információkat is, és közvetlenül kapcsolatba lép a HRegionServerrel. Tehát az idő múlásával az Ügyfél teljes körű információval rendelkezik arról, hogy honnan szerezzen sorokat, anélkül, hogy újra meg kellene kérdeznie a metaszervert. A HRegion megnyitásakor minden HColumnFamily számára létrehoz egy Store példányt minden táblához. Az adatok akkor íródnak, amikor az Ügyfél kérést intéz a HRegionServerhez, amely megadja a részleteket az egyező HRegion példánynak. Az első lépés az, hogy el kell döntenünk, hogy az adatokat először a HLog osztály által képviselt „Write-Ahead-Log” (WAL) -ba kell írni. A döntés az ügyfél által beállított zászló alapján történik.
Miután az adatokat beírta a WAL-ba, a MemStore-ba kerül. Ezzel egyidejűleg a Memstore ellenőrzi, hogy megtelt-e, és ebben az esetben a lemezre történő áthelyezést kérik. Ezután az adatokat beírják a HFile-be.
Van egy kérdésünk? Említse meg őket a megjegyzések részben, és mi kapcsolatba lépünk Önnel.
Kapcsolódó hozzászólások
Betekintés a HBase architektúrájába