Fonction date dans Hive
Qu'est-ce qu'une fonction de données dans Hive ?
Hive propose de nombreuses fonctions intégrées qui facilitent le traitement et l'interrogation des données. Elles permettent notamment de manipuler des chaînes et des données, de convertir des types, d'utiliser des opérateurs conditionnels et des fonctions mathématiques, etc.
Types de fonctions intégrées dans HIVE
Fonctions de date
Principalement utilisées pour effectuer des opérations sur des types de données « date », par exemple pour ajouter un nombre de jours à une date.
Fonctions mathématiques
Ces fonctions sont principalement utilisées pour effectuer des calculs mathématiques.
Fonctions conditionnelles
Ces fonctions permettent de tester des conditions et renvoient une valeur selon que la condition évaluée est vraie ou fausse.
Fonctions de chaîne
Elles sont utilisées pour effectuer diverses opérations sur des chaînes, comme déterminer la longueur d'une chaîne.
Fonction de collecte
Cette fonction permet d'obtenir la taille de types complexes (tableaux ou cartes, par exemple). Il n'existe qu'une seule fonction de collecte : SIZE. La fonction SIZE sert principalement à obtenir le nombre d'éléments présents dans un tableau ou une carte.
Fonction de conversion de type
Cette fonction convertit les données d'un type en un autre. La seule fonction de conversion de type est CAST.
Fonction de génération de table
Cette fonction permet de transformer une seule ligne en plusieurs. La seule fonction de ce type est EXPLODE. Elle prend un tableau en entrée et renvoie les éléments du tableau sous forme de lignes séparées.
Types de date
Ces types sont fortement mis en forme. Dans chaque cas, chaque valeur contient le siècle, l'année, le mois, le jour, l'heure, la minute et la seconde. Ces fonctions permettent d'effectuer des opérations sur les types de données « date » (par exemple : ajouter un certain nombre de jours à une date, convertir des données d'un type dans un autre, etc.). Voici les fonctions DateTime Hadoop Hive les plus courantes :
Nom de la fonction | Type renvoyé | Description |
---|---|---|
Unix_Timestamp | BigInt | Elle obtient l'horodatage Unix actuel en secondes. |
To_date(string timestamp) | String | Elle obtient et produit la partie date d'une chaîne d'horodatage : |
year(string date) | INT | Elle obtient et produit la partie année d'une date ou d'une chaîne d'horodatage. |
quarter (date/timestamp/string) | INT | La fonction quarter (trimestre) a été introduite dans Hive 1.3. Elle obtient et produit le trimestre (de 1 à 4) de l'année pour une date, un horodatage ou une chaîne. |
month(string date) | INT | Elle obtient et produit la partie mois d'une date ou d'une chaîne d'horodatage. |
hour(string date) | INT | La fonction heure obtient et produit l'heure de l'horodatage. |
minute(string date) | INT | Cette fonction renvoie la partie minutes d'un horodatage. |
Date_sub(string starting date, int days) | string | La fonction DATE_SUB soustrait un nombre de jours à la date spécifiée. |
Current_date | date | Elle renvoie la date actuelle au début de l'évaluation de la requête. |
LAST _day(string date) | string | Elle obtient et produit le dernier jour du mois auquel la date appartient |
trunc(string date, string format) | string | Cette fonction élimine des champs d'une valeur TIMESTAMP. |