OLAP Par Exemple

31
La vente de chaussures Source : Bernard Lupin OLAP PAR L'EXEMPLE NEGRE Elsa 2014-2015 Université Paris-Dauphine

description

Projet chaussures

Transcript of OLAP Par Exemple

  • La vente de

    chaussures

    S o u r c e : B e r n a r d L u p i n

    OLAP PAR L'EXEMPLE

    NEGRE Elsa 2014-2015

    Universit Paris-Dauphine

  • La socit Au bon pied,

    installe Bonneuil,

    dsire construire une base de donnes

    pour suivre l'volution de ses ventes de chaussures,

    par modle et par mois.

    CONTEXTE

  • 7 tapes :

    1. Les proprits de la table VENTE

    2. Les 3 dimensions du NOMBRE

    3. Les hirarchies de la dimension TEMPS

    4. Les calculs la vole

    5. Les attributs

    6. Les calculs temporels

    7. Les donnes parses

  • But : construire progressivement une base de donnes tout fait classique, avec des tables constitues de colonnes .

    Une table Vente :

    Dans la ralit : les dif frents types de chaussure sont stocks dans une table modle, et on ne met dans la table

    vente que la cl correspondante.

    ETAPE 1 :

    LES PROPRITS DE LA TABLE VENTE (1)

    Mois Modle Nombre Total HT

    Janvier 2000 Escarpin 5 1 700

    Janvier 2000 Ville 300 65 000

    ..........

  • Reportings possibles :

    nombre de paires de chaussure par mois et par modle

    Valeur HT des paires de chaussure par mois et par modle

    ETAPE 1 :

    LES PROPRITS DE LA TABLE VENTE (2)

    Modle \ Mois Janvier 2000

    Escarpin 5

    Ville 300

    Modle \ Mois Janvier 2000

    Escarpin 1 700

    Ville 65 000

  • La socit s'agrandit et dispose maintenant de plusieurs commerces.

    Ici aussi, une base relationnelle disposera d'une table magasin, avec un nom et une cl, plus d'autres

    caractristiques telles que l'adresse.

    ETAPE 1 :

    LES PROPRITS DE LA TABLE VENTE (3)

    Mois Modle Magasin Nombre Total HT

    Avril 2000 Botte Champigny 10 1 500

    Avril 2000 Tennis Paris Bastille 850 260 000

    ..........

  • L'analyse s'avre dj un peu plus complexe la reprsentation tabulaire ne possde que deux dimensions.

    Si l 'on veut tudier les performances d'un magasin, il faut faire une slection sur celui -ci.

    Mais si on s'intresse ensuite ce qui s'est pass en fvrier sur tous les magasins, il faut repartir des donnes de dpart

    et faire une autre slection.

    ETAPE 1 :

    LES PROPRITS DE LA TABLE VENTE (4)

  • 6 types de reportings possibles :

    Pour chaque magasin ou pour le total des magasins, les deux reportings prcdents (nombre de paires de chaussures ou valeur HT avec les modles en ligne et les mois en colonne),

    Pour chaque modle de chaussure ou pour le total, deux reportings avec les mois en ligne et les magasins en colonne,

    Pour chaque mois ou pour l'anne, deux reportings avec les magasins en ligne et les modles en colonne.

    Ces six peuvent encore tre multiplis par deux si l 'on fait pivoter les axes des abscisses et des ordonnes.

    ETAPE 1 :

    LES PROPRITS DE LA TABLE VENTE (5)

  • La socit dsire aussi tudier la rpartition de ses ventes suivant d'autres critres, comme

    Genre (Homme/Femme/Enfant),

    Pointure,

    Couleur,

    Le tableau de reporting est devenu trs important, la fois en nombre de colonnes et de lignes.

    Pour analyser ces donnes, il faut faire des sommes sur des regroupements, avec des temps de traitement pas toujours

    envotants, il faut donc grer des index, etc.

    ETAPE 1 :

    LES PROPRITS DE LA TABLE VENTE (6)

  • Structure de donnes relationnelle construite : schma en toile

    centre de l'toile = table vente,

    branches = tables magasin, modle, couleur, etc.

    = axes d'analyses

    ETAPE 1 :

    LES PROPRITS DE LA TABLE VENTE (7)

  • ETAPE 1 :

    LES PROPRITS DE LA TABLE VENTE (8)

  • la socit Au bon pied dsire donc suivre l 'volution de ses ventes de chaussures, par exemple en fonction des mois,

    modle et magasin.

    -> nos dimensions

    Les deux indicateurs suivis par les responsables de la socit sont le nombre de chaussures vendues et les prix de vente

    hors taxe.

    -> nos mesures

    Notre base de donnes est devenue multidimensionnelle.

    ETAPE 2 :

    LES TROIS DIMENSIONS DU NOMBRE (1)

  • ETAPE 2 :

    LES TROIS DIMENSIONS DU NOMBRE (2)

  • Schma en toile

    ETAPE 2 :

    LES TROIS DIMENSIONS DU NOMBRE (3)

    MOIS

    MAGASIN

    MODELE VENTE

    idMag

    idMod

    idMois

    Nombre

    PrixHT

    idMag

    descMag

    adresseMag

    idMod

    descMod

    pointure

    descPointure

    couleur

    descCouleur

    idMois

    descMois

  • L'tude des ventes mois par mois est certes utile, mais elle reste restrictive.

    Nous allons donc rebaptiser la dimension mois, et l 'appeler par exemple Temps .

    Les positions de la dimension Temps peuvent tre

    des mois,

    mais aussi des jours,

    des trimestres

    ou des annes.

    Ainsi, les responsables des ventes pourront analyser les rsultats des dif frents magasins sur des niveaux plus ou

    moins prcis.

    ETAPE 3 :

    LES HIRARCHIES SUR LA DIMENSION TEMPS (1)

  • Pour la dimension Magasin, nous avons une hirarchie 5 niveaux : idMag (descMag), ville, dpartement, rgion et pays.

    Pour la dimension Temps, nous avons 2 hirarchies : La 1re 5 niveaux : idTps, jour, mois (nomMois), trimestre, anne.

    On pourra alors tout naturellement rattacher le 18/05/00 mai 2000, puis 2me trimestre 2000, puis 2000.

    La 2me 4 niveaux : idTps, jour, semaine et anne. Ici, le 18/05/00 est rattach semaine 19 2000, puis 2000.

    Pour la dimension Modle, nous avons 3 hirarchies : La 1re 2 niveaux : idMod (descMod) et genre

    La 2me 2 niveaux : idMod (descMod) et couleur

    La 3me 2 niveaux : idMod (descMod) et pointure

    Le nouveau modle relationnel associ est un "schma en flocons".

    ETAPE 3 :

    LES HIRARCHIES SUR LA DIMENSION TEMPS (2)

  • Les mesures Nombre et Total HT sont maintenant dimensionnes sur Temps, Modle et Magasin.

    Chaque magasin fournit ses donnes quotidiennement, et la base de donnes OLAP se charge de consolider ces donnes

    sur les dif frentes hirarchies.

    Lorsque cette consolidation consiste effectuer des sommes, comme c'est le cas ici, des fonctions intgres permettent de

    faire cette opration trs rapidement et trs simplement.

    ETAPE 3 :

    LES HIRARCHIES SUR LA DIMENSION TEMPS (4)

  • ETAPE 3 (5)

    VENTE

    idMag

    idMod

    idTps

    Nombre

    PrixHT

    MAGASIN

    idMag

    ville

    descMag

    dpartement

    rgion

    pays

    AllMag

    TEMPS

    idTps

    jour

    mois

    trimestre

    anne

    AllTps

    descMois semaine

    MODELE

    idMod

    couleur

    AllMod

    descCoul

    descMod

    genre

    descGenre pointure descPoint

  • Notre base OLAP dispose pour l ' instant de deux mesures :

    nombre de chaussures vendues

    prix total hors taxe.

    Ces mesures sont dimensionnes par Temps, Modle et Magasin.

    A partir de ces deux mesures, nous pouvons en crer d'autres, qui cette fois ne seront pas stockes dans la base de donnes

    mais calcules dynamiquement lorsqu'un utilisateur dsire y

    accder.

    ETAPE 4 :

    LES CALCULS LA VOLE (1)

  • Du point de vue de l 'uti l isateur, i l n'y a aucune diffrence entre une mesure stocke et une mesure calcule.

    Prix moyen est dimensionne suivant Temps, Modle et Magasin et est de type dcimal.

    Prix moyen = Total HT / Nombre

    Il n'est pas ncessaire que tous les lments du calcul soient dimensionns de la mme faon.

    Total TTC = Total HT * 1,196

    Comme ce taux change (trop) souvent, i l est possible de crer une nouvelle variable, TVA , dimensionne seulement sur le temps.

    Cette variable indiquera le taux de TVA appliquer pour chaque position de la dimension Temps.

    Total TTC = Total HT * (100+TVA)/100

    ETAPE 4 :

    LES CALCULS LA VOLE (2)

  • ETAPE 4 :

    LES CALCULS LA VOLE (3)

    De mme, si le taux de T VA est dif frent suivant les produits vendus, alors les dimensions de la variable T VA doivent tre Temps et Produit. Graphiquement, cette variable ne sera plus reprsente par une l igne mais par un plan.

  • Savoir combien de chaussures ont t vendues, c'est bien, mais trouver celles qui se vendent le mieux, voil qui va

    permettre la socit Au bon pied de prosprer.

    Les dif frents magasins vont devoir fournir des donnes plus prcises sur leur ventes, en indiquant chaque jour le nombre

    de modles vendus dans chaque rfrence disponible .

    Nous allons donc remplacer la dimension Modle par la dimension Rfrence .

    le magasin Paris Bastille a vendu 7 paires de chaussures de rfrence 215431324 le 18 Aot 1998.

    ETAPE 5 :

    LES ATTRIBUTS (1)

  • Par contre, pour se rendre compte de l'tat du march, c'est plus dif ficile.

    I l suffit de dfinir des attributs pour chaque rfrence de chaussure.

    Couleur (bleu, blanc, rouge),

    Matire (cuir, toile, synthtique),

    Catgorie (homme, femme, enfant).

    Si les rfrences sont dif frentes pour chaque pointure d'un modle, alors Pointure peut aussi tre un attribut, sinon ce

    sera une nouvelle dimension.

    ETAPE 5 :

    LES ATTRIBUTS (2)

  • notre base OLAP permet maintenant de rpondre des questions plus complexe comme :

    Quelle couleur de chaussure se vend le plus en Aot 1998 ?

    Combien le magasin Paris Bastille a-t-il vendu de chaussures femme en cuir en 1998 ?

    Quelle est la part de chaussures homme, femme et enfants chez Au bon pied ?

    ETAPE 5 :

    LES ATTRIBUTS (3)

  • ETAPE 5 (4)

    VENTE

    idMag

    idRef

    idTps

    Nombre

    PrixHT

    TVA MAGASIN

    idMag

    ville

    descMag

    dpartement

    rgion

    pays

    AllMag

    TEMPS

    idTps

    jour

    mois

    trimestre

    anne

    AllTps

    descMois semaine

    REFERENCE

    idRef

    couleur

    AllRef

    descCoul

    descRef

    catgorie

    descCateg pointure descPoint

  • Les exemples de calculs proposs dans les tapes prcdentes ne suffisent plus la socit Au bon pied .

    Pour mieux cibler les actions entreprendre, il faut en effet pouvoir tudier l 'volution des donnes dj archives, et si

    possible prvoir leur volution dans le futur.

    Les bases OLAP sont tout fait adaptes pour cela, elles disposent toujours de fonctions plus ou moins volues

    permettant de manipuler des informations temporelles .

    ETAPE 6 :

    LES CALCULS TEMPORELS (1)

  • Par l 'criture de petits programmes simples, nous pouvons maintenant dfinir des formules rpondant aux questions de

    ce type :

    Quelle est l'volution de mon bnfice net par rapport au mme mois de l'anne prcdente.

    Quelle est l'volution de mon chiffre d'affaire par rapport la moyenne des trois derniers mois.

    Quelle sera la tendance des 12 prochains mois suivant telle ou telle rgle d'extrapolation.

    Pour rpondre des questions de ce type l 'aide d'une base relationnelle, i l faudrait certainement crire des programmes

    trs complexes, ayant tellement de traitements et de donnes

    analyser que l'utilisateur n'obtiendrait peut -tre jamais sa

    rponse...

    ETAPE 6 :

    LES CALCULS TEMPORELS (2)

  • Ca y est ! La socit Au bon pied , grce sa gestion rigoureuse, est maintenant trs bien implante, elle dispose en outre d'un choix de chaussures absolument impressionant.

    Pas moins de 12000 rfrences sont disponibles,

    et plus de 500 commerces ont ouvert leurs portes travers le pays.

    Chacun d'eux envoie quotidiennement ses chiffres de vente au sige de la socit, qui est rest Bonneuil.

    Au bout d'un an, on obtient donc 12000*500*365, soit plus de 2 milliard de cellules potentielles pour la variable "Nombre".

    Cependant, chaque magasin ne propose pas l 'ensemble du catalogue la clientle.

    En moyenne, environ 600 rfrences sont disponibles dans chaque chope, qui n'est ouverte que 250 jours par an. I

    l n'y aura donc rellement que 600*500*250 cellules remplies, c'est dire 75 millions de cellules (25 fois moins que la taille potentielle ).

    ETAPE 7 :

    LES DONNES PARSES (1)

  • Les donnes ne sont pas rparties de manire alatoire au sein des variables dfinies dans notre base OLAP.

    Par exemple, le magasin "Paris Bastille" ne vend jamais de chaussure rfrence "23154". Quelque soit le jour de l'anne, la

    variable "Nombre" sera donc vide pour ce magasin et cette rfrence.

    Toutes les dimensions d'une variable n'ont donc pas la mme importance.

    Afin d'optimiser la gestion de l'espace disque et l 'accs aux donnes, il convient donc d'indiquer au moteur OLAP quelles

    sont les caractristiques d'une variable (dense, parse, ->

    dimension composite, dimension conjointe, ).

    ETAPE 7 :

    LES DONNES PARSES (2)

  • Exemple.xls

    EXEMPLE