Mis on Hive päringu keel: HiveQL Operatorse

Mis on Hive päringukeel (HiveQL)?

Taru päringu keel (HiveQL) on Apache Hive päringukeel struktureeritud andmete töötlemiseks ja analüüsimiseks. See eraldab kasutajad Map Reduce'i programmeerimise keerukusest. See kasutab õppimise hõlbustamiseks uuesti relatsiooniandmebaaside levinud mõisteid, nagu tabelid, read, veerud ja skeemid. Hive pakub CLI-d Hive päringute kirjutamiseks, kasutades Hive päringukeelt (HiveQL).

Enamik interaktsioone toimub tavaliselt käsurea liidese (CLI) kaudu. Üldiselt on HiveQL-i süntaks sarnane SQL süntaks, mida enamik andmeanalüütikuid tunneb. Taru toetab nelja failivormingut, mis on: TEXTFILE, SEQUENCEFILE, ORC ja RCFILE (salvestise veerufail).

Hive kasutab ühe kasutaja metaandmete salvestamiseks derby andmebaasi ja mitme kasutaja metaandmete või jagatud metaandmete juhtumi jaoks kasutab Hive MYSQL-i.

Sisseehitatud HiveQL Operatorse

Hive pakub sisseehitatud operaatoreid andmetoimingute jaoks, mida saab rakendada Hive'i laos olevatel tabelitel.

Neid operaatoreid kasutatakse operandide matemaatilisteks operatsioonideks ja see tagastab konkreetse väärtuse vastavalt rakendatud loogikale.

Allpool on toodud peamised sisseehitatud tüübid Operatorid HiveQL-is:

  • Suhteline Operatorse
  • Aritmeetika Operatorse
  • loogiline Operatorse
  • Operakeeruliste tüüpide puhul
  • Kompleksset tüüpi konstruktorid

Suhteline Operatorid Hive SQL-is

Kahe operandi vahelise seose võrdlemiseks kasutame relatsioonioperaatoreid.

  • Operatorid nagu võrdub, ei ole võrdne, väiksem kui, suurem kui … jne
  • Operanditüübid on nendes kõik numbritüübid Operators.

Järgmine tabel annab meile üksikasju relatsioonioperaatorite ja nende kasutamise kohta HiveQL-is:

Sisseehitatud Operator Kirjeldus Operand
X = Y TRUE

kui avaldis X on samaväärne avaldisega Y

Muidu VALE.

See võtab kõik primitiivsed tüübid
X ! = Y TRUE

kui avaldis X ei ole samaväärne avaldisega Y

Muidu VALE.

See võtab kõik primitiivsed tüübid
X < Y TRUE

kui avaldis X on väiksem kui avaldis Y

Muidu VALE.

See võtab kõik primitiivsed tüübid
X <= Y TRUE

kui avaldis X on väiksem kui avaldis Y või sellega võrdne

Muidu VALE.

See võtab kõik primitiivsed tüübid
X>Y TRUE

kui avaldis X on suurem kui avaldis Y

Muidu VALE.

See võtab kõik primitiivsed tüübid
X>= Y TRUE

kui avaldis X on suurem kui avaldis Y või sellega võrdne

Muidu VALE.

See võtab kõik primitiivsed tüübid
X ON NULL TÕENE, kui avaldise X väärtus on NULL, vastasel juhul VÄÄR. See võtab kõik tüübid
X EI OLE NULL FALSE

Kui avaldise X väärtus on NULL, vastasel juhul TRUE.

See võtab kõik tüübid
X MEELDIB Y TRUE

Kui stringimuster X sobib Y-ga, vastasel juhul VÄÄR.

Võtab ainult stringe
X RIME Y NULL, kui X või Y on NULL, TRUE, kui mõni X-i alamstring sobib Java regulaaravaldis Y, muidu FALSE. Võtab ainult stringe
X REGEXP Y Sama mis RLIKE. Võtab ainult stringe

HiveQL Aritmeetika Operatorse

Operandiga aritmeetiliste toimingute tegemiseks kasutame aritmeetilisi tehteid

  • Aritmeetilised tehted, näiteks liitmine, alalõikaminetracoperandide vaheliseks korrutamiseks ja jagamiseks kasutame neid Operators.
  • Kõik operanditüübid on nendes numbritüübid Operatorse

Näidisnäide:

2 + 3 annab tulemuse 5.

Selles näites on '+' teooperaator ning 2 ja 3 on operandid. Tagastusväärtus on 5

Järgmine tabel annab meile üksikasju Hive päringukeele aritmeetiliste operaatorite kohta:

