Aller au contenu principal

Modèles virtuels

Un modèle virtuel est un modèle sémantique qui ne correspond à aucune table physique. Axiome en supporte aujourd'hui une sorte : les modèles aplatis, qui transforment une colonne tableau de structs imbriquée en un modèle à part entière.

Pourquoi aplatir ?

Les schémas BigQuery imbriquent souvent les données — une table orders avec un tableau items, où chaque item a un sku, une quantity, un price… Imbriqués ainsi, les items ne peuvent être ni groupés ni mesurés directement. Aplatir orders.items crée un modèle virtuel order_itemschaque élément du tableau devient une ligne, joignable à sa commande parente.

Créer un modèle aplati

Dans Modèles sémantiques, cliquez sur Créer un modèle :

  1. Modèle parent — le modèle qui contient le tableau imbriqué (ex. orders).
  2. Colonne tableau — la colonne tableau-de-structs à aplatir (ex. items).
  3. Nom du modèle — le nom du nouveau modèle (sans point).
  4. Clé parente — la colonne du parent utilisée pour joindre :
    • Si le parent a déjà une clé primaire, le modèle aplati se joint par elle.
    • Sinon, la colonne choisie est déclarée clé primaire du parent dans le même geste.

Le nouveau modèle apparaît avec un badge Virtuel et une note du type « Aplati depuis orders.items ». Il se comporte comme n'importe quel modèle : il reçoit des dimensions et mesures générées, et vous pouvez y organiser clés, descriptions et métriques.

Dans les éditeurs de composants, le tableau d'origine affiche un raccourci — « Ce tableau est aplati dans le modèle order_items » — pour sauter directement aux champs aplatis.

La fenêtre Créer un modèle aplati, avec un modèle parent, une colonne tableau et la clé parente sélectionnés.

Supprimer un modèle virtuel

Supprimer le modèle retire définitivement le modèle virtuel et ses personnalisations. Les graphiques qui le référencent cesseront de fonctionner. Les modèles physiques ne peuvent pas être supprimés — seulement réinitialisés — mais les modèles virtuels oui, puisqu'ils n'existent que dans la couche sémantique.