BI = Business Intelligence Master Data-ScienceCours 5 - MDX



Documents pareils
OLAP : Mondrian + Pentaho. Maguelonne Teisseire Hugo Alatrista Salas hugo.alatrista- salas@teledetec9on.fr Flavien Bouillot

2014/2015. Rapport 4 REALISE PAR : ISMAIL NAIT ABDELLAH OUALI SOUFIANE HOURRI MOHAMED OUSSAFI ENCADRE PAR : MME L.LAMRINI ANOUAR OUFQIR SMARTSIR

ETL Extract - Transform - Load

2 Serveurs OLAP et introduction au Data Mining

SQL Server 2012 Implémentation d'une solution de Business Intelligence (Sql Server, Analysis Services...)

Introduction aux outils BI de SQL Server Création de cubes dans SQL Server Analysis Services (SSAS)

et les Systèmes Multidimensionnels

Introduction à la B.I. Avec SQL Server 2008

Les Entrepôts de Données

L informatique des entrepôts de données

BI = Business Intelligence Master Data-ScienceCours 3 - Data

Hervé Couturier EVP, SAP Technology Development

SQL SERVER 2008, BUSINESS INTELLIGENCE

Bases de Données Avancées

Datawarehouse: Cubes OLAP. Marlyse Dieungang Khaoula Ghilani

Bases de Données OLAP

La problématique. La philosophie ' ) * )

SQL Server SQL Server Implémentation d une solution. Implémentation d une solution de Business Intelligence.

Bases de données multidimensionnelles et mise en œuvre dans Oracle

Business Intelligence Reporting

BI2 : Un profil UML pour les Indicateurs Décisionnels

BUSINESS INTELLIGENCE. Une vision cockpit : utilité et apport pour l'entreprise

Oracle Décisionnel : Modèle OLAP et Vue matérialisée D BILEK

TP2_1 DE BUSINESS INTELLIGENCE ISIMA ZZ3 F3

Business Intelligence : Informatique Décisionnelle

L offre décisionnel IBM. Patrick COOLS Spécialiste Business Intelligence

Introduction. Informatique décisionnelle et data mining. Data mining (fouille de données) Cours/TP partagés. Information du cours

Le "tout fichier" Le besoin de centraliser les traitements des fichiers. Maitriser les bases de données. Historique

Travail de diplôme 2011 Business Intelligence Open Source SpagoBI/Talend Résumé

Entrepôts de données. NEGRE Elsa Université Paris-Dauphine

Business Intelligence avec SQL Server 2012 Maîtrisez les concepts et réalisez un système décisionnel

Urbanisation des SI-NFE107

Business Intelligence avec SQL Server 2014 Maîtrisez les concepts et réalisez un système décisionnel

FreeAnalysis. Schema Designer. Cubes

Présentation Windows Azure Hadoop Big Data - BI

Business Intelligence avec Excel, Power BI et Office 365

Les entrepôts de données

Fouille de Données : OLAP & Data Warehousing

CATALOGUE DE FORMATIONS BUSINESS INTELLIGENCE. Edition 2012

SWISS ORACLE US ER GRO UP. Newsletter 5/2014 Sonderausgabe. OBIF DB licensing with VMware Delphix 12c: SQL Plan / Security Features

Introduction à Business Objects. J. Akoka I. Wattiau

MTI820 Entrepôts de données et intelligence d affaires. Les applica+ons de BI

SQL Server 2012 et SQL Server 2014

BI = Business Intelligence Master Data-Science

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

1 Introduction et installation

Entrepôt de données 1. Introduction

Business Intelligence

TP2 DE BUSINESS INTELLIGENCE ISIMA ZZ3 F3

Le langage SQL Rappels

BIRT (Business Intelligence and Reporting Tools)

LES ENTREPOTS DE DONNEES

Compétences Business Objects

Plan. Ce qu est le datawarehouse? Un modèle multidimensionnel. Architecture d un datawarehouse. Implémentation d un datawarehouse

Projet M1 Sujet 21 : Développement d'un logiciel simplifié de type Business Object

Chapitre IX. L intégration de données. Les entrepôts de données (Data Warehouses) Motivation. Le problème

EXCEL & XLCubed 10 raisons d en faire l assise de votre Managed Self-Service BI

Méthodologie de conceptualisation BI

Fournir un accès rapide à nos données : agréger au préalable nos données permet de faire nos requêtes beaucoup plus rapidement

Business Intelligence simple et efficace avec Excel et PowerPivot

Grégoire de Lassence. Copyright 2006, SAS Institute Inc. All rights reserved.

Innovative BI with SAP Jean-Michel JURBERT D. de Marché BI, HANA, BIG DATA _ SAP France

Tout ce que vous avez toujours voulu savoir sur SAP HANA. Sans avoir jamais osé le demander

Skills Technology Software PARTENAIRE TECHNOLOGIQUE DE VOTRE DÉVELOPPEMENT

Les bases de données

Workflow/DataWarehouse/DataMining LORIA - Université d automne Informatique décisionnelle - L. Mirtain 1

Introduction à ORACLE WAREHOUSE BUILDER Cédric du Mouza

QU EST-CE QUE LE DECISIONNEL?

et les Systèmes Multidimensionnels

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

Business Intelligence avec SQL Server 2012

Les Entrepôts de Données. (Data Warehouses)

Management des Systèmes d Information

Bases de données cours 4 Construction de requêtes en SQL. Catalin Dima

IBM System i. DB2 Web Query for System i : le successeur de Query/400? Oui, mais bien plus!!!

Bases de données avancées Introduction

Ecole des Hautes Etudes Commerciales HEC Alger. par Amina GACEM. Module Informatique 1ière Année Master Sciences Commerciales

Bases de Données. Stella MARC-ZWECKER. Maître de conférences Dpt. Informatique - UdS

Introduction aux SGBDR

Chapitre VIII. Les bases de données. Orientées Objet. Motivation

Lamia Oukid, Ounas Asfari, Fadila Bentayeb, Nadjia Benblidia, Omar Boussaid. 14 Juin 2013

palais des congrès Paris 7, 8 et 9 février 2012

HERMES SYSTEM et BEWISE souhaitent vous offrir les meilleures compétences.

BI Open Source Octobre Alioune Dia, Consultant BI

TP Contraintes - Triggers

DEMARREZ RAPIDEMENT VOTRE EVALUATION

Intelligence Economique - Business Intelligence

Théories de la Business Intelligence

Introduction aux outils BI de SQL Server Fouille de données avec SQL Server Analysis Services (SSAS)

Plan. Introduction Eléments de la théorie des systèmes d'informations Les entrepôts de données (Datawarehouse) Les datamart Architecture Modélisation

Domaines d intervention

Bases de données et sites WEB Licence d informatique LI345

Installation de SCCM 2012 (v2)

IBM Cognos Enterprise

Business Intelligence simple et efficace

Le Langage SQL version Oracle

Formation Cloudera Data Analyst Utiliser Pig, Hive et Impala avec Hadoop

Entreprise et Big Data

Langage SQL : créer et interroger une base

Transcription:

BI = Business Intelligence Master Data-Science Cours 5 - MDX UPMC 23 février 2015

Plan Vision générale ETL Datawarehouse OLAP Reporting Data Mining

Définition OLAP En informatique, et plus particulièrement dans le domaine des bases de données, le traitement analytique en ligne (anglais online analytical processing, OLAP) est un type d application informatique orienté vers l analyse sur-le-champ d informations selon plusieurs axes, dans le but d obtenir des rapports de synthèse tels que ceux utilisés en analyse financière. Les applications de type OLAP sont couramment utilisées en informatique décisionnelle, dans le but d aider la direction à avoir une vue transversale de l activité d une entreprise. Source : wikpiedia OLAP s oppose au traitement de transactions en ligne (online transaction processing abr. OLTP) qui s inscrit dans un système opérationnel (en production).

MDX Définition Le MDX (de l anglais Multidimensional Expressions, expressions multidimensionnelles ) est un langage de requête pour les bases de données OLAP, analogue au rôle de SQL pour les bases de données relationnelles. C est aussi un langage de calcul avec une syntaxe similaire à celle des tableurs. Le langage des expressions multidimensionnelles possède une syntaxe appropriée à l interrogation et manipulation des données multidimensionnelles mémorisées dans un cube OLAP1. Bien qu il soit possible de traduire certaines expressions dans le langage SQL traditionnel, cela nécessite une syntaxe SQL souvent maladroite même pour des expressions MDX très simples. MDX a été adopté par une large majorité de fournisseur de la technologie OLAP et est devenu un standard de facto pour les systèmes OLAP. Source : wikipedia

MDX SELECT Measures.[Unit Sales] ON COLUMNS, [Store].[All Stores] ON ROWS Délimiteurs Les délimiteurs [ et ] peuvent ne pas être mis si pas d ambiguité.

MDX SELECT Measures.MEMBERS ON COLUMNS, Product.Style.CHILDREN ON ROWS FROM [Adventure Works] équivalent à : SELECT [Measures].MEMBERS ON COLUMNS, [Product].[Style].CHILDREN ON ROWS FROM [Adventure Works]

MDX SELECT [Measures].MEMBERS ON COLUMNS, [Date].[Calendar Year].MEMBERS ON ROWS FROM (SELECT [Measures].[Internet Sales Amount] ON COLUMNS, [Date].[Calendar Year].&[2004] ON ROWS FROM [Adventure Works]) Expressions de sous-cube Attention : ne marche pas dans tous les systèmes OLAP

MDX SELECT Measures.MEMBERS ON COLUMNS, [Store].MEMBERS ON ROWS MEMBERS Retourne le jeu des membres d une dimension, d un niveau ou d une hiérarchie.

MDX SELECT Measures.MEMBERS ON COLUMNS, {[Store].[Store State].[CA], [Store].[Store State].[WA]} ON ROWS Exercice Dessinez la sortie de cette requête?

MDX SELECT Measures.MEMBERS ON COLUMNS, {[Store].[Store State].[CA].CHILDREN, [Store].[Store State].[WA].CHILDREN} ON ROWS CHILDREN Retourne le jeu des enfants d un membre spécifié.

MDX SELECT Measures.MEMBERS ON COLUMNS, {[Store].[Store State].[CA], DESCENDANTS([Store].[Store State].[CA], [Store City])} ON ROWS DESCENDANTS DESCENDANTS(member, level [, flags]) Retourne le jeu de descendants d un membre à un niveau spécifié ou à une distance spécifiée, en incluant ou en excluant éventuellement des descendants dans d autres niveaux.

MDX DESCENDANTS Le flag peut être BEFORE, AFTER, SELF ou bien BEFORE AND AFTER selon le niveau désiré SELECT Measures.MEMBERS ON COLUMNS, {[Store].[Store State].[CA], DESCENDANTS([Store].[Store State].[CA], [Store City],AFTER) ON ROWS SELECT Measures.MEMBERS ON COLUMNS, {[Store].[Store State].[CA], DESCENDANTS([Store].[Store State], [Store City],BEFORE_AND_AFTER)} ON ROWS

MDX select AddCalculatedMembers([Measures].Members) ON COLUMNS, {[Store].[USA].[CA], Descendants([Store].[USA].[CA], [Store].[Store City])} ON ROWS from [Sales] AddCalculatedMembers Retourne un ensemble généré par l ajout de membres calculés à un ensemble spécifié.

MDX SELECT {[Store Type].[Store Type].MEMBERS} ON COLUMNS, {[Store].[Store State].MEMBERS} ON ROWS WHERE (Measures.[Unit Sales]) Slicer WHERE spécifie une tranche dimensionnelle dans le cube

MDX SELECT {[Store Type].[Store Type].MEMBERS} ON COLUMNS, {[Store].[Store State].MEMBERS} ON ROWS WHERE (Measures.[Unit Sales], [Time].[Year].[1997]) Slicer WHERE spécifie une tranche dimensionnelle dans le cube

WITH SET WITH SET permet la création d ensembles WITH SET [ChardonnayChablis] AS {[Product].[All Products].[Drink].[Good Chardonnay], [Product].[All Products].[Drink].[Pearl Chardonnay], [Product].[All Products].[Drink].[Portsmouth], [Product].[All Products].[Drink].[Walrus Chardonnay], SELECT [ChardonnayChablis] ON COLUMNS, {Measures.[Unit Sales]} ON ROWS FROM Sales

Calculated Members WITH MEMBER MDX permet de rajouter des calculs directement dans les requêtes MDX. Ceci s effectue grâce à la syntaxe : WITH MEMBER parent.name AS expression WITH MEMBER Measures.ProfitPercent AS (Measures.[Store Sales] - Measures.[Store Cost]) / (Measures.[Store Cost]), FORMAT_STRING = #.00%

WITH MEMBER [Measures].[Special Discount] AS [Measures].[Discount Amount] * 1.5 SELECT [Measures].[Special Discount] on COLUMNS, NON EMPTY [Product].[Product].MEMBERS ON Rows FROM [Adventure Works] WHERE [Product].[Category].[Bikes]

Calculated Members WITH MEMBER MDX permet de rajouter des calculs directement dans les requêtes MDX. Ceci s effectue grâce à la syntaxe : WITH MEMBER parent.name AS expression WITH MEMBER [Time].[First Half 97] AS [Time].[1997].[Q1] + [Time].[1997].[Q2] MEMBER [Time].[Second Half 97] AS [Time].[1997].[Q3] + [Time].[1997].[Q4]

Calculated Members WITH MEMBER [Time].[First Half 97] AS [Time].[1997].[Q1] + [Time].[1997].[Q2] MEMBER [Time].[Second Half 97] AS [Time].[1997].[Q3] + [Time].[1997].[Q4] SELECT {[Time].[First Half 97], [Time].[Second Half 97], [Time].[1997].CHILDREN} ON COLUMNS, {[Store].[Store Name].MEMBERS} ON ROWS

GENERATE Applique un jeu à chaque membre d un autre jeu, puis effectue la jointure par union des jeux résultants. Generate( Set_Expression1, Set_Expression2 [, ALL ] ) SELECT GENERATE( [Time].[Year].MEMBERS, {[Measures].[Unit Sales]}, ON 0

GENERATE Applique un jeu à chaque membre d un autre jeu, puis effectue la jointure par union des jeux résultants. Generate( Set_Expression1, Set_Expression2 [, ALL ] ) SELECT GENERATE( [Time].[Year].MEMBERS, {[Measures].MEMBERS}, ALL) ON 0

SELECT {GENERATE([Time].[Year].MEMBERS, {[Time].CURRENTMEMBER, [Time].CURRENTMEMBER.CHILDREN})} ON COLUMNS, [Promotions].[All Promotions].CHILDREN ON ROWS from Sales CURRENTMEMBER Retourne le membre actuel dans une hiérarchie spécifique au cours d une itération.

SELECT {GENERATE({[Store].[USA].[CA],[Store].[USA].[WA]}, DESCENDANTS([Store].CURRENTMEMBER, [Store Name]))} ON COLUMNS, [Promotions].[All Promotions].CHILDREN ON ROWS WHERE (Measures.[Unit Sales])

WITH MEMBER measures.x AS [Product].children.count SELECT Measures.X ON 0 COUNT Retourne le nombre de cellules d un ensemble

SELECT Measures.MEMBERS ON COLUMNS, TOPPERCENT({[Store].[Store City].MEMBERS}, 50, Measures.[Sales Count]) ON ROWS TOPPERCENT Trie un jeu en ordre décroissant et retourne un jeu de tuples avec les valeurs les plus élevées dont le total cumulé est égal ou supérieur à un pourcentage spécifié.

WITH MEMBER Measures.[Maximum Sales] AS MAX(DESCENDANTS([Time].CURRENTMEMBER, [Time].[Month]), Measures.[Unit Sales]) SELECT {[Time].[1997]} ON COLUMNS, [Product].[Product Category].MEMBERS ON ROWS WHERE (Measures.[Maximum Sales]) Autres mesures Les fonctions disponibles sont AVG, MEDIAN, MAX, MIN, VAR, and STDDEV

References MDX Reference @ MSDN : http://msdn2.microsoft.com/en-us/library/ms145506.aspx The Baker s Dozen : 13 Tips for Querying OLAP Databases with MDX : http://www.devx.com/codemag/article/37460/1954?pf=true Tutorial : Introduction to Multidimensional Expression (MDX). http: //www.fing.edu.uy/inco/grupos/csi/esp/cursos/cursos act/ 2005/DAP SistDW/Material/2-SDW-Laboratorio1-2005.pdf MDX resources : http://www.mosha.com/msolap/mdx.htm