Sisseehitatud Operator Kirjeldus Operand
X+Y See tagastab X ja Y väärtuse lisamise väljundi. See võtab kõik numbritüübid
X–Y See tagastab alamfunktsiooni väljunditracY väärtuse eristamine X väärtusest. See võtab kõik numbritüübid
X * Y See tagastab X ja Y väärtuste korrutamise väljundi. See võtab kõik numbritüübid
X/Y See tagastab väljundi Y jagamisel X-st. See võtab kõik numbritüübid
X % Y See tagastab jäägi, mis saadakse X jagamisel Y-ga. See võtab kõik numbritüübid
X ja Y See tagastab X ja Y bitipõhise AND väljundi. See võtab kõik numbritüübid
X | Y See tagastab X ja Y bitipõhise VÕI väljundi. See võtab kõik numbritüübid
X ^ Y See tagastab X ja Y bitipõhise XOR väljundi. See võtab kõik numbritüübid
~X See tagastab X-i bitipõhise väljundi EI. See võtab kõik numbritüübid

Taru QL Loogiline Operatorse

Loogiliste operatsioonide tegemiseks kasutame operandidega loogilisi operaatoreid

  • Me kasutame operandide vahelisi loogilisi tehteid, nagu AND, OR, NOT Operators.
  • Kõik operanditüübid on nendes BOOLEAN tüüpi Operatorse

Järgmine tabel annab meile üksikasju HiveSQL-i loogiliste operaatorite kohta:

Operatorse Kirjeldus Operands
X JA Y TÕENE, kui nii X kui ka Y on TÕENED, vastasel juhul VÄÄR. Ainult Boole'i ​​tüübid
X && Y Sama mis X JA Y, kuid siin kasutame sümbolit && Ainult Boole'i ​​tüübid
X VÕI Y TÕENE, kui kas X või Y või mõlemad on TÕENE, vastasel juhul VÄÄR. Ainult Boole'i ​​tüübid
X || Y Sama mis X VÕI Y, kuid siin kasutame || sümbol Ainult Boole'i ​​tüübid
MITTE X TÕENE, kui X on FALSE, vastasel juhul VÄÄR. Ainult Boole'i ​​tüübid
!X Sama mis NOT X, kuid siin kasutame! sümbol Ainult Boole'i ​​tüübid

Operakeeruliste tüüpide kohta

Järgmine tabel annab meile üksikasjalikud andmed kompleksi tüübi kohta Operators . Need on operaatorid, kes pakuvad keerukat tüüpi elementidele juurdepääsuks teistsuguse mehhanismi.

Operatorse Operands Kirjeldus
A[n] A on massiiv ja n on täisarvu tüüp See tagastab massiivi A n-nda elemendi. Esimese elemendi indeks on 0
M[võti] M on kaart ja võtmel on tüüp K See tagastab väärtused, mis kuuluvad kaardil olevale võtmele

Kompleksset tüüpi konstruktorid

Järgmine tabel annab meile üksikasjalikku teavet komplekstüüpi konstruktorite kohta. See loob eksemplare keerukate andmetüüpide põhjal. Need on keerukad andmetüübid, näiteks massiivi, kaardi ja struktuuritüübid Mesilaspere.

Selles jaotises näeme komplekstüüpi konstruktoritega tehtud toiminguid.

Operatorse Operands Kirjeldus
massiivi (val1, val2, …) See loob massiivi antud elementidega, nagu mainitud, nagu val1, val2
Loo_ liit (silt, val1, val2, …) See loob liidu tüübi väärtustega, millele märgendi parameeter viitab
kaart (võti1, väärtus1, võti2, väärtus2, …) See loob kaardi operandides mainitud võtme/väärtuse paaridega
Nimega_struktuur (nimi1, väärtus1, nimi2, väärtus2, …) See loob struktuuri antud väljanimede ja operandides mainitud väärtustega
STRUKT (val1, val2, val3, …) Loob antud välja väärtustega struktuuri. Struktuuriväljade nimed on col1, col2, .

kokkuvõte

  • Hive Query Language (HiveQL) on päringukeel Apache Taru struktureeritud andmete töötlemiseks ja analüüsimiseks.
  • Hive pakub sisseehitatud operaatoreid andmetoimingute jaoks, mida saab rakendada Hive'i laos olevatel tabelitel.
  • Sisseehitatud tüübid OperaHiveQL-i torid on:
  • Suhteline Operatorse
  • Aritmeetika Operatorse
  • loogiline Operatorse
  • Operakeeruliste tüüpide puhul
  • Kompleksset tüüpi konstruktorid

Võta see postitus kokku järgmiselt: