|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : juin 2004 Messages : 24 ![]() |
Bonjour à tous,
Je suis étudiant et lors d'un cours sur les datawarehouse, nous avons parlé de cubes etcetera. J'en ai saisi le principe mais je me pose une question. Si on utilise la fonction GROUP BY CUBE('A', 'B', 'C') (sous oracle) un cube de données sera créé en fonction de ces parametres (cest a dire toutes les combinaisons de group by utilisables avec A,B,C). Mais l'intéret (selon moi) est de pouvoir récupérer ultérieurement les données de ce cube donc on peut le mettre dans une vue matérialisée ok. Mais (encore) comment est-ce possible de récupérer seulement une dimension (du cube) à la fois? Ca prenons un exemple, le CUBE(A, B, C) effectuera les group by suivants: (vide), A, B, C, AB, AC, BC, ABC Mais ce qui m'intéresserait serait de pouvoir les récupérer indépendamment les uns des autres afin de pouvoir faire du reporting. Est-ce possible et si oui comment? Merci d'avance. Bribus |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Frédéric BROUARDExpert SGBDR & SQL Inscription : mai 2002 Messages : 10 959 ![]() |
L'intérêt du modèle OLAP est de se débarrasser des informations qui sont du bruit pour l'analyse multidimensionnelle. Ainsi on n'a aucun intérêt à conserver des rubrique du genre nom, prénom, adresse... De plus il faut synthéthiser l'information pour la comparer. Par exemple 'Provence Alpes Côte d'Azur' sera la région 12...
En sus un modèle de données "cubisé" permet de définir des index de précalcul à différents niveaux. Si votre cube contient par exemple 10 dimensions + une échelle de temps, on peut prévoir des agrégats intermédiaires précalculés afin de réduire drastiquement les temps de traitement. Mais vous avez raison, les groupage CUBE et ROLLAP qui font partie de la norme SQL permettent de réaliser des cumuls sans obligatoirement réaliser un modèle de DATAMART.... En revanche les temps de réponse seront particulièrement catastrophique dès qu'il y aura un tantinet de volume dans vos données. A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/ Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp. Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * * |
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : juin 2004 Messages : 24 ![]() |
Merci pour ces précisions
En ce qui concerne l'élagage et la synthétisation, c'est ce que je pensais. En fait, je vais avoir dans les jours qui viennent un tp avec une table des faits contenant plusieurs Millions de ligne donc le volume de données sera assez important. Si j'ai bien compris ce que vous dites, afin d'acceder assez rapidement a mes données nécessaires au reporting, je dois passer par des DATAMART, qui constituent en fait les données nécessaires à l'établissement d'un report en particulier. Mais en fait le schéma que j'avais en tete aurait été de créer un cube de données a partir de certaines données de l'entrepot, puis de créer des DATAMART a partir de ce cube afin de réduire les temps d'accés à ces données (par la suite). Est-ce possible? (et utile?) et si oui, Existe-t-il une procédure a effectuer pour réaliser cela? Dans tous les cas, si j'ai bien compris, la fonction CUBE, ne générant pas "d'architecture" CUBE ne permet en aucun cas de récupérer par la suite des données sur une dimension en particulier. Il faut donc que je me penche sur les DATAMART. Merci et A+ |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com