Entrepôts de données, année 2019
Bases de données vs Entrepôts de données
Précédemment:
On a vu (et en théorie compris) comment on pouvait indexer des données qui sont statiques facilement. Les bases de données font beaucoup plus que ça: Elles gères l’ajout, la mise à jour et la suppression de données en toute sécurité
Cette sécurité à un coût: une base de données en production doit: 1. Maintenir des indexes 2. Trouver un compromis entre rapidité en écriture et en lecture 3. Être robuste (à la panne et à la concurrence) via des systèmes de gestions des transactions
On parle de bases de données OLTP pour OnLine Transaction Processing. Pour être efficace, il faut concevoir ces bases de données précautionneusement pour garantir leur performance.
Problématiques de l’analyse de données:
Les services de gestions et stratégiques ont besoin d’avoir accès à des données issues des bases de données en production pour prendre des décisions.
Cela entraîne de nombreuses difficultés:
- Avoir accès à des données éparpillées dans des formats différents
- Les regrouper dans une base de données dédiées à l’analyse de données
Les conceptions de bases de données OLTP ne sont plus adaptées: on veut avant tout pouvoir analyser efficacement les données.
Un autre type conception de base de données peut être utilisée: on parle de bases de donnée OLAP* pour OnLine Analytical Processing.
En pratique, les données sont versées dans l’entrepôt de données à intervalle réguliers (journalier, hebdomadaire, …) mais pas en continue pour éviter les conflits liés à l’écriture concurrente.
Des technologies plus récentes et peu être moins matures permettent dans certains cas une intégration de données continues (à l’aide de technologies dites No-SQL).
De l’indexation aux entrepôts de données
La situation classique est d’avoir des sources de données éparpillées en production dans des technologies de bases de données variées, qu’on regroupe dans une base de données spécialisés dans les requêtes d’agrégations.
- Etape 1: Extraire et transformer les données en productions (à l’aide de technologies dédiées)
- Étape 2: Charger les données dans une base de données dédiées
- Étape 3: Indexer les données pour en accélérer l’analyse.
Analyse multidimensionnel dans un entrepots de données
Les données présentes dans une base de données OLAP sont structurées en fonction de différentes dimensions d’analyse qui dépendent de la situation à analyser.
Lorsque le nombre de dimensions à analyser est de un ou deux, on peut réaliser un simple tableau croisé.
Un exemple à deux dimensions
Par exemple, la table suivante:User Name | Product | Cost |
---|---|---|
Patrick | shoes | 20 |
Patrick | pants | 30 |
Michaël | shoes | 10 |
Michaël | hat | 50 |
Donne le tableau croisé suivant:
shoes | pant | hat | |
---|---|---|---|
Patrick | 20 | 30 | 0 |
Michaël | 10 | 0 | 50 |
Dimensions supérieurs
Lorsque le nombre de dimension est trop grand, il n’est plus possible de représenter les données sous forme d’un tableau croisé bilatéral.
On peut alors choisir deux dimensions parmis celles présentes et agréger les autres à l’aide d’une opération spécifique.
À condition que les opérations d’agrégation le permettent, il est possible de changer l’une des dimensions d’analyses par une autre. On dit qu’on fait tourner le cube.
La terminologie autours du cube est une aide visuelle importante.
Outre les rotations, il est possible de faire les opérations suivantes:
Extraire des données qui nous intéressent ayants une ou des valeurs particulières:
Exemple: Extraire les tuples concernants des personnes entre 18 et 25 ans. Le résultat est un cube ayant les même dimensions.
Regrouper/dégrouper des données dans le tableau croisée via des opérations d’agrégations spécifiques.
Exemple: Le tableau croisé du chiffre d’affaire d’une entreprise en regroupant par ville, par pays ou par continent.
Compiled the: mer. 08 janv. 2025 11:51:31 CET