SlideShare une entreprise Scribd logo
Conception du datawarehouse
Introduction les projets de Business Intelligence Le processus général Conception Définition des besoins Définition de l’architecture  technique  Choix des outils Définition des indicateurs Modélisation dimensionnelle Définition des rapports / tableaux de bord Installation et paramétrage des outils Conception du  modèle physique Création  des « univers » Développement des rapports / tableaux de bord Déploiement Formation développement  des  alimentations
Le DataWarehouse
Le DataWarehouse DataWarehouse = Entrepôt de données Base de données spécialisée Réceptacle de l’ensemble des données de l’entreprise => grosses quantités de données Objectif : permettre à une organisation de prendre des décisions basées sur les informations disponibles Les informations proviennent des systèmes opérationnels de  l’organisation et parfois de données externes à l’organisation Les données sont non volatiles : elles sont mises à jour uniquement par des flux d’alimentation exécutés périodiquement
Le DataWarehouse Caractéristiques du DataWarehouse  Lisibilité pour l’utilisateur final Les données doivent être simples à comprendre, mais permettre plusieurs analyses différentes selon des critères différents (dimensions) Plus le modèle est lisible (intuitif) pour les utilisateurs, moins sera long (coûteux) de définir une surcouche pour le rendre compréhensible Performances Temps d’exécution d’une requête / d’un rapport ne doit pas dépasser 30 secondes Il est généralement nécessaire de créer des agrégations de données et/ou des redondances => impact sur les performances au moment de l’alimentation des données => cela complique l’administration du système => Trouver le juste milieu entre les performances à l’exécution et la maintenabilité du système
Le DataWarehouse Caractéristiques du DataWarehouse  Les données sont généralement stockées dans une base de données relationnelle Mais la structure des tables est adaptée à la navigation dans les données (dimensions, hiérarchies) Un gros effort est fourni sur l’aspect Performances  Optimisation des tables, des indexes et du matériel (mémoire, processeur, disques)
Le DataWarehouse OLTP vs OLAP  OLTP   On Line Transactional Processing OLAP   On Line Analytical Processing Données mises à jour en continu par les utilisateurs => Sécurisation des mises à jour et de la cohérence  des données Données en lecture seulement Mises à jour 1 fois par programme Beaucoup d’utilisateurs concurrents « Peu »  d’utilisateurs (managers, Directions)  Un seul objet traité à la fois Beaucoup d’objets manipulés Mêmes requêtes simples utilisées un grand   nombre de fois Requêtes complexes souvent différentes Tables nombreuses, normalisées Peu de tables, de grande taille et dénormalisées   Beaucoup de calculs d’agrégation
Le DataWarehouse Il n’est pas recommandé de faire des analyses multidimensionnelles dans une base de données de production (OLTP) Les données d’une base de production sont par nature très volatiles  => on charge dans le datawarehouse un ensemble de données cohérentes et validées Les données d’une base de production ne sont pas organisées pour des requêtes OLAP (nombreuses tables et jointures sur un volume de données très important) Les requêtes ne doivent pas pénaliser les performances du système de production => Alimentation d’une base de données (quelquefois sur une machine) dédiée à l’analyse multidimensionnelle
Conception dimensionnelle
Sommaire Le DataWarehouse Conception dimensionnelle Structure du DataWarehouse
Conception dimensionnelle Conception dimensionnelle 1 dimension = 1 table de dimension 1 ensemble d’indicateurs = 1 table de faits => Schéma « en étoile » id td1 id td2 id td3 id td4 indicateur 1 indicateur 2 .... Table de fait id libelle .... Table de  dimension 2 Table de  dimension 4 Table de  dimension 1 Table de  dimension 3 id libelle .... id libelle .... id libelle ....
Conception dimensionnelle Conception des dimensions hiérarchiques Dénormalisation complète des tables de dimension => duplication des données (pas grave car peu de volume dans les tables de dimension) => meilleures performances car moins de jointures Normalisation partielle Ville id nom_ville departement region pays Ville id nom_ville id_departement departement id nom_ departement id_region Region id nom_region pays id nom_ville departement region pays 1 Avignon 84 PACA France 2 Cavaillon 84 PACA France 3 Marseille 13 PACA France
Conception dimensionnelle La dimension Temps La plus utilisée et la plus importante en terme de performances 90 % des requêtes sont filtrées sur le temps ou affichent/comparent des données temporelles La table Temps doit permettre de facilement gérer : L'ensemble de la hiérarchie Temps (jour, … , année) La période courante, Les x périodes précédentes, suivantes L'affichage, le tri de l'ensemble de la hiérarchie Temps  Les données de la table Temps sont remises à jour chaque jour Si besoin de descendre plus dans le détail que la journée, créer une autre table dédiée, pour ne pas dégrader les performances id_date  : date num_jour_annee : entier num_jour_semaine : entier num_jour_mois : entier id_semaine : entier cpt_semaine : entier num_semaine : entier id_mois : entier cpt_mois : entier num_mois : entier id_trimestre: entier … … …  Temps 25/09/2009 268 5 25 200939 0 (semaine courante) 39 200909 0 (mois courant) 9 200903 … … …
Conception dimensionnelle La dimension Temps 13 mois glissants … where cpt_mois between -12 and 0 Années A-1, A et A+1 … where cpt_annee in (-1, 0, 1) Tri par mois … order by cpt_mois ou  … order by id_mois Somme des ventes par trimestre .... sum(vente) group by id_trimestre Performances : select ....  from temps T inner join table_fait F on T.id_date = F.id_date where T.cpt_mois in (-1, 0) select … from table_fait F  where  to_char(F.id_date,'MM') = to_char(add_months(now, -1),'MM') or to_char(F.id_date,'MM') = to_char(add_months(now, 0),'MM') Récupère 60 lignes dans la table Temps puis utilise l'index sur la table de fait Pas d'utilisation d'index Parcoure la table entière
Conception dimensionnelle Conception des tables de fait Les données de détail le plus fin sont stockées dans les tables de fait Les agrégations (somme, moyenne, …) sont en général calculées Les comptages utilisent des colonnes dédiées Si problèmes de performance => tables d'agrégations id date id produit nb_unites prix_vente nb_retours .... Table de fait id_date .... id_mois Temps id mois id produit nb_unites total_ventes .... Table de fait agrégée
Conception dimensionnelle Les clés des tables de dimension (et donc de fait) Les clés sont des clés techniques (bigint, NUMBER, ...) Éviter les clés ayant un sens fonctionnel => mauvaises performances si de type texte => pbms de mise à jour si le contenu évolue Éviter les clés du système de production => les clés du système de production ne sont pas toujours stables dans le temps (réutilisation de clés) => il peut y avoir plusieurs sources donc plusieurs clés dont les valeurs peuvent se chevaucher Id  : number matricule : varchar nom prenom ... Personne
Conception dimensionnelle 2 points de conception Un attribut ne peut exister que dans une et une seule dimension, alors qu’un fait peut figurer dans plusieurs tables de faits Si une dimension semble apparaître a plusieurs endroits, cela signifie probablement qu’elle joue plusieurs rôles.  Nommez ces rôles et traitez les comme des dimensions différentes
Structure du DataWarehouse
Structure du datawarehouse Datawarehouse vs Datamarts Plusieurs niveaux de détail / d'agrégation des données Données élémentaires : copie quasi conforme (mais contrôlées et nettoyées) des données de production => « staging area » (zone de transit) Données agrégées au niveau de détail requis par l'analyse Données agrégées à un niveau supérieur pour des contraintes de performances 2 choix techniques possibles (non exclusif) Base relationnelle Base multi-dimensionnelle (Cubes) staging area Le datawarehouse regroupe  l'ensemble de ces bases / objets staging area datamart finances datamart RH datamart logistique Alimentation
Structure du datawarehouse Base de données relationnelle vs multi-dimensionnelle La base multi-dimensionnelle stocke les valeurs sur l'ensemble des dimensions, à tous les niveaux d'agrégation peu d'informations dans les dimensions => accès très rapide => optimisé pour la navigation dans les hiérarchies et pour les comparaisons   temporelles => structure plus rigide La base relationnelle est plus souple, elle permet de stocker autant d'informations que nécessaire  => plus souple (requêtes / agrégations à la demande) => si volume très important => pbms de performances
Structure du datawarehouse Optimisation des performances Indexes sur l'ensemble des clés (tables de fait et tables de dimensions)  mais aussi sur les données  « critères d'agrégation » Répartition sur plusieurs disques Données sur 1 disque Indexes sur 1 disque Grosses tables de fait réparties sur plusieurs disques, en fonction des dimensions (souvent en fonction de l'axe temps) Janvier => disque 1 Février => disque 2 … …  Création de « vues matérialisées » (snapshots) pour les agrégations supplémentaires Avantages des vues et stockage sur disque Rafraichies à la demande ou de manière automatique CREATE MATERIALIZED VIEW FAIT_VENTES_MOIS AS (SELECT .... .... ...) Ville id nom_ville departement region pays
Des questions ? Des questions ? http://www.6it.fr [email_address] 06.24.91.02.03 04.84.25.17.94

Contenu connexe

Tendances

Projet Bi - 3 - Alimentation des données
Projet Bi - 3 - Alimentation des donnéesProjet Bi - 3 - Alimentation des données
Projet Bi - 3 - Alimentation des données
Jean-Marc Dupont
 
Conception et Réalisation d'un Data Warehouse
Conception et Réalisation d'un Data WarehouseConception et Réalisation d'un Data Warehouse
Conception et Réalisation d'un Data Warehouse
Abderrahmane Filali
 
PFE BI - INPT
PFE BI - INPTPFE BI - INPT
PFE BI - INPT
riyadadva
 
Concéption et réalisation d'un processus décisionnel, tableau de bord social.
Concéption et réalisation d'un processus décisionnel, tableau de bord social.Concéption et réalisation d'un processus décisionnel, tableau de bord social.
Concéption et réalisation d'un processus décisionnel, tableau de bord social.
Rim ENNOUR
 
Business Intelligence
Business IntelligenceBusiness Intelligence
Business Intelligence
Lilia Sfaxi
 
Partie2BI-DW2019
Partie2BI-DW2019Partie2BI-DW2019
Partie2BI-DW2019
Aziz Darouichi
 
La BI : Qu’est-ce que c’est ? A quoi ça sert ?
La BI : Qu’est-ce que c’est ? A quoi ça sert ?La BI : Qu’est-ce que c’est ? A quoi ça sert ?
La BI : Qu’est-ce que c’est ? A quoi ça sert ?
Jean-Marc Dupont
 
Chp3 - Modélisation Multidimensionnelle
Chp3 - Modélisation MultidimensionnelleChp3 - Modélisation Multidimensionnelle
Chp3 - Modélisation Multidimensionnelle
Lilia Sfaxi
 
Business Intelligence
Business IntelligenceBusiness Intelligence
Business Intelligence
s.poles
 
Les outils OLAP
Les outils OLAPLes outils OLAP
Les outils OLAP
nadia sassi
 
Introduction à la Business Intelligence
Introduction à la Business Intelligence Introduction à la Business Intelligence
Introduction à la Business Intelligence
Cynapsys It Hotspot
 
DataWarehouse
DataWarehouseDataWarehouse
DataWarehouse
nzuguem
 
Rapport de stage: mastère ISIC (Business Intelligence)
Rapport de stage: mastère ISIC (Business Intelligence)Rapport de stage: mastère ISIC (Business Intelligence)
Rapport de stage: mastère ISIC (Business Intelligence)
Ines Ben Kahla
 
Projet décisionnel
Projet décisionnelProjet décisionnel
Projet décisionnel
Siham JABRI
 
Business Intelligence Reporting Solution
Business Intelligence Reporting Solution Business Intelligence Reporting Solution
Business Intelligence Reporting Solution
Imad ALILAT
 
Cours data warehouse
Cours data warehouseCours data warehouse
Cours data warehouse
khlifi z
 
Intégration des données avec Talend ETL
Intégration des données avec Talend ETLIntégration des données avec Talend ETL
Intégration des données avec Talend ETL
Lilia Sfaxi
 
Présentation PFE Hachem Selmi et Ahmed Dridi Big data
Présentation PFE Hachem Selmi et Ahmed Dridi Big data Présentation PFE Hachem Selmi et Ahmed Dridi Big data
Présentation PFE Hachem Selmi et Ahmed Dridi Big data
HaShem Selmi
 

Tendances (20)

Projet Bi - 3 - Alimentation des données
Projet Bi - 3 - Alimentation des donnéesProjet Bi - 3 - Alimentation des données
Projet Bi - 3 - Alimentation des données
 
Conception et Réalisation d'un Data Warehouse
Conception et Réalisation d'un Data WarehouseConception et Réalisation d'un Data Warehouse
Conception et Réalisation d'un Data Warehouse
 
PFE BI - INPT
PFE BI - INPTPFE BI - INPT
PFE BI - INPT
 
Concéption et réalisation d'un processus décisionnel, tableau de bord social.
Concéption et réalisation d'un processus décisionnel, tableau de bord social.Concéption et réalisation d'un processus décisionnel, tableau de bord social.
Concéption et réalisation d'un processus décisionnel, tableau de bord social.
 
Business Intelligence
Business IntelligenceBusiness Intelligence
Business Intelligence
 
Partie2BI-DW2019
Partie2BI-DW2019Partie2BI-DW2019
Partie2BI-DW2019
 
La BI : Qu’est-ce que c’est ? A quoi ça sert ?
La BI : Qu’est-ce que c’est ? A quoi ça sert ?La BI : Qu’est-ce que c’est ? A quoi ça sert ?
La BI : Qu’est-ce que c’est ? A quoi ça sert ?
 
Chp3 - Modélisation Multidimensionnelle
Chp3 - Modélisation MultidimensionnelleChp3 - Modélisation Multidimensionnelle
Chp3 - Modélisation Multidimensionnelle
 
Business Intelligence
Business IntelligenceBusiness Intelligence
Business Intelligence
 
Les outils OLAP
Les outils OLAPLes outils OLAP
Les outils OLAP
 
Introduction à la Business Intelligence
Introduction à la Business Intelligence Introduction à la Business Intelligence
Introduction à la Business Intelligence
 
DataWarehouse
DataWarehouseDataWarehouse
DataWarehouse
 
Rapport de stage: mastère ISIC (Business Intelligence)
Rapport de stage: mastère ISIC (Business Intelligence)Rapport de stage: mastère ISIC (Business Intelligence)
Rapport de stage: mastère ISIC (Business Intelligence)
 
Projet décisionnel
Projet décisionnelProjet décisionnel
Projet décisionnel
 
Présentation bi 1.0
Présentation bi 1.0Présentation bi 1.0
Présentation bi 1.0
 
Resume de BI
Resume de BIResume de BI
Resume de BI
 
Business Intelligence Reporting Solution
Business Intelligence Reporting Solution Business Intelligence Reporting Solution
Business Intelligence Reporting Solution
 
Cours data warehouse
Cours data warehouseCours data warehouse
Cours data warehouse
 
Intégration des données avec Talend ETL
Intégration des données avec Talend ETLIntégration des données avec Talend ETL
Intégration des données avec Talend ETL
 
Présentation PFE Hachem Selmi et Ahmed Dridi Big data
Présentation PFE Hachem Selmi et Ahmed Dridi Big data Présentation PFE Hachem Selmi et Ahmed Dridi Big data
Présentation PFE Hachem Selmi et Ahmed Dridi Big data
 

En vedette

Réussir son analyse des besoins dans la conduite d'un projet informatique (2007)
Réussir son analyse des besoins dans la conduite d'un projet informatique (2007)Réussir son analyse des besoins dans la conduite d'un projet informatique (2007)
Réussir son analyse des besoins dans la conduite d'un projet informatique (2007)
Ardesi Midi-Pyrénées
 
exercices business intelligence
exercices business intelligence exercices business intelligence
exercices business intelligence
Yassine Badri
 
Rapport Projet de fin d’études
Rapport Projet de fin d’étudesRapport Projet de fin d’études
Rapport Projet de fin d’études
Salah Eddine BENTALBA (+15K Connections)
 
Faites evoluer votre SI au rythme de votre entreprise
Faites evoluer votre SI au rythme de votre entrepriseFaites evoluer votre SI au rythme de votre entreprise
Faites evoluer votre SI au rythme de votre entreprise
Jean-Marc Dupont
 
Présentation 6 IT 2016
Présentation 6 IT 2016Présentation 6 IT 2016
Présentation 6 IT 2016
Jean-Marc Dupont
 
Rapport PFE
Rapport PFERapport PFE
Rapport PFE
oussama Hafid
 
Outils à petits prix pour la gestion de l'entreprise
Outils à petits prix pour la gestion de l'entrepriseOutils à petits prix pour la gestion de l'entreprise
Outils à petits prix pour la gestion de l'entreprise
Jean-Marc Dupont
 
Data Visualisation, Business Intelligence et Big Data
Data Visualisation, Business Intelligence et Big DataData Visualisation, Business Intelligence et Big Data
Data Visualisation, Business Intelligence et Big Data
Vincent Lagorce
 
Pourquoi les CFO devraient s'intéresser à Power BI
Pourquoi les CFO devraient s'intéresser à Power BIPourquoi les CFO devraient s'intéresser à Power BI
Pourquoi les CFO devraient s'intéresser à Power BI
Sophie Marchand, M.Sc., CPA, CGA, MVP
 
Présentation Projet de fin d'études
Présentation Projet de fin d'étudesPrésentation Projet de fin d'études
Présentation Projet de fin d'études
Salah Eddine BENTALBA (+15K Connections)
 
Comment Choisir Votre Solution BI
Comment Choisir Votre Solution BIComment Choisir Votre Solution BI
Comment Choisir Votre Solution BI
LASSA Rafik
 
[JSS2015] Power BI: Nouveautés archi et hybrides
[JSS2015] Power BI: Nouveautés archi et hybrides[JSS2015] Power BI: Nouveautés archi et hybrides
[JSS2015] Power BI: Nouveautés archi et hybrides
GUSS
 
Slides deck yos-tour_vincentthavonekham_mvp_azure_the_future_of_microsoft_dat...
Slides deck yos-tour_vincentthavonekham_mvp_azure_the_future_of_microsoft_dat...Slides deck yos-tour_vincentthavonekham_mvp_azure_the_future_of_microsoft_dat...
Slides deck yos-tour_vincentthavonekham_mvp_azure_the_future_of_microsoft_dat...
FactoVia
 

En vedette (14)

Réussir son analyse des besoins dans la conduite d'un projet informatique (2007)
Réussir son analyse des besoins dans la conduite d'un projet informatique (2007)Réussir son analyse des besoins dans la conduite d'un projet informatique (2007)
Réussir son analyse des besoins dans la conduite d'un projet informatique (2007)
 
exercices business intelligence
exercices business intelligence exercices business intelligence
exercices business intelligence
 
Rapport Projet de fin d’études
Rapport Projet de fin d’étudesRapport Projet de fin d’études
Rapport Projet de fin d’études
 
Faites evoluer votre SI au rythme de votre entreprise
Faites evoluer votre SI au rythme de votre entrepriseFaites evoluer votre SI au rythme de votre entreprise
Faites evoluer votre SI au rythme de votre entreprise
 
Présentation 6 IT 2016
Présentation 6 IT 2016Présentation 6 IT 2016
Présentation 6 IT 2016
 
Rapport PFE
Rapport PFERapport PFE
Rapport PFE
 
Outils à petits prix pour la gestion de l'entreprise
Outils à petits prix pour la gestion de l'entrepriseOutils à petits prix pour la gestion de l'entreprise
Outils à petits prix pour la gestion de l'entreprise
 
Td dw1
Td dw1Td dw1
Td dw1
 
Data Visualisation, Business Intelligence et Big Data
Data Visualisation, Business Intelligence et Big DataData Visualisation, Business Intelligence et Big Data
Data Visualisation, Business Intelligence et Big Data
 
Pourquoi les CFO devraient s'intéresser à Power BI
Pourquoi les CFO devraient s'intéresser à Power BIPourquoi les CFO devraient s'intéresser à Power BI
Pourquoi les CFO devraient s'intéresser à Power BI
 
Présentation Projet de fin d'études
Présentation Projet de fin d'étudesPrésentation Projet de fin d'études
Présentation Projet de fin d'études
 
Comment Choisir Votre Solution BI
Comment Choisir Votre Solution BIComment Choisir Votre Solution BI
Comment Choisir Votre Solution BI
 
[JSS2015] Power BI: Nouveautés archi et hybrides
[JSS2015] Power BI: Nouveautés archi et hybrides[JSS2015] Power BI: Nouveautés archi et hybrides
[JSS2015] Power BI: Nouveautés archi et hybrides
 
Slides deck yos-tour_vincentthavonekham_mvp_azure_the_future_of_microsoft_dat...
Slides deck yos-tour_vincentthavonekham_mvp_azure_the_future_of_microsoft_dat...Slides deck yos-tour_vincentthavonekham_mvp_azure_the_future_of_microsoft_dat...
Slides deck yos-tour_vincentthavonekham_mvp_azure_the_future_of_microsoft_dat...
 

Similaire à Projet BI - 2 - Conception base de données

Séance 3.pptx
Séance 3.pptxSéance 3.pptx
Séance 3.pptx
AAIClusteringAutomat
 
Analyse et optimisation des performances du moteur SQL Serveur
Analyse et optimisation des performances du moteur SQL ServeurAnalyse et optimisation des performances du moteur SQL Serveur
Analyse et optimisation des performances du moteur SQL Serveur
Microsoft Technet France
 
SQL Server : Tuning et Troubleshooting
SQL Server : Tuning et TroubleshootingSQL Server : Tuning et Troubleshooting
SQL Server : Tuning et Troubleshooting
Microsoft
 
Emna borgi mabroukachraita-datawarehouse
Emna borgi mabroukachraita-datawarehouseEmna borgi mabroukachraita-datawarehouse
Emna borgi mabroukachraita-datawarehouse
Emna Borgi
 
Paris Tug - Session d'octobre
Paris Tug - Session d'octobreParis Tug - Session d'octobre
Paris Tug - Session d'octobre
Geoffrey Felix
 
Deep Dive Performance , le In-Memory dans SQL Server
Deep Dive Performance , le In-Memory dans SQL ServerDeep Dive Performance , le In-Memory dans SQL Server
Deep Dive Performance , le In-Memory dans SQL Server
Microsoft
 
Démystifions le machine learning avec spark par David Martin pour le Salon B...
Démystifions le machine learning avec spark par David Martin pour le Salon B...Démystifions le machine learning avec spark par David Martin pour le Salon B...
Démystifions le machine learning avec spark par David Martin pour le Salon B...
Ippon
 
Business Intelligence : introduction to datawarehouse
Business Intelligence : introduction to datawarehouseBusiness Intelligence : introduction to datawarehouse
Business Intelligence : introduction to datawarehouse
Alexandre Equoy
 
Avec biGenius® sur Azure, oubliez la technique, concentrez vos efforts sur le...
Avec biGenius® sur Azure, oubliez la technique, concentrez vos efforts sur le...Avec biGenius® sur Azure, oubliez la technique, concentrez vos efforts sur le...
Avec biGenius® sur Azure, oubliez la technique, concentrez vos efforts sur le...
Swiss Data Forum Swiss Data Forum
 
analysez-des-donnees-avec-excel documen.pdf
analysez-des-donnees-avec-excel documen.pdfanalysez-des-donnees-avec-excel documen.pdf
analysez-des-donnees-avec-excel documen.pdf
LeonLovensky
 
Le m _tier_de_dba_797144552
Le m _tier_de_dba_797144552Le m _tier_de_dba_797144552
Le m _tier_de_dba_797144552
Algeria JUG
 
S17 adressez vos besoins complexes de reporting avec db2 web query
S17   adressez vos besoins complexes de reporting avec db2 web queryS17   adressez vos besoins complexes de reporting avec db2 web query
S17 adressez vos besoins complexes de reporting avec db2 web query
Gautier DUMAS
 
Panorama des offres NoSQL disponibles dans Azure
Panorama des offres NoSQL disponibles dans AzurePanorama des offres NoSQL disponibles dans Azure
Panorama des offres NoSQL disponibles dans Azure
Microsoft Décideurs IT
 
Panorama des offres NoSQL disponibles dans Azure
Panorama des offres NoSQL disponibles dans AzurePanorama des offres NoSQL disponibles dans Azure
Panorama des offres NoSQL disponibles dans Azure
Microsoft Technet France
 
Les bases BI sont-elles différentes?
Les bases BI sont-elles différentes?Les bases BI sont-elles différentes?
Les bases BI sont-elles différentes?
Franck Pachot
 
chap4.pdf
chap4.pdfchap4.pdf
chap4.pdf
OumaimaBouhani
 
Data Modeling Power BI [SqlSat '18]
Data Modeling Power BI [SqlSat '18]Data Modeling Power BI [SqlSat '18]
Data Modeling Power BI [SqlSat '18]
Joël Crest
 
Azure Camp 9 Décembre 2014 - slides session développeurs IOT Big Data
Azure Camp 9 Décembre 2014 - slides session développeurs IOT Big DataAzure Camp 9 Décembre 2014 - slides session développeurs IOT Big Data
Azure Camp 9 Décembre 2014 - slides session développeurs IOT Big Data
Microsoft
 
Business Intelligence
Business IntelligenceBusiness Intelligence
Business Intelligence
Walid Chamour
 
Le métier d’administrateur de
Le métier d’administrateur deLe métier d’administrateur de
Le métier d’administrateur de
Algeria JUG
 

Similaire à Projet BI - 2 - Conception base de données (20)

Séance 3.pptx
Séance 3.pptxSéance 3.pptx
Séance 3.pptx
 
Analyse et optimisation des performances du moteur SQL Serveur
Analyse et optimisation des performances du moteur SQL ServeurAnalyse et optimisation des performances du moteur SQL Serveur
Analyse et optimisation des performances du moteur SQL Serveur
 
SQL Server : Tuning et Troubleshooting
SQL Server : Tuning et TroubleshootingSQL Server : Tuning et Troubleshooting
SQL Server : Tuning et Troubleshooting
 
Emna borgi mabroukachraita-datawarehouse
Emna borgi mabroukachraita-datawarehouseEmna borgi mabroukachraita-datawarehouse
Emna borgi mabroukachraita-datawarehouse
 
Paris Tug - Session d'octobre
Paris Tug - Session d'octobreParis Tug - Session d'octobre
Paris Tug - Session d'octobre
 
Deep Dive Performance , le In-Memory dans SQL Server
Deep Dive Performance , le In-Memory dans SQL ServerDeep Dive Performance , le In-Memory dans SQL Server
Deep Dive Performance , le In-Memory dans SQL Server
 
Démystifions le machine learning avec spark par David Martin pour le Salon B...
Démystifions le machine learning avec spark par David Martin pour le Salon B...Démystifions le machine learning avec spark par David Martin pour le Salon B...
Démystifions le machine learning avec spark par David Martin pour le Salon B...
 
Business Intelligence : introduction to datawarehouse
Business Intelligence : introduction to datawarehouseBusiness Intelligence : introduction to datawarehouse
Business Intelligence : introduction to datawarehouse
 
Avec biGenius® sur Azure, oubliez la technique, concentrez vos efforts sur le...
Avec biGenius® sur Azure, oubliez la technique, concentrez vos efforts sur le...Avec biGenius® sur Azure, oubliez la technique, concentrez vos efforts sur le...
Avec biGenius® sur Azure, oubliez la technique, concentrez vos efforts sur le...
 
analysez-des-donnees-avec-excel documen.pdf
analysez-des-donnees-avec-excel documen.pdfanalysez-des-donnees-avec-excel documen.pdf
analysez-des-donnees-avec-excel documen.pdf
 
Le m _tier_de_dba_797144552
Le m _tier_de_dba_797144552Le m _tier_de_dba_797144552
Le m _tier_de_dba_797144552
 
S17 adressez vos besoins complexes de reporting avec db2 web query
S17   adressez vos besoins complexes de reporting avec db2 web queryS17   adressez vos besoins complexes de reporting avec db2 web query
S17 adressez vos besoins complexes de reporting avec db2 web query
 
Panorama des offres NoSQL disponibles dans Azure
Panorama des offres NoSQL disponibles dans AzurePanorama des offres NoSQL disponibles dans Azure
Panorama des offres NoSQL disponibles dans Azure
 
Panorama des offres NoSQL disponibles dans Azure
Panorama des offres NoSQL disponibles dans AzurePanorama des offres NoSQL disponibles dans Azure
Panorama des offres NoSQL disponibles dans Azure
 
Les bases BI sont-elles différentes?
Les bases BI sont-elles différentes?Les bases BI sont-elles différentes?
Les bases BI sont-elles différentes?
 
chap4.pdf
chap4.pdfchap4.pdf
chap4.pdf
 
Data Modeling Power BI [SqlSat '18]
Data Modeling Power BI [SqlSat '18]Data Modeling Power BI [SqlSat '18]
Data Modeling Power BI [SqlSat '18]
 
Azure Camp 9 Décembre 2014 - slides session développeurs IOT Big Data
Azure Camp 9 Décembre 2014 - slides session développeurs IOT Big DataAzure Camp 9 Décembre 2014 - slides session développeurs IOT Big Data
Azure Camp 9 Décembre 2014 - slides session développeurs IOT Big Data
 
Business Intelligence
Business IntelligenceBusiness Intelligence
Business Intelligence
 
Le métier d’administrateur de
Le métier d’administrateur deLe métier d’administrateur de
Le métier d’administrateur de
 

Dernier

INTELLIGENCE ARTIFICIELLE + INFORMATIQUE QUANTIQUE = LA PLUS GRANDE RÉVOLUTIO...
INTELLIGENCE ARTIFICIELLE + INFORMATIQUE QUANTIQUE = LA PLUS GRANDE RÉVOLUTIO...INTELLIGENCE ARTIFICIELLE + INFORMATIQUE QUANTIQUE = LA PLUS GRANDE RÉVOLUTIO...
INTELLIGENCE ARTIFICIELLE + INFORMATIQUE QUANTIQUE = LA PLUS GRANDE RÉVOLUTIO...
Faga1939
 
La Gestion des risques selon ISO 27005.pdf
La Gestion des risques selon ISO 27005.pdfLa Gestion des risques selon ISO 27005.pdf
La Gestion des risques selon ISO 27005.pdf
SoniazghalKallel
 
Les Vidéoprojecteurs : Guide d'achat et Comparatif
Les Vidéoprojecteurs : Guide d'achat et ComparatifLes Vidéoprojecteurs : Guide d'achat et Comparatif
Les Vidéoprojecteurs : Guide d'achat et Comparatif
Top-plans
 
Rapport Projet ERP - Plateforme Odoo 16 (PFE Licence)
Rapport Projet ERP - Plateforme Odoo 16 (PFE Licence)Rapport Projet ERP - Plateforme Odoo 16 (PFE Licence)
Rapport Projet ERP - Plateforme Odoo 16 (PFE Licence)
Chadi Kammoun
 
M365 Community Days MTL 2024 - Découverte du Process Mining et du Task Mining...
M365 Community Days MTL 2024 - Découverte du Process Mining et du Task Mining...M365 Community Days MTL 2024 - Découverte du Process Mining et du Task Mining...
M365 Community Days MTL 2024 - Découverte du Process Mining et du Task Mining...
Nicolas Georgeault
 
Technologie hydrostatique, innovation pour la stérilisation des aliments : HI...
Technologie hydrostatique, innovation pour la stérilisation des aliments : HI...Technologie hydrostatique, innovation pour la stérilisation des aliments : HI...
Technologie hydrostatique, innovation pour la stérilisation des aliments : HI...
InnovaSter-Trade Ltd.
 

Dernier (6)

INTELLIGENCE ARTIFICIELLE + INFORMATIQUE QUANTIQUE = LA PLUS GRANDE RÉVOLUTIO...
INTELLIGENCE ARTIFICIELLE + INFORMATIQUE QUANTIQUE = LA PLUS GRANDE RÉVOLUTIO...INTELLIGENCE ARTIFICIELLE + INFORMATIQUE QUANTIQUE = LA PLUS GRANDE RÉVOLUTIO...
INTELLIGENCE ARTIFICIELLE + INFORMATIQUE QUANTIQUE = LA PLUS GRANDE RÉVOLUTIO...
 
La Gestion des risques selon ISO 27005.pdf
La Gestion des risques selon ISO 27005.pdfLa Gestion des risques selon ISO 27005.pdf
La Gestion des risques selon ISO 27005.pdf
 
Les Vidéoprojecteurs : Guide d'achat et Comparatif
Les Vidéoprojecteurs : Guide d'achat et ComparatifLes Vidéoprojecteurs : Guide d'achat et Comparatif
Les Vidéoprojecteurs : Guide d'achat et Comparatif
 
Rapport Projet ERP - Plateforme Odoo 16 (PFE Licence)
Rapport Projet ERP - Plateforme Odoo 16 (PFE Licence)Rapport Projet ERP - Plateforme Odoo 16 (PFE Licence)
Rapport Projet ERP - Plateforme Odoo 16 (PFE Licence)
 
M365 Community Days MTL 2024 - Découverte du Process Mining et du Task Mining...
M365 Community Days MTL 2024 - Découverte du Process Mining et du Task Mining...M365 Community Days MTL 2024 - Découverte du Process Mining et du Task Mining...
M365 Community Days MTL 2024 - Découverte du Process Mining et du Task Mining...
 
Technologie hydrostatique, innovation pour la stérilisation des aliments : HI...
Technologie hydrostatique, innovation pour la stérilisation des aliments : HI...Technologie hydrostatique, innovation pour la stérilisation des aliments : HI...
Technologie hydrostatique, innovation pour la stérilisation des aliments : HI...
 

Projet BI - 2 - Conception base de données

  • 2. Introduction les projets de Business Intelligence Le processus général Conception Définition des besoins Définition de l’architecture technique Choix des outils Définition des indicateurs Modélisation dimensionnelle Définition des rapports / tableaux de bord Installation et paramétrage des outils Conception du modèle physique Création des « univers » Développement des rapports / tableaux de bord Déploiement Formation développement des alimentations
  • 4. Le DataWarehouse DataWarehouse = Entrepôt de données Base de données spécialisée Réceptacle de l’ensemble des données de l’entreprise => grosses quantités de données Objectif : permettre à une organisation de prendre des décisions basées sur les informations disponibles Les informations proviennent des systèmes opérationnels de l’organisation et parfois de données externes à l’organisation Les données sont non volatiles : elles sont mises à jour uniquement par des flux d’alimentation exécutés périodiquement
  • 5. Le DataWarehouse Caractéristiques du DataWarehouse Lisibilité pour l’utilisateur final Les données doivent être simples à comprendre, mais permettre plusieurs analyses différentes selon des critères différents (dimensions) Plus le modèle est lisible (intuitif) pour les utilisateurs, moins sera long (coûteux) de définir une surcouche pour le rendre compréhensible Performances Temps d’exécution d’une requête / d’un rapport ne doit pas dépasser 30 secondes Il est généralement nécessaire de créer des agrégations de données et/ou des redondances => impact sur les performances au moment de l’alimentation des données => cela complique l’administration du système => Trouver le juste milieu entre les performances à l’exécution et la maintenabilité du système
  • 6. Le DataWarehouse Caractéristiques du DataWarehouse Les données sont généralement stockées dans une base de données relationnelle Mais la structure des tables est adaptée à la navigation dans les données (dimensions, hiérarchies) Un gros effort est fourni sur l’aspect Performances Optimisation des tables, des indexes et du matériel (mémoire, processeur, disques)
  • 7. Le DataWarehouse OLTP vs OLAP OLTP On Line Transactional Processing OLAP On Line Analytical Processing Données mises à jour en continu par les utilisateurs => Sécurisation des mises à jour et de la cohérence des données Données en lecture seulement Mises à jour 1 fois par programme Beaucoup d’utilisateurs concurrents « Peu » d’utilisateurs (managers, Directions) Un seul objet traité à la fois Beaucoup d’objets manipulés Mêmes requêtes simples utilisées un grand nombre de fois Requêtes complexes souvent différentes Tables nombreuses, normalisées Peu de tables, de grande taille et dénormalisées Beaucoup de calculs d’agrégation
  • 8. Le DataWarehouse Il n’est pas recommandé de faire des analyses multidimensionnelles dans une base de données de production (OLTP) Les données d’une base de production sont par nature très volatiles => on charge dans le datawarehouse un ensemble de données cohérentes et validées Les données d’une base de production ne sont pas organisées pour des requêtes OLAP (nombreuses tables et jointures sur un volume de données très important) Les requêtes ne doivent pas pénaliser les performances du système de production => Alimentation d’une base de données (quelquefois sur une machine) dédiée à l’analyse multidimensionnelle
  • 10. Sommaire Le DataWarehouse Conception dimensionnelle Structure du DataWarehouse
  • 11. Conception dimensionnelle Conception dimensionnelle 1 dimension = 1 table de dimension 1 ensemble d’indicateurs = 1 table de faits => Schéma « en étoile » id td1 id td2 id td3 id td4 indicateur 1 indicateur 2 .... Table de fait id libelle .... Table de dimension 2 Table de dimension 4 Table de dimension 1 Table de dimension 3 id libelle .... id libelle .... id libelle ....
  • 12. Conception dimensionnelle Conception des dimensions hiérarchiques Dénormalisation complète des tables de dimension => duplication des données (pas grave car peu de volume dans les tables de dimension) => meilleures performances car moins de jointures Normalisation partielle Ville id nom_ville departement region pays Ville id nom_ville id_departement departement id nom_ departement id_region Region id nom_region pays id nom_ville departement region pays 1 Avignon 84 PACA France 2 Cavaillon 84 PACA France 3 Marseille 13 PACA France
  • 13. Conception dimensionnelle La dimension Temps La plus utilisée et la plus importante en terme de performances 90 % des requêtes sont filtrées sur le temps ou affichent/comparent des données temporelles La table Temps doit permettre de facilement gérer : L'ensemble de la hiérarchie Temps (jour, … , année) La période courante, Les x périodes précédentes, suivantes L'affichage, le tri de l'ensemble de la hiérarchie Temps Les données de la table Temps sont remises à jour chaque jour Si besoin de descendre plus dans le détail que la journée, créer une autre table dédiée, pour ne pas dégrader les performances id_date : date num_jour_annee : entier num_jour_semaine : entier num_jour_mois : entier id_semaine : entier cpt_semaine : entier num_semaine : entier id_mois : entier cpt_mois : entier num_mois : entier id_trimestre: entier … … … Temps 25/09/2009 268 5 25 200939 0 (semaine courante) 39 200909 0 (mois courant) 9 200903 … … …
  • 14. Conception dimensionnelle La dimension Temps 13 mois glissants … where cpt_mois between -12 and 0 Années A-1, A et A+1 … where cpt_annee in (-1, 0, 1) Tri par mois … order by cpt_mois ou … order by id_mois Somme des ventes par trimestre .... sum(vente) group by id_trimestre Performances : select .... from temps T inner join table_fait F on T.id_date = F.id_date where T.cpt_mois in (-1, 0) select … from table_fait F where to_char(F.id_date,'MM') = to_char(add_months(now, -1),'MM') or to_char(F.id_date,'MM') = to_char(add_months(now, 0),'MM') Récupère 60 lignes dans la table Temps puis utilise l'index sur la table de fait Pas d'utilisation d'index Parcoure la table entière
  • 15. Conception dimensionnelle Conception des tables de fait Les données de détail le plus fin sont stockées dans les tables de fait Les agrégations (somme, moyenne, …) sont en général calculées Les comptages utilisent des colonnes dédiées Si problèmes de performance => tables d'agrégations id date id produit nb_unites prix_vente nb_retours .... Table de fait id_date .... id_mois Temps id mois id produit nb_unites total_ventes .... Table de fait agrégée
  • 16. Conception dimensionnelle Les clés des tables de dimension (et donc de fait) Les clés sont des clés techniques (bigint, NUMBER, ...) Éviter les clés ayant un sens fonctionnel => mauvaises performances si de type texte => pbms de mise à jour si le contenu évolue Éviter les clés du système de production => les clés du système de production ne sont pas toujours stables dans le temps (réutilisation de clés) => il peut y avoir plusieurs sources donc plusieurs clés dont les valeurs peuvent se chevaucher Id : number matricule : varchar nom prenom ... Personne
  • 17. Conception dimensionnelle 2 points de conception Un attribut ne peut exister que dans une et une seule dimension, alors qu’un fait peut figurer dans plusieurs tables de faits Si une dimension semble apparaître a plusieurs endroits, cela signifie probablement qu’elle joue plusieurs rôles. Nommez ces rôles et traitez les comme des dimensions différentes
  • 19. Structure du datawarehouse Datawarehouse vs Datamarts Plusieurs niveaux de détail / d'agrégation des données Données élémentaires : copie quasi conforme (mais contrôlées et nettoyées) des données de production => « staging area » (zone de transit) Données agrégées au niveau de détail requis par l'analyse Données agrégées à un niveau supérieur pour des contraintes de performances 2 choix techniques possibles (non exclusif) Base relationnelle Base multi-dimensionnelle (Cubes) staging area Le datawarehouse regroupe l'ensemble de ces bases / objets staging area datamart finances datamart RH datamart logistique Alimentation
  • 20. Structure du datawarehouse Base de données relationnelle vs multi-dimensionnelle La base multi-dimensionnelle stocke les valeurs sur l'ensemble des dimensions, à tous les niveaux d'agrégation peu d'informations dans les dimensions => accès très rapide => optimisé pour la navigation dans les hiérarchies et pour les comparaisons temporelles => structure plus rigide La base relationnelle est plus souple, elle permet de stocker autant d'informations que nécessaire => plus souple (requêtes / agrégations à la demande) => si volume très important => pbms de performances
  • 21. Structure du datawarehouse Optimisation des performances Indexes sur l'ensemble des clés (tables de fait et tables de dimensions) mais aussi sur les données « critères d'agrégation » Répartition sur plusieurs disques Données sur 1 disque Indexes sur 1 disque Grosses tables de fait réparties sur plusieurs disques, en fonction des dimensions (souvent en fonction de l'axe temps) Janvier => disque 1 Février => disque 2 … … Création de « vues matérialisées » (snapshots) pour les agrégations supplémentaires Avantages des vues et stockage sur disque Rafraichies à la demande ou de manière automatique CREATE MATERIALIZED VIEW FAIT_VENTES_MOIS AS (SELECT .... .... ...) Ville id nom_ville departement region pays
  • 22. Des questions ? Des questions ? http://www.6it.fr [email_address] 06.24.91.02.03 04.84.25.17.94