La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Mdx Franco Perduca Factory Software

Presentazioni simili


Presentazione sul tema: "Mdx Franco Perduca Factory Software"— Transcript della presentazione:

1 Mdx Franco Perduca Factory Software

2 2 Mdx Multi-Dimensional eXpression Parte della specifica OLEDB for OLAP Ora parte anche delle specifiche XML/A Nasce per reporting e analisi

3 3 SQL vs MDX SQL Relazionale Joins devono essere specificati Non è Posizionale Data dynamically aggregated MDX Multidimensionale Relazioni sono definite nei metadati Posizionale Data referenced

4 4 Mdx Lo usiamo per Query Statements Per costruire reports (simile a SQL) Formule Membri calcolati (simile a Excel) Named Sets Subcube expression Management (limitato rispetto a Sql) Alter Cube, Update Cube, etc.

5 5 Mdx ogni cella ha un nome All Product Bread Dairy Meat Units Dollars (Bread, USA, Units) ([All Product], [All State], Dollars) (Meat, Mexico, Dollars) USA Canada Mexico All State

6 6 Mdx Tupla Coordinate multidimensionali di una cella 1 membro da ogni dimensione Se piu dimensioni separo con, Va messa tra () e nome tra [] (non obblig.) Se una dimensione non è specificata usa membro corrente ([Measures].[Order Count],[Date].[Calendar Year].&[2004])

7 7 Mdx Tuple da Row, Column, and Filter ([All State], [All Time], [Dairy], [Sales Dollars])

8 8 Mdx Set Insieme di tuple della stessa dimensionalità { ([Measures].[Order Count],[Date].[Calendar Year].&[2004]), ([Measures].[Order Count],[Date].[Calendar Year].&[2003]) }

9 9 Mdx Mdx formule Nuove misure Nuovi membri Tuple based Average Price = [Sales Amount] / [Order Quantity] come riferimento Excel: =B5/B4 Set based Year To Date = Sum( PeriodsToDate([Order Date].[Calendar Quarter]),[Order Quantity]) Come Excel ranges: =Sum(B2:B10) ([Unit Sales],ancestor(Product,[Product].[(All)]))

10 10 Mdx Autoexist Non ritorna attributi della stessa dimensione che non esistono altri attributi Es Provincia, Comune Se scelgo MI vedo solo i comuni della provincia di MI Non ha niente che fare con i fact table Posso creare tupla che non ritorna nulla MI -> Rimini

11 11 Mdx MDX Designer Nuovo ambiente centralizzato Intellisense Color coding Debugger !!!! Forms e Script Mode Forms piu semplice creare mdx Script Mode per utenti piu avanzati

12 12 Mdx Primo mdx script Calculated Member Possibilità di organizzarli in folders Es: [Measures].[Totale]/[Measures].[Qta] avg(topcount([Dim Clienti].[Dim Clienti].[Dim Clienti].members,5,[Measures].[Totale]),[Measures].[ Totale]) (attenzione a specificare oggetti corretti)

13 13 Mdx Lavorare con il tempo Lavorare con il tempo Importante la funzione CurrentMember [dim tempo].[Year - Quarter - Month - Date].currentmember.name (o. Uniquename) E la PrevMember ([dim tempo].[Year - Quarter - Month - Date].currentmember.prevmember,[Measures].[Total e]) O meglio ([dim tempo].[Year - Quarter - Month - Date].prevmember,[Measures].[Totale]) Crescita pp ([dim tempo].[Year - Quarter - Month - Date],[Measures].[Totale])- ([dim tempo].[Year - Quarter - Month - Date].prevmember,[Measures].[Totale])

14 14 Mdx Lavorare con il tempo ParallelPeriod Si potrebbe usare la funzione lag Es lag(12) per anno Meglio parallelperiod Parallelperiod(Livello,quanto,Membro) es (parallelperiod([dim tempo].[Year - Quarter - Month - Date].[Year],1,[dim tempo].[Year - Quarter - Month - Date]),[Measures].[Totale])

15 15 Mdx Lavorare con il tempo Aggregazione YTD Funzione YTD, ritorna membri ad un livello da inizio anno Es YTD ([dim tempo].[Year - Quarter - Month - Date].[Month].&[ T00:00:00]) /* Marzo 2003*/ Torna Gennaio 2003 Febbraio 2003 Marzo 2003 Funzione QTD stessa cosa su quarter Funzione PeriodsToDate specifico data inizio

16 16 Mdx altri esempi Percentuale rispetto al totale Funzione Root, ritorna All di una dimensione Es root([Dim Clienti]) ([Measures].[Totale]) / (root([Dim Clienti]),[Measures].[Totale]) Percentuale rispetto al padre Parent ritorna il membro padre Es [Dim Clienti].[Provincia - Comune].CurrentMember.Parent ( [Dim Clienti].[Provincia - Comune],[Measures].[Qta] ) / ( [Dim Clienti].[Provincia - Comune].Parent,[Measures].[Qta] )

17 17 Mdx non solo misure Media di una gerarchia Avg( avg([Dim Clienti].[Comune].[Comune].members) La associo ad una gerarchia Ed ad un Parent Member

18 18 Mdx NamedSet Set già pronto al interno del udm Es top n topcount([Dim Clienti].[Comune].[comune].members,5,[Measures].[Total e])

19 19 Mdx MDX query È composta da 3 parti – Dicers: assi (normalmente Column e Row) – Data Grid – riempita dalla risoluzione degli assi – Slicers: Filtro SELECT On Columns, On Rows FROM WHERE

20 20 Set.Members Descendants or Children se sono in una gerarchia Membri espliciti in {} {[Sales Amount],[Order Quantity]} Membro singolo {} non obbligatorio SELECT [Sales Amount] ON 0, [Category].Members ON Rows FROM [Adventure Works];

21 21 Assi ON Columns0 Rows1 NON EMPTY rimuove celle vuote SELECT NON EMPTY [Measures].Members ON 0, NON EMPTY [Category].Members ON Rows FROM [Adventure Works];

22 22 Mdx Funzioni (tra le piu usate) Order Head/Tail TopCount Filter Crossjoin (*) Except (-) Generate

23 23 Mdx Attributi aggiuntivi Hierarchize (ordina dimensione) NON EMPTY (toglie righe vuote) CELL PROPERTIES Formatted_Value;

24 24 ADOMD.Net Nuova versione.Net of ADOMD ADOMD.Net in AS2005.Net wrapper for XML/A SOAP calls Non fa parte di Sql 2005 Già rilasciato in AS2K, XML/A parla con PivotTable Service (PTS) in Sql 2005, XML/A diretto al server

25 25 ADOMD.Net

26 26 ADOMD.Net

27 27 Client Metadata Struttura del cubo. CubeDef Class Dimension Hierarchy Level Member

28 28 Query Execution Invia MDX via AdomdCommand Standard MDX Torna CellSet Griglia multidimensionale

29 29 CellSet Structure Axes Sets Tuples Terminologia cambiata da adomd per essere piu aderente a MDX Data Values (array multidimensionale) Index è (n,m) array element

30 30 CellSet metadata Metadati sono disponibile dal CellSet OlapInfo AxesInfo CellsInfo CubesInfo

31 31 Domande?

32 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.


Scaricare ppt "Mdx Franco Perduca Factory Software"

Presentazioni simili


Annunci Google