La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Mise en œuvre du langage MDX

Présentations similaires


Présentation au sujet: "Mise en œuvre du langage MDX"— Transcription de la présentation:

1 Mise en œuvre du langage MDX
-3ème partie- Comment concevoir un cube avec Mondrian…

2 Il faut produire un fichier XML … (1)
spécifiant : le nom du cube les Measures les Dimensions -> Shared dimensions -> Multiple Hierarchies -> Parent-child hierarchies -> Snowflake schema les membres calculés les fonctions définies

3 Il faut produire un fichier XML … (2)
<Cube name="Sales"> <Table name="sales_fact_1997"/> ... </Cube> Possibilité d’utiliser <View> et <Join> pour construire des requêtes SQL plus complexes

4 Il faut produire un fichier XML … (3)
Le cube Sales a des mesures : <Measure name="Unit Sales” column="unit_sales" aggregator="sum" datatype="Integer" formatString="#,###"/> <Measure name="Store Sales" column="store_sales" aggregator="sum" datatype="Numeric" formatString="#,###.00"/> Chaque mesure a un nom, correspond à une colonne dans la table de faits et spécifie un opérateur d’agrégation tel que "sum", "count", "min", "max", "avg", and "distinct count"

5 Il faut produire un fichier XML … (4)
Le cube Sales a des dimensions : <Dimension name="Gender" foreignKey="customer_id"> <Hierarchy hasAll="true" primaryKey="customer_id"> <Table name="customer"/> <Level name="Gender" column="gender" uniqueMembers="true"/> </Hierarchy> </Dimension> L’attribut foreignKey dans <Dimension> est le nom d’une colonne de la table de faits La <Hierarchy> a un attribut clé primaire (primaryKey) Par défaut, la Hiérarchie a un élément de plus haut niveau nommé ‘All’ avec un seul membre appelé 'All {hierarchyName}'.

6 Il faut produire un fichier XML … (5)
Avec éventuellement des hiérarchies multiples : <Dimension name="Time" foreignKey="time_id"> <Hierarchy hasAll="false" primaryKey="time_id"> <Table name="time_by_day"/> <Level name="Year" column="the_year" type="Numeric" uniqueMembers="true"/> <Level name="Quarter" column="quarter" type="Numeric" uniqueMembers="false"/> <Level name="Month" column="month_of_year" type="Numeric" uniqueMembers="false"/> </Hierarchy> <Hierarchy name="Time Weekly" hasAll="false" primaryKey="time_id"> <Table name="time_by_week"/> <Level name="Year" column="the_year" type="Numeric" uniqueMembers="true"/> <Level name="Week" column="week" uniqueMembers="false"/> <Level name="Day" column="day_of_week" type="String" uniqueMembers="false"/> </Hierarchy> </Dimension>

7 Il faut produire un fichier XML … (6)
Un exemple de schéma en étoile (La dimension Produit est constituée de 3 tables : product, product_class, product_type: <Cube name="Sales"> <Dimension name="Product" foreignKey="product_id"> <Hierarchy hasAll="true" primaryKey="product_id" primaryKeyTable="product"> <Join leftKey="product_class_id" rightAlias="product_class" rightKey="product_class_id"> <Table name="product"/> <Join leftKey="product_type_id" rightKey="product_type_id"> <Table name="product_class"/> <Table name="product_type"/> </Join> </Join> </Hierarchy> </Dimension> </Cube>

8 Il faut produire un fichier XML … (6)
1/ La constitution d’un tel fichier est complexe 2/ Il existe des outils facilitant l’écriture du fichier XML (vérification de la syntaxe) 3/ Il existe des générateurs (wizards) offrant une interface utilisateur pour générer automatiquement le fichier XML selon la bonne syntaxe : les outils existants sont cependant limités ...

9 Exemple de l’outil Cube Designer
1/ Choix du nom du cube et de la base de données

10 Exemple de l’outil Cube Designer
2/ Choix des informations utilisées

11 Exemple de l’outil Cube Designer
3/ Définition des mesures

12 Exemple de l’outil Cube Designer
4/ Définition des autres dimensions

13 Exemple de l’outil Cube Designer
5/ Sauvegarder et exploiter le fichier XML produit


Télécharger ppt "Mise en œuvre du langage MDX"

Présentations similaires


Annonces Google