Aller au contenu

Schemas Mondrian

Un schema Mondrian est le modèle qui transforme des tables de base de données brutes en un cube analytique — la chose qui vous permet de découper les ventes par région et catégorie de produit, d’explorer les tendances trimestrielles, ou de combiner une centaine de hiérarchies de dimension en une seule requête cohérente. Chaque cube que vous interrogez dans Saiku est soutenu par l’un d’eux.

Ce qui compose un schema

Au cœur du métamodèle Mondrian-4 se trouvent quatre concepts :

  • Cubes — chaque cube mappe à une ou plusieurs tables de faits (et leurs agrégats) et contient les mesures que vous pouvez agréger.
  • Dimensions — les axes selon lesquels vous découpez : temps, géographie, produit, client. Les dimensions sont construites à partir d’attributs (clés et libellés individuels) organisés en hiérarchies (niveaux ordonnés à travers lesquels vous pouvez naviguer).
  • Mesures — les nombres que vous agrégez : sum, count, distinct-count, min, max, avg. Les membres calculés vous permettent de les composer avec des formules MDX.
  • Schema physique — le graphe de tables sous-jacent : quelles colonnes sont des clés primaires, quelles colonnes sont des liens de clé étrangère entre les tables, et toutes les colonnes calculées dérivées d’expressions SQL.

Les dimensions partagées peuvent être définies une fois et réutilisées dans plusieurs cubes. Les rôles de contrôle d’accès peuvent restreindre la visibilité au niveau du cube, de la dimension, de la hiérarchie ou du membre individuel.

Deux formats de création — un seul moteur

Saiku prend en charge les schemas à la fois en XML et en YAML. Le moteur voit le même modèle dans les deux cas.

XML est le format Mondrian classique — verbeux mais familier à quiconque a déjà travaillé avec Mondrian.

YAML est l’alternative moderne. Il est plus lisible, plus facile à diff dans une revue de code, et facile à annoter avec des commentaires. Le moteur Saiku détecte automatiquement tout fichier de catalogue dont le contenu commence par schema: et le route vers le convertisseur avant le reste du pipeline de chargement. La conversion est sans perte dans les deux sens.

Les deux formats sont chargés de manière identique à l’exécution. Vous pouvez convertir entre eux à tout moment avec la CLI.

Le chemin sans code

Pas prêt à écrire des fichiers de schema ? Le dashboard Saiku vous donne deux points d’entrée sans code :

  • Schema designer — décrivez un cube en une phrase, laissez Claude proposer le modèle, puis affinez-le visuellement et enregistrez en XML.
  • Schemas — gérez tous vos schemas enregistrés, éditez le XML directement, et connectez les schemas aux connexions.

Ce qu’il y a dans cette section

PageCe qu’elle couvre
Schemas YAMLLa référence complète des éléments YAML avec exemples
CLIConvertir et linter les fichiers de schema depuis la ligne de commande
Structure du schemaDisposition de haut niveau d’un schema Mondrian-4
Cubes et mesuresTables de faits, groupes de mesures, types d’agrégateur, membres calculés
DimensionsAttributs, hiérarchies, niveaux, dimensions partagées
Schema physiqueTables, clés, liens de clé étrangère, colonnes calculées
AvancéEnsembles nommés, annotations, indications d’agrégation
Intelligence temporelleCalculs YoY, PoP, YTD et glissants déclaratifs via <TimeCalc>
Conversion de devisesConversion FX déclarative à date effective via <CurrencyConversion>
ExtensionsFormatteurs personnalisés, membres scriptés, points de plug-in
Contrôle d’accèsRôles, grants, politiques de roll-up