funcțiile sunt construite pentru un scop specific pentru a efectua operații precum matematică, aritmetică, logică și relațională pe operanzii numelor coloanelor tabelului.

funcții încorporate

acestea sunt funcții care sunt deja disponibile în Hive. În primul rând, trebuie să verificăm cerința aplicației și apoi putem folosi această funcție încorporată în aplicațiile noastre. Putem apela aceste funcții direct în aplicația noastră.

sintaxa și tipurile sunt menționate în secțiunea următoare.

tipuri de funcții încorporate în stup

  • funcții de colectare
  • funcții de dată
  • funcții matematice
  • funcții condiționale
  • funcții șir
  • diverse. Funcții

funcții de colectare:

aceste funcții sunt utilizate pentru colecții. Colecții înseamnă gruparea elementelor și returnarea unui singur sau a unei matrice de elemente depinde de tipul de returnare menționat în numele funcției.

Tip retur Denumirea funcției descriere
int Dimensiune (hartă < kV>) acesta va prelua și va da numărul componentelor în tipul de hartă
int dimensiune (matrice < T>) acesta va prelua și va da numărul elementelor din tipul de matrice
matrice <K > Map_keys(hartă< K. V>) acesta va prelua și oferă o matrice care conține cheile hărții de intrare. Aici matrice este în neordonate
Array<V > Map_values(hartă < kV>) acesta va prelua și oferă o matrice care conține valorile hărții de intrare. Aici matrice este în neordonate
matrice< t> Sort_array(matrice< T>) sortează matrice de intrare în ordine crescătoare de matrice și elemente și returnează-l

funcții de dată:

acestea sunt utilizate pentru a efectua manipulări de Date și conversia tipurilor de Date de la un tip la altul:

numele funcției Tip retur descriere
Unix_Timestamp() BigInt vom primi timestamp curent Unix în câteva secunde
To_date (string timestamp) string va prelua și va da data parte dintr-un șir timestamp:
an (data string) INT se va prelua și da partea an de o dată sau un șir de marcă de timp
trimestru(data/timestamp/string) INT se va prelua și să dea trimestru al anului pentru o dată ,timestamp, sau șir în intervalul 1 la 4
luna (data string) INT acesta va da o parte luna de o dată sau un șir de marcă de timp
oră (data șir) INT acesta va prelua și dă ora de timestamp
minute (data string) INT acesta va prelua și dă minutul marcajului de timp
Date_sub (string data de începere, int zile) string se va prelua și dă scădere a numărului de zile la data de începere
Current_date Data acesta va prelua și dă data curentă la începutul evaluării interogare
ultima _day (data string) string se va prelua și dă ultima zi a lunii care data aparține
trunc (string data, string format) string acesta va prelua și dă data trunchiat la unitatea specificată de formatul.
formate acceptate în acest :
lună/lună/MM, an/AAAA/AAAA.

funcții matematice:

aceste funcții sunt utilizate pentru operații matematice. În loc de creatingUDFs, avem unele funcții matematice încorporate în Hive.

numele funcției Tip retur descriere
rotund (dublu X) dublu se va prelua și returnează valoarea BIGINT rotunjite de X
rotund (dublu X, int d) dublu se va prelua și se întoarce x rotunjite la D zecimale
bround (dublu X) dublu acesta va prelua și returnează valoarea BIGINT rotunjită a X folosind modul de rotunjire HALF_EVEN
etaj (dublu X) BIGINT va prelua și returnează valoarea maximă BIGINT care este egală sau mai mică decât valoarea X
ceil(dublu a), plafon (dublu a) BIGINT acesta va prelua și returnează valoarea minimă BIGINT care este egală sau mai mare decât valoarea X
rand (), rand(int seed) DOUBLE va prelua și returnează un număr aleatoriu care este distribuit uniform de la 0 la 1

funcții condiționale:

aceste funcții utilizate pentru verificarea valorilor condiționale.

numele funcției Tip retur descriere
dacă (boolean testCondition, t valueTrue, t valueFalseOrNull) T se va prelua și dă valoare True atunci când starea de testare este de adevărat, dă valoare False sau Null altfel.
ISNULL (X) Boolean se va prelua și dă adevărat dacă X este nul și fals altfel.
ISNOTNULL (X) Boolean se va prelua și dă adevărat dacă X nu este nul și fals altfel.

funcții șir:

manipulări șir și operații șir aceste funcții pot fi apelate.

numele funcției Tip retur descriere
reverse(string X) string se va da șirul inversat de X
rpad (string str, lungime int, string pad) string va prelua și va da str, care este căptușit cu pad la o lungime de lungime(valoare întreagă)
rtrim (string X) string se va prelua și returnează șirul rezultat din tunderea spații de la sfârșitul (partea dreaptă) a X pentru exemplu, rtrim (‘Rezultate’) rezultate în ‘rezultate’
spațiu (int n) string se va prelua și dă un șir de n spații.
split (STRING str, STRING pat) array împarte str în jurul pat (pat este o expresie regulată).
Str_to_map (text) harta<String ,String > se va împărți textul în perechi cheie-valoare folosind două delimitatori.

UDFs (Funcții Definite De Utilizator):

în Hive, utilizatorii pot defini funcții proprii pentru a îndeplini anumite cerințe ale clientului. Acestea sunt cunoscute sub numele de UDFs în stup. Funcții definite de utilizator scrise în Java pentru module specifice.

unele dintre UDFs sunt concepute special pentru reutilizarea codului în cadrele de aplicare. Dezvoltatorul va dezvolta aceste funcții în Java și va integra acele UDFs cu stupul.

în timpul executării interogării, dezvoltatorul poate utiliza direct codul, iar UDFs va returna ieșirile în funcție de sarcinile definite de utilizator. Acesta va oferi performanțe ridicate în ceea ce privește codificarea și execuția.

de exemplu, pentru String stemming nu avem nicio funcție predefinită în Hive, pentru aceasta putem scrie stem UDF în Java. Ori de câte ori avem nevoie de funcționalitate Stem, putem apela direct acest UDF Stem în stup.

aici funcționalitatea stem înseamnă derivarea cuvintelor din cuvintele sale rădăcină. Este ca rezultat algoritm reduce cuvintele” care doresc”,” dorit”, și” dorește „la cuvântul rădăcină” dorință.”Pentru realizarea acestui tip de funcționalitate, putem scrie UDF în java și integra cu Hive.

în funcție de cazurile de utilizare, UDFs poate fi scris, acesta va accepta și va produce numere diferite de valori de intrare și ieșire.

tipul general de UDF va accepta o singură valoare de intrare și va produce o singură valoare de ieșire. Dacă UDF utilizat în interogare, atunci UDF va fi apelat o dată pentru fiecare rând din setul de date rezultat.

în alt mod, poate accepta un grup de valori ca intrare și poate returna și o singură valoare de ieșire.

Posted on

Lasă un răspuns

Adresa ta de email nu va fi publicată.