Legjobb kaptárparancsok példákkal a HQL-ben



Ez a blog a Hive parancsokat tárgyalja példákkal a HQL-ben. CREATE, DROP, TRUNCATE, ALTER, SHOW, DESCRIBE, USE, LOAD, INSERT, JOIN és még sok más kaptárparancs

Ebben a blogbejegyzésben vitassuk meg a Hive legnépszerűbb parancsait példákkal. Ezek a Hive parancsok nagyon fontosak annak megalapozásához .

Megjelent az Edureka 2019 Tech Karrier Útmutató! A legforróbb munkakörök, pontos tanulási utak, iparági kilátások és egyebek az útmutatóban. Letöltés Most.

Mi a Hive?

Az Apache Hive egy olyan adattárház-rendszer, amely a Hadoop-on működik. Az elosztott tárhelyen található nagy adatkészletek lekérdezésére és kezelésére használják. Mielőtt az Apache Hadoop nyílt forráskódú projektjévé vált, a Hive a Facebook-on keletkezett. Mechanizmust biztosít a Hadoop-ban lévő adatok struktúrájának kivetítésére és az adatok lekérdezésére egy SQL-szerű, HiveQL (HQL) nevű nyelv segítségével.





A Hive-t azért használják, mert a Hive-ben lévő táblák hasonlóak egy relációs adatbázis tábláihoz. Ha ismeri az SQL-t, az egy tortaút. Sok felhasználó egyszerre lekérdezheti az adatokat a Hive-QL használatával.

Mi a HQL?

A Hive egyszerű SQL-szerű lekérdezési nyelvet határoz meg a Hive-QL (HQL) nevű nagy adatkészletek lekérdezéséhez és kezeléséhez. Könnyen használható, ha ismeri az SQL nyelvet. A Hive lehetővé teszi a nyelvet ismerő programozók számára az egyedi MapReduce keretrendszer megírását, hogy kifinomultabb elemzést hajtsanak végre.



A kaptár felhasználása:

1. Az Apache Hive elosztott tárhelye.

2. A Hive olyan eszközöket kínál, amelyek megkönnyítik az adatok kinyerését / átalakítását / betöltését (ETL)

3. Különböző adatformátumok felépítését biztosítja.



4. A Hive használatával hozzáférhetünk a Hadoop elosztott fájlrendszerben tárolt fájlokhoz (a HDFS lekérdezésére és kezelésére használják a benn található nagy adathalmazokat) vagy más adattároló rendszerekben, például az Apache HBase-ben.

A kaptár korlátai:

A & bull Hive nem online tranzakciófeldolgozáshoz (OLTP) készült, csak az online analitikai feldolgozáshoz.

& bull Hive támogatja az adatok felülírását vagy elfogását, de nem frissíti és nem törli.

& bull A Hive-ban az alkérdezések nem támogatottak.

Miért használják a Hive-t disznó ellenére?

Az alábbiakban bemutatjuk azokat az okokat, amelyek miatt a Hive-ot disznó elérhetősége ellenére használják:

  • A Hive-QL deklaratív nyelvi sor az SQL, a PigLatin egy adatfolyam-nyelv.
  • Pig: adatfolyam nyelv és környezet nagyon nagy adatkészletek feltárásához.
  • Hive: elosztott adattárház.

A kaptár összetevői:

Metastore:

A Hive a Hive táblák sémáját egy Hive Metastore-ban tárolja. A Metastore a táblában és a partícióban található összes információ tárolására szolgál. Alapértelmezés szerint a metastore ugyanabban a folyamatban fut, mint a Hive szolgáltatás, és az alapértelmezett metastore a DerBy Database.

SerDe:

A Serializer, a Deserializer utasításokat ad a rekord feldolgozására.

Hive parancsok:

Adatmeghatározási nyelv (DDL)

A DDL utasítások az adatbázisban lévő táblák és egyéb objektumok felépítésére és módosítására szolgálnak.

DDL parancs Funkció
TEREMT Táblázat vagy adatbázis létrehozására szolgál
ELŐADÁS Adatbázis, tábla, tulajdonságok stb
KOR A meglévő táblázat módosításaihoz használható
LEÍRÁS Leírja a táblázat oszlopait
TRUNCATE A táblázat sorainak végleges csonkítására és törlésére szolgál
TÖRÖL Törli a táblázat adatait, de visszaállítható

Menjen a Hive shellbe a sudo hive parancs megadásával, és írja be a parancsot 'teremt adatbázis név> hogy létrehozza az új adatbázist a kaptárban.

Hive adatbázis létrehozása a Hive parancsok segítségével

A Hive raktárban található adatbázisok felsorolásához írja be a következő parancsot: adatbázisok megjelenítése ”.

Az adatbázis a Hive raktár alapértelmezett helyén hoz létre. A Cloudera Hive adatbázis-tárolójában egy / user / hive / raktár található.

Az adatbázis használatára szolgáló parancs a következő: HASZNÁLAT

Másolja a bemeneti adatokat a HDFS-be a helyi fájlról a Másolás helyről parancs használatával.

Amikor létrehozunk egy táblázatot a kaptárban, akkor a kaptárraktár alapértelmezett helyén jön létre. - „/ felhasználó / kaptár / raktár”, a tábla létrehozása után áthelyezhetjük az adatokat a HDFS-ről a kaptár táblára.

A következő parancs létrehoz egy táblázatot a következővel: /user/hive/warehouse/retail.db

Jegyzet : retail.db a Hive raktárban létrehozott adatbázis.

Írja le információt nyújt a táblázat sémájáról.

Adatmanipulációs nyelv (DML)

A DML utasításokat az adatok lekérésére, tárolására, módosítására, törlésére, beillesztésére és frissítésére használják az adatbázisban.

Példa :

TÖLTÉS, INSERT nyilatkozatok.

Szintaxis:

LOAD adatok beírása a táblába [tablename]

A Betöltés művelettel az adatok áthelyezhetők a megfelelő Hive táblába. Ha a kulcsszó helyi meg van adva, akkor a load parancsban megadja a helyi fájlrendszer elérési útját. Ha a local kulcsszó nincs megadva, akkor a fájl HDFS elérési útját kell használnunk.

hogyan állítsunk össze egy java programot

Íme néhány példa a LOAD data LOCAL parancsra

Miután betöltötte az adatokat a Hive táblába, alkalmazhatjuk az adatkezelési utasításokat, vagy az összesített függvények lekérhetik az adatokat.

Példa a rekordok számolására:

A Count aggregate függvényt a táblázatban lévő rekordok számának megszámlálásával használják.

„Külső létrehozása” táblázat:

Az külső létrehozása kulcsszóval hozza létre a táblázatot, és helyet biztosít a tábla létrehozásához, így a Hive nem használ alapértelmezett helyet ehhez a táblához. An KÜLSŐ táblázat a HDFS bármelyik helyére mutat a tárolására, az alapértelmezett tárhely helyett.

Parancs beillesztése:

Az betét paranccsal tölthetők be az adatok Hive tábla. A beszúrások történhetnek egy táblához vagy egy partícióhoz.

A & bull INSERT OVERWRITE a táblázatban vagy a partícióban lévő meglévő adatok felülírására szolgál.

A & bull INSERT INTO az adatok hozzáfűzésére szolgál a táblázat meglévő adataihoz. (Megjegyzés: Az INSERT INTO szintaxis a 0.8-as verziótól működik)

Példa a „Partitioned By” és a „Clustered By” parancsokra:

’Felosztva ‘A tábla partícióra osztására szolgál, és a‘ Csoportosítva ’Parancs.

Amikor behelyezzük az adatkezelés dobási hibáit, a dinamikus partíció mód szigorú, és a dinamikus partíció nincs engedélyezve (by Jeff nál nél dresshead weboldal ). Tehát be kell állítanunk a következő paramétereket a Hive shell-be.

set hive.exec.dynamic.partition = true

A dinamikus partíciók engedélyezéséhez alapértelmezés szerint hamis

set hive.exec.dynamic.partition.mode = nem szigorú

A particionálás a kategória szerint történik, és a ‘Clustered By’ paranccsal csoportokra osztható.

A „Drop Table” utasítás törli a táblázat adatait és metaadatait. Külső táblák esetén csak a metaadatokat töröljük.

A „Drop Table” utasítás törli a táblázat adatait és metaadatait. Külső táblák esetén csak a metaadatokat töröljük.

Helyezze be az ‘aru.txt’ helyi bejárati adatot a tábla táblanévbe, majd a Select * from table name paranccsal ellenőrizzük a worker1 táblát.

A táblázat rekordjainak számításához a Select gombbal számol(*) a txnrecords-ból

Összesítés:

Válassza ki a számot (DISTINCT kategória) a táblanévből

Ez a parancs a „cate” táblázat különböző kategóriáit számolja. Itt 3 különböző kategória van.

Tegyük fel, hogy van egy másik táblázatcate, ahol az f1 a kategória mezőneve.

Csoportosítás:

A Group parancs az eredményhalmaz egy vagy több oszlop szerinti csoportosítására szolgál.

Válasszon kategóriát, összeget (összeget) a txt rekordokból kategóriák szerint csoportosítva

Kiszámítja ugyanannak a kategóriának az összegét.

Az egyik táblázat eredményét egy másik táblázat tárolja.

Hozzon létre táblát newtablename, mint select * from oldtablename

Csatlakozás a parancshoz:

Itt még egy táblázat jön létre a névben ‘Levelek’

Csatlakozás művelethez :

A Csatlakozás műveletet két tábla mezőinek kombinálásához hajtják végre, mindegyik közös értékek felhasználásával.

Bal külső csatlakozás :

Az A és B táblák baloldali külső illesztésének (vagy egyszerűen baloldali illesztésének) eredménye mindig tartalmazza a „bal” tábla (A) összes rekordját, még akkor is, ha a csatlakozási feltétel nem talál megfelelő rekordot a „jobb” táblában (B).

Jobb külső csatlakozás :

A jobb oldali illesztés (vagy a jobb illesztés) szorosan hasonlít a bal külső illesztéshez, kivéve az asztalok megfordítását. A „jobb” táblázat (B) minden sora legalább egyszer megjelenik az összekapcsolt táblázatban.

Teljes csatlakozás :

Az egyesített táblázat mindkét tábla összes rekordját tartalmazza, és mindkét oldalon hiányzó mérkőzések NULL értékét tölti ki.

felülbírálás és túlterhelés a java-ban

A kaptár használatával a quit paranccsal léphetünk ki a kaptár héjából.

Kilépés a kaptárból

A Hive csak egy része a Big Data és a Hadoop nevű nagy rejtvénynek. Hadoop sokkal több, mint pusztán Hive. Kattintson alább, hogy megnézze, milyen egyéb készségeket kell elsajátítania a Hadoopban.

Van egy kérdésünk? Kérjük, említse meg a megjegyzések részben, és mi kapcsolatba lépünk Önnel.

Kapcsolódó hozzászólások:

A Big Data képzés 7 módon változtathatja meg szervezetét

Hive adatmodellek