Najboljši ukazi za panj s primeri v HQL

Ta blog razpravlja o ukazih Hive s primeri v HQL. USTVARI, PUSTI, IZMENI, ALTER, PRIKAŽI, OPIŠI, UPORABI, NALOŽI, Vstavi, pridruži in še veliko drugih ukazov za panj

V tej objavi v spletnem dnevniku razpravljajmo o najboljših ukazih za panj s primeri. Ti ukazi za panj so zelo pomembni za postavitev temeljev .

Izšel je vodnik za tehnično kariero Edureka 2019! Najbolj vroče delovne vloge, natančne učne poti, panoga in drugo v priročniku. Prenesi zdaj.

Kaj je panj?

Apache Hive je sistem za shranjevanje podatkov, ki je zasnovan za delo na Hadoopu. Uporablja se za poizvedovanje in upravljanje velikih naborov podatkov v porazdeljenem pomnilniku. Preden je Hive postal odprtokodni projekt Apache Hadoop, je Hive izviral iz Facebooka. Zagotavlja mehanizem za projiciranje strukture na podatke v Hadoopu in poizvedovanje po teh podatkih v jeziku, podobnem SQL, imenovanem HiveQL (HQL).



Hive se uporablja, ker so tabele v Hiveu podobne tabelam v relacijski bazi podatkov. Če poznate SQL, je to potep. Številni uporabniki lahko istočasno poizvedujejo po podatkih s pomočjo Hive-QL.

Kaj je HQL?

Hive definira preprost poizvedbeni jezik, podoben SQL, za poizvedovanje in upravljanje velikih naborov podatkov, imenovan Hive-QL (HQL). Je enostaven za uporabo, če poznate jezik SQL. Hive omogoča programerjem, ki poznajo jezik, da napišejo okvir MapReduce po meri za izvedbo bolj izpopolnjene analize.



Uporaba panja:

1. Razdeljeni pomnilnik Apache Hive.

2. Panj ponuja orodja, ki omogočajo enostavno pridobivanje / preoblikovanje / nalaganje podatkov (ETL)

3. Zagotavlja strukturo različnih podatkovnih formatov.



4. Z uporabo Hive lahko dostopamo do datotek, shranjenih v Hadoop Distributed File System (HDFS se uporablja za poizvedovanje in upravljanje velikih naborov podatkov, ki prebivajo v njem) ali v drugih sistemih za shranjevanje podatkov, kot je Apache HBase.

Omejitve panja:

& bull Hive ni zasnovan za spletno obdelavo transakcij (OLTP), uporablja se samo za spletno analitično obdelavo.

& bull Hive podpira prepisovanje ali zajemanje podatkov, ne pa tudi posodabljanje in brisanje.

& bull V panju podpoizvedbe niso podprte.

Zakaj se panj uporablja kljub prašičem?

Spodaj so razlogi, zakaj se panj uporablja kljub prašičji razpoložljivosti:

  • Hive-QL je izjavna jezikovna vrstica SQL, PigLatin je jezik pretoka podatkov.
  • Prašič: jezik pretoka podatkov in okolje za raziskovanje zelo velikih naborov podatkov.
  • Panj: porazdeljeno skladišče podatkov.

Sestavni deli panja:

Metastore:

Hive shrani shemo panjev v Hive Metastore. Metastore se uporablja za hrambo vseh informacij o tabelah in particijah v skladišču. Privzeto se metastora zažene v enakem postopku kot storitev panj, privzeta Metastore pa je DerBy Database.

SerDe:

Serializer, Deserializer daje navodila panju, kako obdelati zapis.

Ukazi za panj:

Jezik za definicijo podatkov (DDL)

Stavki DDL se uporabljajo za gradnjo in spreminjanje tabel in drugih predmetov v bazi podatkov.

Ukaz DDL Funkcija
USTVARI Uporablja se za ustvarjanje tabele ali baze podatkov
PRIKAŽI Uporablja se za prikaz zbirke podatkov, tabele, lastnosti itd
STAROST Uporablja se za spreminjanje obstoječe tabele
OPIŠI Opisuje stolpce tabele
RAZREŽI Uporablja se za trajno skrajšanje in brisanje vrstic tabele
IZBRIŠI Izbriše podatke tabele, vendar jih je mogoče obnoviti

Pojdite na Hive shell, tako da daste ukaz sudo hive in vnesite ukaz 'Ustvarjati zbirke podatkov ime> ’ ustvariti novo bazo podatkov v panju.

Z ukazi Hive ustvarite bazo podatkov o panju

Če želite navesti baze podatkov v skladišču Hive, vnesite ukaz ‘ pokaži zbirke podatkov “.

Baza podatkov se ustvari na privzeti lokaciji skladišča Hive. V Clouderi shramba podatkovne zbirke Hive shranjuje v / uporabnik / panj / skladišče.

je a ima razmerje

Ukaz za uporabo baze podatkov je UPORABA

Kopirajte vhodne podatke v lokalno HDFS z ukazom kopiraj iz lokalnega.

Ko ustvarimo tabelo v panju, se ta ustvari na privzeti lokaciji panjevega skladišča. - “/ uporabnik / panj / skladišče”, po izdelavi tabele lahko podatke iz HDFS prestavimo v panjsko tabelo.

Naslednji ukaz ustvari tabelo z lokacijo »/user/hive/warehouse/retail.db«

Opomba : retail.db je baza podatkov, ustvarjena v skladišču Panj.

Opiši vsebuje informacije o shemi tabele.

Jezik za upravljanje podatkov (DML)

Stavki DML se uporabljajo za pridobivanje, shranjevanje, spreminjanje, brisanje, vstavljanje in posodabljanje podatkov v zbirki podatkov.

Primer:

LOAD, INSERT Izjave.

Sintaksa:

Naloži podatke v pot v tabelo [ime tabele]

Operacija nalaganja se uporablja za premikanje podatkov v ustrezno tabelo panj. Če je ključna beseda lokalno je določen, potem bo v ukazu load naložil pot do lokalnega datotečnega sistema. Če ključna beseda local ni določena, moramo uporabiti pot datoteke HDFS.

Tu je nekaj primerov za ukaz LOAD data LOCAL

Po nalaganju podatkov v tabelo Panj lahko uporabimo Izjave o manipulaciji s podatki ali skupne funkcije za pridobivanje podatkov.

Primer za štetje števila zapisov:

Uporablja se skupna funkcija štetja, šteje skupno število zapisov v tabeli.

Tabela „ustvari zunanjo“:

The ustvariti zunanje Ključna beseda se uporablja za ustvarjanje tabele in zagotavlja mesto, kjer bo tabela ustvarjena, tako da Hive za to tabelo ne uporablja privzetega mesta. An ZUNANJI tabela kaže na katero koli lokacijo HDFS za njegovo shranjevanje in ne na privzeti pomnilnik.

Vstavi ukaz:

The vstavi ukaz se uporablja za nalaganje podatkovne tabele panj. Vstavke lahko vstavite v tabelo ali particijo.

& bull INSERT OVERWRITE se uporablja za prepisovanje obstoječih podatkov v tabelo ali particijo.

& bull INSERT INTO se uporablja za dodajanje podatkov obstoječim podatkom v tabeli. (Opomba: Sintaksa INSERT INTO deluje iz različice 0.8)

Primer za ukaz 'Razdeljeno po' in 'Razvrščeno po':

‘Razdeljeno z 'Se uporablja za razdelitev tabele na particijo in jo je mogoče razdeliti v segmente z uporabo' Razvrščeno po ‘Ukaz.

Ko vstavimo napake pri metanju podatkov Hive, je način dinamične particije strog in dinamična particija ni omogočena (s Jeff ob spletno mesto dresshead ). Zato moramo v lupini Hive nastaviti naslednje parametre.

nastavi hive.exec.dynamic.partition = true

Če želite omogočiti dinamične particije, je privzeto false

nastavite hive.exec.dynamic.partition.mode = nonstrict

Razdelitev opravi kategorija in jo lahko z ukazom 'Clustered By' razdeli v segmente.

Stavek »Odloži tabelo« izbriše podatke in metapodatke za tabelo. V primeru zunanjih tabel se izbrišejo samo metapodatki.

Stavek »Odloži tabelo« izbriše podatke in metapodatke za tabelo. V primeru zunanjih tabel se izbrišejo samo metapodatki.

V ime tabele tabele naložite podatke o lokalni poti »aru.txt« in nato z ukazom Izberi * iz imena tabele preverimo tabelo worker1

Če želite prešteti število zapisov v tabeli z uporabo Izberi štetje (*) iz txnrecords

Združevanje:

Izberite število (DISTINCT kategorija) iz imena tabele

Ta ukaz bo štel različne kategorije tabele 'cate'. Tu obstajajo 3 različne kategorije.

Recimo, da obstaja še ena vrstica tabele, kjer je f1 ime polja kategorije.

Razvrščanje v skupine:

Ukaz Group se uporablja za združevanje nabora rezultatov v enega ali več stolpcev.

Izberite kategorijo, vsoto (znesek) iz zapisov txt po skupinah

Izračuna znesek iste kategorije.

Rezultat ena tabela se shrani v drugo tabelo.

Ustvari tabelo newtablename kot select * iz oldtablename

Pridružite se ukazu:

Tu je v imenu ustvarjena še ena tabela ‘Mails’

Pridružite se operaciji :

Operacija Združevanja se izvede za kombiniranje polj iz dveh tabel z uporabo skupnih vrednosti za vsako.

Levo zunanje pridruživanje :

Rezultat levega zunanjega združevanja (ali preprosto levega združevanja) za tabeli A in B vedno vsebuje vse zapise tabele 'levo' (A), tudi če pogoj združevanja ne najde nobenega ustreznega zapisa v tabeli 'desno' (B).

Desno zunanje pridruživanje :

Desni zunanji spoj (ali desni spoj) je zelo podoben levemu zunanjemu spoju, razen pri obrnjeni obdelavi tabel. Vsaka vrstica iz 'desne' tabele (B) se bo vsaj enkrat pojavila v združeni tabeli.

Popolna pridružitev :

Združena tabela bo vsebovala vse zapise iz obeh tabel in izpolnila NULL za manjkajoča ujemanja na obeh straneh.

Ko končamo s panjem, lahko uporabimo ukaz quit za izhod iz panjske lupine.

Izhod iz Panja

Panj je le del velike uganke, imenovane Big Data in Hadoop. Hadoop je veliko več kot le panj. Kliknite spodaj, da vidite, katere druge veščine bi morali obvladati v Hadoopu.

Imate vprašanje za nas? Prosimo, omenite to v oddelku za komentarje in se vam bomo javili.

Sorodne objave:

7 načinov, kako lahko usposabljanje za velike podatke spremeni vašo organizacijo

Hive Data Modeli