Mi a kaptár?
Az Apache Hive egy adattárház-rendszer, amelyet a nyílt forráskódú Hadoop platformon fejlesztettek ki, és amelyet az adatok összesítéséhez, nagy adatok lekérdezéséhez, adatelemzéshez stb. Használnak.
A kaptárt a Facebook fejlesztette ki, és későbbi időben átvette az Apache Software Foundation, aki tovább fejlesztette azt nyílt forráskódú név alatt, Apache Hive néven.
Meghatározás:
Ez nem egy relációs adatbázis, ezért nem alkalmas online tranzakciók feldolgozására és valósidejű lekérdezésekre sorszintű frissítésekkel. A kaptárt online analitikai feldolgozásra vagy OLAP-ra tervezték. Ezenkívül a HiveQL nevű lekérdezési nyelvet is biztosítja. Skálázható, gyors és bővíthető. Szinte az SQL-hez hasonló lekérdezéseket konvertálja MapReduce jobokká, nagy mennyiségű adat egyszerű végrehajtása és feldolgozása érdekében. Az Apache-kaptár az egyik Hadoop-elem, amelyet általában az elemzők használnak, míg az apache sertést ugyanahhoz a feladathoz is használják, de inkább a kutatók és a programozók használják. Az Apache kaptár, amely nyílt forráskódú adattárolási rendszer, a Hadoop tárolóban tárolt hatalmas adatkészletek lekérdezésére és elemzésére szolgál. A Hive leginkább kötegelt munkákhoz, és nem online tranzakciós feldolgozási munkatípusokhoz használható. Ezenkívül nem támogatja a valós idejű lekérdezéseket. A kaptár az SQL-hez hasonló lekérdezési nyelvet használ, és főként jelentések készítésére szolgál. A kaptár általában a szerver oldalon van telepítve, és támogatja a strukturált adatokat. A Hive támogatja a JDBC és a BI eszközökkel való integrációt.
A kaptár megértése:
Az alábbiakban bemutatjuk a kaptár főbb alkotóelemeit:
Meta Store:
A metaadatokat tároló lerakatot kaptár-metatárnak nevezzük. A metaadatok a táblákra vonatkozó különféle adatokból állnak, mint például a helyük, a séma, a partíciókról szóló információk, amelyek segítenek nyomon követni a fürtben a különböző módon elosztott adatok előrehaladását. Ezenkívül nyomon követi az adatokat és replikálja az adatokat, amelyek biztonsági másolatot nyújtanak olyan vészhelyzetek esetén, mint például az adatvesztés. A metaadat-információk a relációs adatbázisokban vannak jelen, és nem a Hadoop fájlrendszerben.
Sofőr:
A Hive lekérdezési nyelvi utasítás végrehajtásakor az illesztőprogram megkapja az utasításot, és a teljes végrehajtási ciklusig kezeli. Az utasítás végrehajtásával együtt az illesztőprogram a végrehajtás során generált metaadatokat is tárolja. Ezenkívül munkameneteket hoz létre a különféle kivégzések előrehaladásának és életciklusának figyelemmel kísérésére. A MapReduce feladattal végzett redukciós művelet befejezése után az illesztőprogram összegyűjti a lekérdezés összes adatát és eredményét
Fordítóprogram:
A Hive lekérdezési nyelvének MapReduce bemenetre történő fordításához használják. Meghív egy módszert, amely végrehajtja a HiveQL kimenet elolvasásához szükséges lépéseket és feladatokat a MapReduce igényei szerint.
optimalizáló:
Az optimalizáló fő feladata a hatékonyság és a skálázhatóság javítása, feladat létrehozása, miközben az adatokat átalakítják a redukciós művelet előtt. Ezenkívül olyan átalakításokat hajt végre, mint az aggregáció, a csővezeték átalakítása egyetlen illesztéssel több csatlakozáshoz.
Végrehajtó:
Az összeállítás és az optimalizálás után a végrehajtó fő feladata a feladatok végrehajtása. A végrehajtó fő feladata, hogy kölcsönhatásba lépjen a Hadoop job tracker-rel a futtatásra kész feladatok ütemezéséhez.
UI, Thrift szerver és CLI:
A takarékosság-kiszolgálót más ügyfelek is használják, hogy kapcsolatba lépjenek a Hive motorral. A felhasználói felület és a parancssori felület segíti a lekérdezések benyújtását, valamint a folyamatfigyelést és az utasításokat, hogy a külső felhasználók interakcióba léphessenek a kaptárral.
Az alábbiakban bemutatjuk a kaptár kölcsönhatását a Hadoop keretrendszerrel:
A lekérdezés végrehajtása:
A lekérdezést a kaptár interfészekből, például a parancssorból vagy a webes felhasználói felületről küldik az illesztőprogramnak. Illesztőprogram lehet bármilyen adatbázis-illesztőprogram, például JDB vagy ODBC stb.
A terv megszerzése:
A lekérdezés vagy a lekérdezési terv követelményének szintaxisa ellenőrizhető egy lekérdezés-fordító segítségével, amely áthalad a lekérdezésen, és a meghajtó meghívja azt.
A metaadatok beolvasása:
A metatár bármely adatbázisban található, és a fordító kérést tesz a metaadatok elérésére.
Metaadatok küldése:
A fordító kérésére a metatár elküldi a metaadatokat.
A terv elküldése:
A fordító elküldi a tervet az illesztőprogramnak, amikor ellenőrzi a fordító által küldött követelményeket. Ez a lépés befejezi a lekérdezés elemzését és összeállítását.
A terv végrehajtása:
A végrehajtási tervet a vezető küldi a végrehajtó motornak.
A feladat végrehajtása:
A feladat végrehajtása egy MapReduce job, amely a háttérben fut. Ezután követi a Hadoop keretrendszerének szokásos gyakorlatát - a végrehajtó motor elküldi a feladatot a névkövetőben található jobkövetőnek, és a névcsomópont viszont hozzárendeli a feladatot az adatmegjegyzésben szereplő feladatkövetőhöz. A MapReduce feladat itt kerül végrehajtásra.
Metaadat Ops:
A feladat végrehajtása közben a végrehajtó motor metaadat-műveleteket hajthat végre a meta tárolóval.
Az eredmény lekérése:
A feldolgozás befejezése után az adatcsomópontok továbbítják az eredményt a végrehajtó motornak.
Az eredmény elküldése
A vezető megkapja az eredményt a végrehajtó motorról.
Küldés eredménye:
Végül a Hive interfészek megkapják az eredményt az illesztőprogramtól.
Így a fenti lépések végrehajtásával a Hive teljes lekérdezés-végrehajtásra kerül.
Hogyan könnyíti meg a kaptár a munkát?
A Hive a Hadoop tetejére épített adattárolási keretrendszer, amely elősegíti a felhasználót az adatok elemzésében, lekérdezésben és az adatok összesítésében nagy mennyiségű adatkészletnél. A HiveQL egyedülálló szolgáltatás, amely úgy néz ki, mint az adatbázisban tárolt SQL adatok, és elvégzi a kiterjedt elemzést. Nagyon nagy sebességgel tudtam adatokat olvasni, az adatokat tárolni az adattárházakba, és képes kezelni a több helyre elosztott nagy adatkészleteket. Emellett a kaptár felépíti az adatbázisban tárolt adatokat is, és a felhasználók parancssori eszköz vagy JDBC illesztőprogram segítségével csatlakozhatnak a kaptárhoz.
Legnépszerűbb cégek:
A nagy adatokkal foglalkozó nagy szervezetek - például a facebook, az Amazon, a Walmart és sok más - használtak kaptárot.
Mit tehetsz Hive-vel?
A kaptárnak sok olyan funkciója van, mint az adatkérdezés, az adatok összefoglalása és az elemzés. A Hive támogatja a HiveQL vagy Hive Query Language nevű lekérdezési nyelvet. A Hive lekérdezési nyelvi lekérdezései lefordítódnak a MapReduce jobba, amely a Hadoop fürtön kerül feldolgozásra. Ezen kívül a Hiveql csökkenti a lekérdezésekbe felvehető szkriptet is. Ily módon a HiveQL növeli a sématervezés rugalmasságát, amely támogatja az adatok érdemessé tételét és az adatok sorosítását is.
Munka a kaptárral:
Az alábbiakban bemutatjuk a Hive működési részleteit. A kaptár adattípusa nagyjából négy típusba sorolható, az alábbiak szerint:
- Oszlop típusok
- Literálok
- Null értékek
- Komplex típusok
1. Oszlop típusok:
Ezek a kaptár oszlop adattípusai. Ezeket az alábbiak szerint osztályozzuk:
- Integrált típusok: Az egész számot az integrált adattípus felhasználásával ábrázoljuk. A szimbólum INT. Az INT felső határát meghaladó adatokhoz a BIGINT adattípust kell hozzárendelni. Ugyanígy, az INT alsó határa alatt lévő minden adatot SMALLINT hozzá kell rendelni. Van egy másik adattípus, TINYINT, amely még kisebb, mint a SMALLINT.
- Karakterlánc típusok: A karakterlánc adattípust a kaptárban egyetlen idézőjel (') vagy dupla idézőjel (") jelöli. Kétféle lehet: VARCHAR vagy CHAR.
- Időbélyeg: A kaptár időbélyegzője a java.sql.t támogatja. Az „éééé-hh-hh órás: hh: ss.ffffffffff” időbélyeg formátum és „ÉÉÉÉ-HH-NN HH: HH: HH: SS.fffffffff” formátum.
- Dátum: A dátum a kaptárban ÉÉÉÉ-HH-NN formátumban jelenik meg, amely év-hónap-napot ábrázol.
- Tizedesjegyek : A kaptár tizedesjegyei java nagy tizedes formátumban vannak ábrázolva, és változatlan tetszőleges pontosságot képviselnek. Tizedes (pontosság, skála) formátumban jelenik meg.
- Uniós típusok: Az uniót a kaptárban használják heterogén adattípus gyűjteményének létrehozására. Ez létrehozható unió létrehozásával.
Az alábbiakban bemutatunk egy példát:
UNIONTYPE
(0:1)
(1:2.0)
(2:("three", "four"))
(3:("a":5, "b":"five"))
(2:("six", "seven"))
(3:("a":8, "b":"eight"))
(0:9)
(1:10.0)UNIONTYPE
(0:1)
(1:2.0)
(2:("three", "four"))
(3:("a":5, "b":"five"))
(2:("six", "seven"))
(3:("a":8, "b":"eight"))
(0:9)
(1:10.0)
2. Irodalom:
A kaptárban kevés olyan literál van felhasználva. Ezek a következők:
- Lebegőpontos típus : számot mutatnak tizedes pontossággal. Ezek nagyon hasonlóak a kettős adattípushoz.
- Tizedes típus : Ez az adattípus csak decimális típusú adatokat tartalmaz, de a lebegőpontos érték nagyobb tartományban van, mint a kettős adattípus. A tizedes típus típusa megközelítőleg -10 -308 és 10 308 között van.
3. Nulla érték:
A NULL speciális érték a kaptárban hiányzó értékeket képviseli.
4. Komplex típusok:
Az alábbiakban a kaptárban található különféle komplex típusok találhatók:
- Tömbök : A tömbök a kaptár formájában vannak ábrázolva, mint a java. A szintaxis olyan, mint az ARRAY.
- Térkép : A térképeket a kaptárban a java formájával azonos formában ábrázoljuk. A szintaxis olyan, mint a MAP
- .
- Strukták : A kaptárban lévő sztruszok összetett adatokként vannak feltüntetve, kommentárokkal. A szintaxis olyan, mint a
STRUCT.
Mindezeken túl adatbázisokat, táblázatokat készíthetünk, particionálhatunk és sok más funkciót is létrehozhatunk.
- Adatbázisok: Ezek a névterek, amelyek táblázatok gyűjteményét tartalmazzák. Az alábbiakban egy szintaxist hozunk létre egy adatbázisban egy kaptárban.
CREATE DATABASE (IF NOT EXISTS) sampled;
Az adatbázisokat le is bonthatjuk, ha már nincs rá szükségük. Az alábbiakban bemutatjuk az adatbázis eldobásának szintaxisát.
DROP DATABASE (IF EXISTS) sampled;
- Táblázatok: Az adatok tárolására a kaptárban is létrehozhatók. Az alábbiakban bemutatjuk a táblázat létrehozásának szintaxisát.
CREATE (TEMPORARY) (EXTERNAL) TABLE (IF NOT EXISTS) (db_name.) table_nam
((col_name data_type (COMMENT col_comment), …)) (COMMENT table_comment
(ROW FORMAT row_format) (STORED AS file_format)
Asztalt is le lehet dobni, ha már nincs rá szüksége. Az alábbiakban bemutatjuk a táblázat eldobásának szintaxisát.
DROP TABLE (IF EXISTS) table_name;
Előnyök
Az Apache Hive fő előnye az adatok lekérdezése, összegzése és elemzése. A kaptárt a fejlesztő jobb termelékenységére fejlesztették ki, és a késés növekedésének és a hatékonyság csökkenésének a költségeivel is jár. Az Apache Hive a felhasználó által definiált funkciók széles skáláját kínálja, amelyek összekapcsolhatók más Hadoop csomagokkal, például az RHipe, az Apache Mahout stb.. Ez nagymértékben segíti a fejlesztőket, ha összetett analitikus feldolgozással és több adatformátummal dolgozik. Főként adattárolásra használják, ami jelentési és adatelemzési rendszert jelent.
Ez magában foglalja az adatok tisztítását, átalakítását és modellezését, hogy hasznos információkat nyújtson a különféle üzleti szempontokról, amelyek elősegítik a szervezet számára előnyök létrehozását. Adatok elemzése sokféle szempontból és megközelítésből áll, amelyek különböző technikákat foglalnak magukban, különféle nevekkel, különböző üzleti modellekben, társadalomtudományi területeken stb. A kaptár felhasználóbarát, és lehetővé teszi a felhasználók számára, hogy egyidejűleg hozzáférjenek az adatokhoz, növelve a válaszidőt. A hatalmas adatsorok más típusú kérdéseivel összehasonlítva a kaptár válaszideje sokkal gyorsabb, mint másoknál. A teljesítmény szempontjából sokkal rugalmasabb, ha további adatokat ad hozzá, és növeli a klaszterben lévő csomópontok számát.
Miért használjuk a kaptárt?
Az adatelemzés mellett a kaptár számos lehetőséget kínál az adatok HDFS-be történő tárolására. A kaptár támogatja a különféle fájlrendszereket, például lapos vagy szöveges fájlokat, bináris kulcs-érték párokból álló szekvencia fájlokat, RC fájlokat, amelyek egy táblázat oszlopát tárolják egy oszlopos adatbázisban. Manapság a Hive-hez a legmegfelelőbb fájlt ORC-fájloknak vagy Optimalizált sor oszlopos fájloknak nevezzük.
Miért van szükségünk Hive-re?
A mai világban a Hadoop a legszélesebb körben elterjedt technológiákhoz kapcsolódik, amelyeket a nagy adatfeldolgozáshoz használnak. Az adatok elemzéséhez és más nagy adatfeldolgozáshoz használt eszközök és technológiák nagyon gazdag gyűjteménye.
Ki a megfelelő közönség a kaptártechnikák tanulásához?
Leginkább fejlesztők, Hadoop elemzők, rendszergazdák, adattárházak, SQL szakemberek és Hadoop adminisztrátorok tapasztalatai képesek elsajátítani a kaptárt.
Hogyan segít ez a technológia a karrier növekedésében?
A kaptár manapság a piacon az egyik legfejlettebb készség, és az egyik legjobb eszköz az adatelemzéshez a nagy adathalmazú Hadoop világában. A nagy adathalmazokat elemző nagyvállalatok mindig képességekkel rendelkező embereket keresnek, így hatalmas mennyiségű adatot tudnak kezelni és lekérdezni. A kaptár az utóbbi napokban az egyik legjobb eszköz, amely a nagy adatfeldolgozó technológiák piacán elérhető, és amely segíti a világ minden tájáról származó szervezetet az adatok elemzésében.
Következtetés:
A fenti funkciókon kívül a kaptár sokkal fejlettebb képességekkel rendelkezik. A kaptár hatalma nagyszámú adatkészlet nagy pontosságú feldolgozására teszi a kaptárt az egyik legjobb eszközként az elemzéshez a nagy adatplatformon. Ezen felül nagy lehetősége van annak, hogy az elkövetkező napokban az egyik vezető nagy adatanalitikai eszközré váljon az időszakos fejlesztések és a végfelhasználó számára történő könnyű használat miatt.
Ajánlott cikkek
Ez egy útmutató a Mi van a kaptár felé. Itt megbeszéljük a Hive és a technológiát alkalmazó vezető vállalatok munkáját, készségeit, karrier-növekedését, előnyeit. A további javasolt cikkeken keresztül további információkat is megtudhat -
- Kaptárparancsok
- Kaptárinterjúval kapcsolatos kérdések
- Mi az Azure?
- Mi a Big Data Technology?
- Kaptárépítés | Meghatározás
- Az ORDER BY funkció használata a kaptárban