Cos'è Hive Query Language: HiveQL OperaTors
Cos'è Hive Query Language (HiveQL)?
Linguaggio di query Hive (HiveQL) è un linguaggio di query in Apache Hive per l'elaborazione e l'analisi di dati strutturati. Separa gli utenti dalla complessità della programmazione Map Reduce. Riutilizza concetti comuni da database relazionali, come tabelle, righe, colonne e schema, per facilitare l'apprendimento. Hive fornisce una CLI per la scrittura di query Hive utilizzando Hive Query Language (HiveQL).
La maggior parte delle interazioni tendono ad avvenire tramite un'interfaccia a riga di comando (CLI). In generale, la sintassi HiveQL è simile a SQL sintassi con cui la maggior parte degli analisti di dati ha familiarità. Hive supporta quattro formati di file che sono: TEXTFILE, SEQUENCEFILE, ORC e RCFILE (Record Columnar File).
Hive utilizza il database derby per l'archiviazione dei metadati di un singolo utente e, per i metadati di più utenti o i metadati condivisi, Hive utilizza MYSQL.
HiveQL integrato OperaTors
Hive fornisce operatori integrati per operazioni sui dati da implementare sulle tabelle presenti all'interno del warehouse Hive.
Questi operatori vengono utilizzati per operazioni matematiche sugli operandi e restituiranno un valore specifico secondo la logica applicata.
Di seguito sono elencate le principali tipologie di Built-in Operatori in HiveQL:
- Relazionale OperaTors
- Aritmetica OperaTors
- logico OperaTors
- Operatori su Tipi complessi
- Costruttori di tipo complesso
Relazionale Operator in Hive SQL
Utilizziamo gli operatori relazionali per i confronti delle relazioni tra due operandi.
- Operatori come uguale, Non uguale, minore di, maggiore di...ecc
- I tipi di operando sono tutti tipi di numeri in questi OperaTors.
La seguente tabella ci fornirà dettagli sugli operatori relazionali e sul loro utilizzo in HiveQL:
Built-in Operator | Descrizione | Operand |
---|---|---|
X = Y | TRUE
se l'espressione X è equivalente all'espressione Y Altrimenti FALSO. |
Richiede tutti i tipi primitivi |
X!=Y | TRUE
se l'espressione X non è equivalente all'espressione Y Altrimenti FALSO. |
Richiede tutti i tipi primitivi |
X<Y | TRUE
se l'espressione X è inferiore all'espressione Y Altrimenti FALSO. |
Richiede tutti i tipi primitivi |
X <= Y | TRUE
se l'espressione X è minore o uguale all'espressione Y Altrimenti FALSO. |
Richiede tutti i tipi primitivi |
X>Y | TRUE
se l'espressione X è maggiore dell'espressione Y Altrimenti FALSO. |
Richiede tutti i tipi primitivi |
X>=Y | TRUE
se l'espressione X è maggiore o uguale all'espressione Y Altrimenti FALSO. |
Richiede tutti i tipi primitivi |
X È NULLO | VERO se l'espressione X viene valutata come NULL, altrimenti FALSO. | Ci vogliono tutti i tipi |
X NON È NULLO | FALSO
Se l'espressione X è valutata come NULL, altrimenti è VERO. |
Ci vogliono tutti i tipi |
X COME Y | TRUE
Se il modello di stringa X corrisponde a Y, altrimenti FALSO. |
Richiede solo stringhe |
X R COME Y | NULL se X o Y sono NULL, TRUE se qualsiasi sottostringa di X corrisponde a Java espressione regolare Y, altrimenti FALSE. | Richiede solo stringhe |
X REGESP Y | Uguale a RLIKE. | Richiede solo stringhe |
Aritmetica HiveQL OperaTors
Utilizziamo gli operatori aritmetici per eseguire operazioni aritmetiche sugli operandi
- Le operazioni aritmetiche come l'addizione, la sottrazione, la moltiplicazione e la divisione tra operandi le utilizziamo OperaTors.
- In questi, tutti i tipi di operandi sono tipi numerici OperaTors
Esempio di esempio:
2 + 3 dà il risultato 5.
In questo esempio, "+" è l'operatore e 2 e 3 sono gli operandi. Il valore restituito è 5
La seguente tabella ci fornirà dettagli sugli operatori aritmetici nel linguaggio di query Hive:
Built-in Operator | Descrizione | Operand |
---|---|---|
X+Y | Restituirà l'output dell'aggiunta dei valori X e Y. | Richiede tutti i tipi di numeri |
X-Y | Restituirà l'output della sottrazione di Y dal valore X. | Richiede tutti i tipi di numeri |
X*Y | Restituirà l'output della moltiplicazione dei valori X e Y. | Richiede tutti i tipi di numeri |
X/Y | Restituirà l'output della divisione Y da X. | Richiede tutti i tipi di numeri |
X%Y | Restituirà il resto risultante dalla divisione X per Y. | Richiede tutti i tipi di numeri |
X e Y | Restituirà l'output dell'AND bit a bit di X e Y. | Richiede tutti i tipi di numeri |
X| Y | Restituirà l'output dell'OR bit a bit di X e Y. | Richiede tutti i tipi di numeri |
X^Y | Restituirà l'output dell'XOR bit a bit di X e Y. | Richiede tutti i tipi di numeri |
~X | Restituirà l'output del NOT bit a bit di X. | Richiede tutti i tipi di numeri |
Hive QL Logico OperaTors
Utilizziamo gli operatori logici per eseguire operazioni logiche sugli operandi
- Le operazioni logiche come AND, OR, NOT tra operandi le utilizziamo OperaTors.
- In questi, i tipi di operandi sono tutti di tipo BOOLEANO OperaTors
La seguente tabella ci fornirà dettagli sugli operatori logici in HiveSQL:
OperaTors | Descrizione | Operands |
---|---|---|
X E Y | VERO se sia X che Y sono VERI, altrimenti FALSO. | Solo tipi booleani |
X&& Y | Uguale a X AND Y ma qui utilizziamo il simbolo && | Solo tipi booleani |
X O Y | VERO se X o Y o entrambi sono VERI, altrimenti FALSO. | Solo tipi booleani |
X || Y | Uguale a X OR Y ma qui usiamo || simbolo | Solo tipi booleani |
NON X | VERO se X è FALSO, altrimenti FALSO. | Solo tipi booleani |
!X | Uguale a NOT X ma qui lo usiamo! simbolo | Solo tipi booleani |
Operatori sui tipi complessi
La seguente tabella ci fornirà dettagli sul tipo complesso Operators . Questi sono operatori che forniranno un meccanismo diverso per accedere agli elementi nei tipi complessi.
OperaTors | Operands | Descrizione |
---|---|---|
UN] | A è un array e n è un tipo intero | Restituirà l'ennesimo elemento nell'array A. Il primo elemento ha indice 0 |
M[tasto] | M è una mappa e la chiave è di tipo K | Restituirà i valori appartenenti alla chiave nella mappa |
Costruttori di tipo complesso
La seguente tabella ci fornirà dettagli sui costruttori di tipo complesso. Costruirà istanze su tipi di dati complessi. Questi sono tipi di dati complessi come Array, Map e Struct in Alveare.
In questa sezione vedremo le operazioni eseguite sui costruttori di tipo complesso.
OperaTors | Operands | Descrizione |
---|---|---|
schieramento | (val1, val2, …) | Creerà un array con gli elementi indicati come menzionati come val1, val2 |
Crea_unione | (etichetta, val1, val2, …) | Creerà un tipo di unione con i valori a cui viene menzionato il parametro tag |
carta geografica | (chiave1, valore1, chiave2, valore2, …) | Creerà una mappa con le coppie chiave/valore indicate negli operandi |
Struttura_nome | (nome1, val1, nome2, val2, …) | Creerà una struttura con i nomi dei campi e i valori indicati negli operandi |
STRUTTURA | (val1, val2, val3, …) | Crea una struttura con i valori del campo specificati. I nomi dei campi della struttura saranno col1, col2, . |
Sommario
- Hive Query Language (HiveQL) è un linguaggio di query in Apache Hive per l'elaborazione e l'analisi dei dati strutturati.
- Hive fornisce operatori integrati per operazioni sui dati da implementare sulle tabelle presenti all'interno del warehouse Hive.
- Tipi di built-in Operai tor in HiveQL sono:
- Relazionale OperaTors
- Aritmetica OperaTors
- logico OperaTors
- Operatori su Tipi complessi
- Costruttori di tipo complesso