Funzioni dati Hive
Che cos'è una funzione dati Hive?
Hive dispone di molte funzioni integrate per l'elaborazione e l'interrogazione dei dati. Alcune delle funzionalità fornite includono, ad esempio, la manipolazione di stringhe, la manipolazione di date, la conversione di tipo, gli operatori condizionali e le funzioni matematiche.
Tipi di funzioni integrate in HIVE
Funzioni data
Vengono utilizzate principalmente per eseguire operazioni su dati di tipo data, come l'aggiunta del numero di giorni o simili.
Funzioni matematiche
Queste funzioni sono utilizzate principalmente per eseguire calcoli matematici.
Funzioni condizionali
Queste funzioni vengono utilizzate per valutare una condizione e restituiscono un valore in base al fatto che essa sia vera o falsa.
Funzioni di stringa
Vengono utilizzate per eseguire operazioni sulle stringhe, come ad esempio trovarne la lunghezza.
Funzioni di raccolta
Queste funzioni vengono utilizzate per trovare la dimensione di tipi di dati complessi come array e mappe. L'unica funzione di raccolta è SIZE, utilizzata principalmente per trovare il numero di elementi in una matrice o mappa.
Funzione di conversione del tipo
Questa funzione serve a convertire i dati da un tipo a un altro; l'unica funzione di conversione dei tipi è CAST.
Funzioni di tabella
Queste funzioni possono essere utilizzate per trasformare una singola riga in più righe. EXPLODE è l'unica funzione che genera una tabella, utilizzando un array come input e restituendo come output gli elementi dell'array in righe separate.
Dati di tipo data
Sono altamente formattati: ogni valore di data contiene il secolo, l'anno, il mese, il giorno, l'ora, il minuto e il secondo. Queste funzioni sono utilizzate per eseguire operazioni sui dati di tipo data, come l'aggiunta del numero di giorni, la conversione da un tipo di data all'altra e così via. Di seguito sono riportate le funzioni DateTime di Hadoop Hive più comunemente utilizzate:
Nome della funzione | Tipo di restituzione | Descrizione |
---|---|---|
Unix_Timestamp | BigInt | Restituisce il timestamp Unix corrente, espresso in secondi. |
To_date(string timestamp) | String | Recupera e restituisce il componente data di una stringa di timestamp. |
year(string date) | INT | Recupera e restituisce il componente anno di una data o di una stringa di timestamp. |
quarter (date/timestamp/string) | INT | La funzione QUARTER, introdotta in Hive 1.3, recupera e restituisce il componente trimestre dell'anno di una data, un timestamp o una stringa nell'intervallo da 1 a 4. |
month(string date) | INT | Restituisce il componente mese di una data o di una stringa di timestamp. |
hour(string date) | INT | Recupera e restituisce il componente ora del timestamp. |
minute(string date) | INT | Restituisce il componente minuti del timestamp. |
Date_sub(string starting date, int days) | string | La funzione DATE_SUB sottrae il numero di giorni indicato dalla data specificata. |
Current_date | date | Restituisce la data corrente all'inizio della valutazione della query. |
LAST _day(string date) | string | Recupera e restituisce l'ultimo giorno del mese a cui la data appartiene. |
trunc(string date, string format) | string | Rimuove i campi da un valore TIMESTAMP. |