Avoir un modèle de données complet, sécurisé et unifié, c’est s’assurer d’avoir une base de données logique et simplifiée qui élimine les doublons, optimise les performances des requêtes et libère de l’espace de stockage.
L’idée ? Transformer vos données brutes (données comptables, opérationnelles, RH, non-financière...) pour faciliter leurs analyses et identifier des axes de performance.
Nettoyage des données, définition des mesures et des dimensions, optimisation des données à l’aide de hiérarchies, définition d’unités et de devises... : ce processus sert à concevoir et à décrire de manière structurée la façon dont les données seront organisées, stockées et inter-reliées au sein de votre système d’information pour préparer vos données à l’analyse.
Attention, si vos données n’existent pas à la source, pensez bien que vous ne pourrez pas développer des axes d’analyse.
Développé par Ralph Kimball, l’approche dimensionnelle, moins rigide et structurée, s’appuie sur une modélisation des données qui s’aligne sur les processus métier en mettant l’accent sur la simplicité et la facilité d’utilisation.
Ce type de modélisation permet une récupération rapide des informations à partir de grands ensembles de données en fournissant une structure qui sépare les données sans rapport ou sans conséquence du corps principal.
En décomposant vos données en entités clairement définies et organisées, vos consommateurs peuvent comprendre ce que sont ces données, à quoi elles servent et comment les joindre à des données nouvelles ou supplémentaires. Le modèle dimensionnel aide également à identifier les relations entre différents types de données, permettant une analyse plus approfondie des tendances et des modèles.
Cette approche repose autour de concepts clés appelés dimensions et faits :
Avant de vous parler de conception, passons en revue un peu de vocabulaire.
Afin de faciliter la compréhension du processus de modèle dimensionnel, prenons un exemple. Utilisons les ventes de vêtements comme processus de vente et utilisons la transaction suivante comme exemple simple. Disons que Arthur, un employé du magasin, facture à Marie 1 robe, 1 chapeau et 1 paire de bottes au magasin n°3 de Paris le mercredi 29 novembre 2023.
Voici à quoi ressembleraient ces données dans un système transactionnel avec un sous-ensemble de détails sur l’achat.
Vous pouvez probablement imaginer à quel point cela pourrait rapidement devenir incontrôlable avec des milliards de transactions, des millions de clients et des milliers de magasins. L’interrogation de données transactionnelles à cette échelle peut créer un énorme goulot d’étranglement dans les rapports, avec des requêtes qui mettent des heures à être renvoyées, voire qui expirent. Et on ne parle même pas du nombre de doublons !
Maintenant que vous avez un peu de contexte, voici 5 étapes à suivre pour vous aider à modéliser vos données :
Dans l’exemple ci-dessus, nous souhaitons suivre les ventes dans un magasin de vêtement. Mais il peut s’agir de tout ce qui représente un processus métier “réalisé”.
Cela dépendra du volume total de données au niveau des transactions. C’est généralement une bonne idée de commencer avec les données les plus fines et de stocker chaque élément de transaction de vente.
Identifiez les attributs impliqués dans chaque transaction et créez des tables de dimensions distinctes pour eux. Chaque enregistrement de la table de dimensions doit être unique et être associé à une clé primaire numérique. Dans cet exemple, les magasins, les produits, les clients, les employés et les dates sont autant de dimensions de la vente.
Les mesures restantes, telles que la quantité et le montant des ventes, sont vos mesures et appartiennent à une table de faits. À côté de chaque mesure, vous devez disposer de clés étrangères faisant référence à toutes les dimensions impliquées dans le processus, telles que le produit, le client et le magasin.
Pour modéliser vos données, deux solutions s’offrent à vous, le schéma en étoile ou le schéma en flocon.
Pour terminer notre exemple, voici un schéma en étoile pour représenter notre cube de vente.
Vous pensiez que c’était terminé ? Et bien non, pour compléter votre analyse il faudra créer 3 dimensions supplémentaires :