Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 1
Objectifs
Comprendre les notions de la BI
Comprendre les outils de Microsoft BI
La mise en place de techniques et méthodes de L'ETL
Modélisation et alimentation d’un Datawarehouse
Déployer des projets d’intégration sur des environnements
Création de cube multidimensionnel d'analyse de données
Concevoir des rapports et des tableaux de bord
Comprendre les concepts de PowerPivot et Power View
Comprendre les languages MDX, DAX et XMLA
La mise en place d’un projet décisionnel
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 2
Introduction à la formation
• La Business Intelligence : pourquoi?
• La Business Intelligence : qu’est-ce que c’est?
• Quels sont les outils de Microsoft BI?
• SQL Server Integration Services
• SQL Server Analysis Services
• SQL Server Reporting Services
• L’architecture de MSBI
• Etude de cas
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 3
La Business Intelligence : pourquoi?
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 4
La Business Intelligence : qu’est-ce que c’est?
Savoir
Structuration,
présentation
et analyse)
Information
Collecte et Consolidation
Données
ERP, CRM, Base de données, CSV, Excel …
Processus Business
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 5
La Business Intelligence : qu’est-ce que c’est?
• Collecte de données
• Comprendre l’environnement
• Analyse de l’activité, des réussites et des échecs
• Outils de pilotage de performance
• Transformer les données en décisions
• Anticiper les évolutions du marché
Les managers
Pour qui ? La direction générale
Tout le monde
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 6
La Business Intelligence : qu’est-ce que c’est?
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 7
La Business Intelligence : qu’est-ce que c’est?
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 8
SQL Server Integration Services
ETL
l’ETL sert à :
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 9
SQL Server Analysis Services
• SQL Server Analysis Services permet de concevoir, de créer et de gérer des structures multidimensionnelles
qui contiennent des données agrégées provenant d'autres sources de données
OLAP
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 10
SQL Server Reporting Services
• SQL Server Reporting Services est une plateforme de Reporting qui fournit des fonctionnalités de création
de rapports qui permettent d’extraire et de mettre en forme des données.
SSRS est un outil de restitution des données
SSRS permet de concevoir, créer, déployer et gérer des rapports
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 11
L’architecture de MSBI
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 12
Etude de cas : MANGO
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 13
Etude de cas : SSIS (Integration Services)
ETL
OLTP
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 14
Etude de cas : SSAS (Analysis Services)
Géographie
OLAP
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 15
Géographie
Etude de cas : SSRS (Reporting Services)
Décision
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 16
SQL Server Management Studio
SQL Server Management Studio est un environnement intégré qui permet d'avoir accès, de configurer,
de gérer, d'administrer et de développer tous les composants de SQL Server.
SQL Server Management Studio associe un groupe d'outils graphiques à des éditeurs de script T-SQL,
MDX, …
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 17
L’espace de travail MSBI
Avant 2010, la création d’un projet SSIS se faisait auparavant sur un outil utilisant l’environnement basé sur
Microsoft Visual Studio et appelé « Business Intelligence Development Studio », aussi surnommé « BIDS ».
Dans les nouvelles versions de Microsoft SQL Server, l’outil a été renommé « SQL Server Data Tools for Business
Intelligence solutions».
SQL Server Data Tools est utilisé pour des services d’analyses, de Reporting et d’integration et présente un
environnement similaire à Visual Studio (Explorateur de solutions, sources de données …)
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 18
Environnement SSIS
Une fois le projet d’intégration créé, il sera représenté par un « Package » avec un format « .dtsx » qui contiendra
toutes les tâches de gestion de données.
Ce package, une fois ouvert présentera l’environnement de travail SSIS avec une boîte à outils cf. l’image
« Environnement SSIS »
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 19
Environnement SSIS
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 20
Environnement SSIS
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 21
Environnement SSIS
Le flux de données est souvent constitué d’une succession de plusieurs tâches qui peuvent être structurés et
organisés selon l’ordre d’exécution voulu avec la possibilité de gérer la réussite ou l’échec de la tâche.
Chaque bloc étant lié par une flèche, il représente le chemin entrepris
par le processus en fonction du résultat de la tâche donné, la flèche
verte est suivie lors d’une réussite et la flèche rouge dans le cas d’un
échec ou erreur.
Une fois ce bloc exécuté, il y’a deux possibilités, si la conversion réussit,
les données spécifiées dans le script de conversion sont insérées dans
la base de données.
Dans le cas contraire, on insère les erreurs liées dans une table
spécifique de la base de données.
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 22
SSIS: TP1 Extraction, conversion, fractionnement conditionnel, gestion des erreur et transfert
Montant
Conversion de
Client.csv données Rejet.csv
Fractionnement
conditionnel
MontantInf
AZero.txt
BDD
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 23
SSIS: TP2 Jointure et tri de données
Médecin
Client.csv .csv
Trier Manuellement
Trier
Jointure
BDD
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 24
SSIS: TP3 Unir tout, fusion et multidiffusion
Client2.csv
Client1.csv Unir Tout
Multidiffusion
NB: Pour fusionner les données avec
le composant Fusionner, les données
doivent être triées
Clients.xlsx
Clients.csv
BDD
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 25
Entrepôt de données ( Data warehouse )
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 26
Entrepôt de données : Définition
• Ralph Kimball
« Un entrepôt de données est constitué peu à peu par les datamarts de l'entreprise
regroupant le niveau d'agrégation et d'historisation au sein d'un même base ».
• Bill Inmon
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 27
Entrepôt de données : Définition
• Un Data Warehouse, ou entrepôt de données, est une base de données dédiée au stockage de
l'ensemble des données utilisées dans le cadre de la prise de décision et de l'analyse décisionnelle.
• Le Data Warehouse est exclusivement réservé à cet usage. Il est alimenté en données depuis les bases
de production grâce notamment aux outils d'ETL Extract Transform Load.
• Un data Warehouse est une représentation centralisée de toutes les données de l’entreprise
Caractéristiques:
• Orienté sujet
• Intégré
• Non Volatile
• Historié
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 28
Entrepôt de données : Caractéristiques
Orienté sujet
Les données sont organisées par thème. Les ventes par exemple, seront rapatriées des
différentes bases OLTP de production et regroupées.
Production Produit
Employés Client
Facturation Vendeur
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 29
Entrepôt de données : Caractéristiques
Intégré
Les données proviennent de sources hétérogènes utilisant chacune un type de format. Elles sont
intégrées avant d'être proposées à utilisation.
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 30
Entrepôt de données : Caractéristiques
Non volatile
Les données ne disparaissent pas et ne changent pas au fil des traitements, au fil du temps
(en lecture seule).
Modification
Ajout Accès
Chargement Data Warehouse
Production
Supression
Historisé
Les données non volatiles sont aussi horodatées. On peut ainsi visualiser l'évolution dans le temps
d'une valeur donnée.
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 31
Entrepôt de données : Datamart
Un magasin de données ( ou Datamart en anglais) est un sous-ensemble d'un entrepôt de données. Il
contient des données ciblées et regroupées pour répondre à des besoins d'un secteur particulier de
l'entreprise.
Il est plus facile à comprendre, à manipuler ainsi le temps de réponse est plus réduit par rapport à un
entrepôt de données.
Vente
Finance
Data Warehouse
RH
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 32
Entrepôt de données : Modélisation
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 33
Entrepôt de données : Modélisation
• Les approches de modélisations
VS
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 34
Entrepôt de données : Modélisation
• Les approches de modélisations
Que chacun construise ce qu’il veut,
on intégrera ce qu’il faudra quand il On fait rien tant que tout n’est pas
faudra! désigné
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 35
Entrepôt de données : L’approche de Ralph Kimball
Bon Ali, tu fais Et toi Karim, tu
quoi? Les ventes fais quoi? Les achats
Datamart
Achats
Ventes Ventes
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 36
Entrepôt de données : L’approche de Bill Inmon
Allez les gars, on met achats
quoi dans ce machin?
ventes
stock
Datawarehouse
RH
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 37
Entrepôt de données : Table de faits
Table de faits
Il s’est passé quelque chose
Il s’est passé autre chose
Il s’est passé quelque chose d’autre
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 38
Entrepôt de données : Table de dimension
Quand? Où?
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 39
Entrepôt de données : Les mesures
Table de faits
Article Magasin Date Quantité Prix
A 1 Hier 3 10
B 2 Hier 2 15
C 3 Aujourd’hui 4 20
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 40
Entrepôt de données : Table de faits (1)
• C'est la table centrale du modèle dimensionnel, elle contient les valeurs numériques de ce qu'on
désire mesurer.
• Les informations dans une tables de fait sont numériques afin d'appliquer des fonctions multi-lignes
(SUM, COUNT, AVG...)
• Elle doivent être additives, semi-additives ou non additives
Fait ventes
Clé Date
Clés étrangère des tables de Clé Client
dimension Clé Produit
Clé magasin
Prix
Mesures
Quantité
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 41
Entrepôt de données : Table de faits (2)
Type de fait:
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 42
Entrepôt de données : Table de dimension (1)
• C'est la table qui représente les axes d'analyses, elle contient les détails sur les faits
Dim Produit
Clé de substitution Id Produit
Code produit
Libelle
Attributs de la dimension Type
Catégorie
Marque
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 43
Entrepôt de données : Table de dimension (2)
Dimension Temps :
Avantages :
• Simple à élaborer
• Facilité de navigation
• Performant
Inconvénients
• Redondance dans les dimensions
• Alimentation complexe
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 45
Entrepôt de données : Modèle en flocon
Avantages :
• Maintenance des tables de
dimension simplifiée
• Réduction de la redondance
Inconvénients
NB: Modèle en flocon = Modèle en étoile + normalisation des dimension
• Navigation couteuse
• Nombreuses jointures
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 46
Entrepôt de données : Modèle en constellation
Série des étoiles ou des flocons qui partagent une à plusieurs dimensions.
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 47
OLAP: Analyse multidimensionnelle OLAP
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 48
OLAP: Analyse multidimensionnelle OLAP (1)
Caractéristiques : Représente les données sous la forme d'un cube multidimensionnel (Hypercube) où
chaque côté est une dimension d'analyse et chaque case une métrique.
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 49
OLAP: Analyse multidimensionnelle OLAP (2)
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 50
OLAP: OLAP vs OLTP
Caractéristiques OLTP OLAP
Orientation Transaction Analyse
Modélisation Modélisation Entité-Association Etoile/flocon
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 51
OLAP: Opération OLAP
3 catégories d’opérations élémentaires :
Restructuration : concerne la représentation, permet un changement de point de vue selon
différentes dimensions : opérations liées à la structure, manipulation et visualisation du cube :
• Rotate / Pivot
• Switch
Granularité : concerne un changement de niveau de détail : opérations liées au niveau de
granularité des données :
• Roll-up
• Drill-Down
Ensembliste : concerne l’extraction et l’OLTP classique:
• Slice, dice
• Selection
• Projection
• Jointure (Drill-cross)
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 52
OLAP: Opération OLAP (1)
Slice
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 53
OLAP: Opération OLAP (2)
Dice
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 54
OLAP: Opération OLAP (3)
Rotate
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 55
OLAP: Opération OLAP (3)
Drill down : C'est la possibilité de zoomer sur une dimension pour avoir une vision plus fine
Exemple : zoomer sur une année pour voir les 4 trimestres ou de passer du pays aux différentes
régions
Roll up : C'est l'opération inverse qui permet d'aggréger les composantes de l'un des axes
Exemple : regrouper les mois en trimestre ou les régions en pays
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 56
OLAP: Opération OLAP (3)
Rotate
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 57
OLAP: Opération OLAP (3)
Système ROLAP (Relational OLAP):
Base relationnelle, utilisant un SGBD relationnel classique et organisée pour réagir comme une base OLAP
Lente et peu performante
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 58
Le language MultiDimensional eXpression MDX
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 59
MDX: Attributs dimensionnels
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 60
MDX: Hiérarchies ( utilisateur )
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 61
MDX: Mesures
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 62
MDX: Membres
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 63
MDX: Tuples (1)
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 64
MDX: Tuples (2)
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 65
MDX: Tuples (3)
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 66
MDX: Requêtes OLAP (1)
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 67
MDX: Requêtes OLAP (2)
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 68
MDX: Requêtes OLAP (3)
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 69
MDX: Requêtes OLAP (4)
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 70
MDX: Requêtes OLAP (5)
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 71
MDX: Requêtes OLAP (6)
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 72
MDX: Requêtes OLAP (7)
23/10/2019 mohamedali.bencheikhlarbi@gmail.com 73