GENERATE_UUID |
Génère UUID |
|---|---|
| BigQuery | |
Syntaxe
| GENERATE_UUID() |
Description
Cette fonction permet de demander une chaîne de caractères avec un UUID de générées.
Remarques
- GENERATE_UUID() produit un identifiant unique de manière automatique : Cette fonction permet de générer une chaîne de texte représentant un identifiant unique universel (UUID), ce qui est très pratique pour créer des clés primaires ou des identifiants uniques sans collision dans des ensembles de données volumineux.
- Le format renvoyé suit la norme UUID version 4 : L'UUID généré est de type aléatoire (UUID v4), structuré en 5 groupes séparés par des tirets (par exemple f47ac10b-58cc-4372-a567-0e02b2c3d479). Il contient 32 caractères hexadécimaux et respecte un schéma bien défini qui facilite sa reconnaissance et son traitement.
- La fonction ne prend aucun paramètre : La simplicité de GENERATE_UUID() réside dans son appel : elle ne nécessite ni argument, ni condition. Cela en fait une solution directe et sans configuration pour injecter un identifiant dans une colonne ou un champ généré.
- Elle est utile pour la création d'identifiants dans des opérations d'insertion : Lorsque vous insérez des données dans une table BigQuery et que vous avez besoin d'une clef unique, cette fonction peut être appelée pour chaque ligne insérée, garantissant l'unicité globale sans gestion manuelle.
- Le résultat est de type STRING et non BYTES : La valeur retournée est une chaîne de caractères. Il est donc possible de l'utiliser dans des jointures, des exports CSV, ou encore comme clé externe dans des systèmes où les identifiants sont sous forme textuelle.
- Elle peut être utilisée dans des requêtes de transformation de données : Lors d'opérations comme INSERT INTO ... SELECT, GENERATE_UUID() peut être utilisé pour générer dynamiquement des identifiants sur les lignes dupliquées, transformées ou agrégées, assurant ainsi la traçabilité des nouvelles entrées.
- Elle garantit une très faible probabilité de collision : Bien que les UUID v4 soient aléatoires, la taille de l'espace (128 bits) rend les collisions quasiment impossibles, même à grande échelle. Cela rend cette méthode fiable pour produire des identifiants uniques dans un système distribué.
- Elle peut compléter ou remplacer des identifiants auto-incrémentés : Contrairement à un identifiant numérique séquentiel, un UUID ne nécessite pas de coordination centrale pour son incrémentation. Cela la rend idéale pour les systèmes distribués ou pour éviter des problèmes de conflits dans les insertions parallèles.
Dernière mise à jour : Jeudi, le 18 Juin 2020