Bevezetés a beépített kaptár funkciókba

A függvények különféle analitikai követelmények és műveletek végrehajtására készültek, mint például matematikai, logikai, számtani és relációs, hatalmas adatkészletekre és táblázatokra. A függvényeket akkor használjuk, amikor hasonló műveleteket többször kell újrafelhasználnunk. Ebben a fejlett BigData világban hatalmas adatkészletek kezelése és feldolgozása megnehezíti a MapReduce programok írását. Tehát a Hive Query Language (HQL) az Apache Hadoop tetején került bevezetésre 2010 októberében, amelynek segítségével könnyen lekérdezéseket futtathatunk, hasonlóan az SQL-hez. A HQL-eket belsőleg tovább konvertálják Mapreduce programokká, hogy elérjék a kimeneteket. Ebben a témában a Hive beépített funkcióit tárgyaljuk.

A kaptárfunkciókat nagyjából két kategóriába sorolhatjuk:

  1. Beépített funkciók
  2. Felhasználó által definiált funkciók

A kaptár beépített funkciói

A beépített funkciók előre definiáltak és könnyen elérhetők a Hive alkalmazásában. Az alábbiak szerint vannak csoportosítva:

1. Karakterlánc-funkciók

Karakterlánc-manipulációkhoz és transzformációkhoz használják.

Funkció neveVissza típusLeírásPélda
substr (húr, int, int)HúrVisszatér egy karakterláncot a megadott kezdőpozícióból a megadott hosszúságbasubstr ('Kaptár lekérdezés', 5, 5) eredménye 'lekérdezés'
rtrim (X karakterlánc)HúrKarakterláncot ad vissza, jobb oldali szóköz nélkülAz rtrim ('Hello') eredménye 'Hello'
ltrim (X karakterlánc)HúrVisszaad egy karakterláncot bal oldali szóköz nélkülltrim ('Hello') eredményt 'Hello'
fordított (X karakterlánc)HúrVisszaad egy X fordított karakterláncotfordított ('hello') eredménye: 'olleh'
rpad (X, int, string)HúrA jobb oldali párnázott húr „pad” -ot ad visszaAz rpad ('Hello', 3, 'hi') eredménye: 'Hello hi hi hi'
lpad (X, int, string)HúrVisszaad egy bal oldali párnázott húrot, amelynek 'pad' -ja hosszúAz lpad ('Hello', 3, 'Hi') eredménye: 'Hi Hi Hi Hello'
split (X karakterlánc, karakterlánc)SorA karakterláncok tömbjét adja vissza, miután a karakterláncot megosztotta a megadott minta körülsplit („A, B, C, D”, ”, ”) eredményeket eredményez ('A', B ', ' C ', ' D ')
hossz (húr X)Egész számVisszaadja az X karakterlánc hosszáthosszúság ('Bigdata') eredménye 7
concat (X karakterlánc, Y karakterlánc)HúrVisszaadja az X és Y összekapcsolt karakterláncátconcat ('Hello', 'World') eredménye 'HelloWorld'

2. Matematikai függvények

Matematikai műveletek, például kerekítés, mennyezet, padló stb. Alkalmazására használják, az UDF-k létrehozása helyett.

Funkció neveVissza típusLeírásPélda
kerek (dupla X)KettősVisszaadja az X lekerekített értékétforduló (29, 5) eredménye 30
kerek (dupla X, int d)KettősVisszaadja az X lekerekített értékét d decimális pontossággalforduló (29.3456, 2) eredménye 29, 34
ceil (dupla X)KettősMinimális BIGINT értéket ad vissza, amely egyenlő vagy nagyobb, mint Xceil (20.5555) eredménye 21
padló (dupla X)KettősVisszaad egy maximális BIGINT értéket, amely egyenlő vagy nagyobb, mint Xceil (20.5555) eredménye 20
rand ()KettősVisszaad véletlenszerű számokat 0 és 9 közöttrand () eredmények rand (0-9)
abs (dupla X)KettősVisszaadja az X szám abszolút értékétabszolút érték (-25) 25 eredményt eredményez
pow (dupla X, dupla Y)KettősVisszatér X értéket ad vissza az Y teljesítményrepow (2, 3) eredménye 8
exp (dupla X)KettősVisszaadja az X exponens értékétexp (2) eredménye 7, 389

3. Feltételes funkciók

A kifejezés valódi vagy hamis kifejezésének ellenőrzésére szolgál, és a megfelelő eredményeket adja vissza.

Funkció neveVissza típusLeírásPélda
ISNULL (X)logikaiIGAZ-t ad vissza, ha X NULL értéke hamisAz isnull ('NULL') IGAZ értékben tér vissza
isnotnull (X)logikaiVisszaadja az IGAZ értéket, ha X nem NULL hamisAz isnotnull ('NULL') FALSE formátumban tér vissza
nvl (arg X, arg Y)HúrVisszaadja az arg Y értéket, ha arg X NULL, akkor visszatér arg X értéketnvl ('NULL', 'Érték Null') eredményt eredményez: 'Érték Null'
if (Boolean testCondition, T valueTrue, T valueFalseOrNull)TIgazként tér vissza, ha a teszt feltételei igazak, hamis vagy egyéb esetben semlegesif (2 = 2, 'igaz', 'hamis')
összenőnek (X, Y)(Bármi)Visszahozza az első nem null értéket a listából (kétségeim vannak ebben - visszatér-e a legelső érték vagy az összes nem nulla érték?)coalesce (null, null, null, 1, 5, null, null, 6) eredménye 1

4. Dátum funkciók

Dátumkezelés és dátumtípus-konvertálás végrehajtására szolgál.

Funkció neveVissza típusLeírásPélda
mostani dátumDátumVisszaadja a lekérdezés végrehajtásának aktuális dátumátAz current_date () a mai dátumot adja vissza
unix_timestamp ()bigintVisszaadja a lekérdezés végrehajtásának aktuális unix időbélyegzőjét másodpercbenunix_timestamp () az aktuális unix időbélyeget adja vissza
év (húr dátum)IntEgy dátum év részét adja visszaév ('1994-11-24') visszatér 1994-re
negyedév (karakterlánc dátum)IntA dátum év negyedévét adja visszanegyedév ('1994-11-24') visszatér 4
hónap (karakterlánc dátum)IntVisszaadja a dátum havi részétA hónap ('1994-11-24') visszatér 11-et
óra (karakterlánc dátum)IntVisszaadja az időbélyegző órás részétóra ('1994-11-24 12:45:23') visszatér 12-re
perc (karakterlánc dátum)IntVisszaadja az időbélyeg perc részétév ('1994-11-24 12:45:23') visszatér 45
randizni()HúrVisszaadja az időbélyegző string dátumrészétto_date () a dátum részét adja vissza
date_sub (karakterlánc dátum, int napok)HúrVisszaadja a napok számának kivonását a dátumhoza date_sub ('1994-11-24', 20) "1994-11-04" értéket ad vissza
months_between (dátum1, dátum2)KettősVisszaadja a dátum1 és dátum2 közötti hónapszámot (hónapok vagy napok száma?))hónapok között ('1994-11-24', '1994-11-04') visszatér 20

5. Gyűjtési funkció

A gyűjteménytípusok, például térkép, tömb stb. Részeinek átalakítására és visszakeresésére szolgál.

Funkció neveVissza típusLeírásPélda
mérete (térkép)IntVisszaadja a térképen szereplő összes elemetméret (('a': 2, 'b': 6)) a 2-et adja vissza
mérete (array)IntVisszaadja a tömb összes elemétméret ((1, 3, 4, 7)) 4-et ad vissza
array_contains (tömb, érték)logikaiIgaz, ha a tömb tartalmazza az értéketAz array_contains ((1, 3, 9, 8, 5, 4, 7), 5) TRUE értéket ad vissza
map_keys (térkép)SorA térkép rendezetlen tömbjeit adja visszamap_keys (('a': 2, 'b': 6, 'c': 1)) visszatér ('b', 'c', 'a')
map_valuess (térkép)SorVisszaadja a térkép értékének rendezetlen tömbjétmap_keys (('a': 2, 'b': 6, 'c': 1)) visszatér (1, 6, 2)
sort_array (array)SorAz adott tömb rendezett tömbjét adja visszasort_array ((1, 3, 9, 8, 5, 4, 7)) visszatér (1, 3, 4, 5, 7, 8, 9)

Következtetés

Eddig különféle beépített funkciókat tárgyaltunk a Hive-ben. A MapReduce-hoz képest a Hive sokkal kényelmesebb és időtakarékosabb. Bárki, aki rendelkezik alapvető SQL ismeretekkel, könnyen írhat HQL-t, ahelyett, hogy bonyolult MapReduce-programokat dolgozna fel az adatfeldolgozásra.

Ajánlott cikkek

Ez egy útmutató a kaptár beépített funkcióihoz. Itt tárgyaljuk a beépített funkciókat, amelyek előre definiáltak és könnyen elérhetők a kaptárban. A következő cikkben további információkat is megnézhet -

  1. Kaptárhúr-funkciók
  2. Kaptár funkció
  3. Kaptárparancsok
  4. Kaptár építészet
  5. Kaptárrendelés
  6. Kaptár telepítése
  7. Python beépített funkciók

Kategória: