Business Intelligence Analysis Service 2005 - Introduzione Franco Perduca Factory Software [email protected] 1 Agenda Basi dati multidimensionali (OLAP) Analysis Services step by step Caratteristiche di un database Olap Interrogare i cubi (Mdx e dintorni) Client Olap Gestire la sicurezza in Analysis Services Deploy della soluzione 2 Basi dati multidimensionali (OLAP) Problemi del dwh I dati sono vastissimi Le query non sempre sono “immediate” C’è bisogno di un “cane da query” o “da report” Le applicazioni spesso producono report cartacei e/o fogli excel I report e/o fogli excel più che rispondere a domande le generano 3 Basi dati multidimensionali (OLAP) È una “organizzazione” multidimensionale dei dati provenienti dal DW Il cubo rappresenta la struttura logica di un database Olap Le dimensioni e i fatti vengono organizzati in un modello intuitivo di facile utilizzo da parte degli utenti 4 Basi dati multidimensionali (OLAP) Il cubo consente di rappresentare in modo intuitivo e maneggevole la dipendenza di un fatto da 3 dimensioni L’ipercubo è una generalizzazione del cubo su n dimensioni, con 1 <= n <= Per semplicità, si usa fare riferimento al “cubo” indipendentemente dal numero di dimensioni 5 Basi dati multidimensionali (OLAP) Ogni cella è un valore Il valore di ogni cella è l’intersezione tra gli attributi delle dimensioni 6 Basi dati multidimensionali (OLAP) Sales Fact Atlanta Chicago Denver Grapes Cherries Melons Apples Dallas Q1 7 Q2 Q3 Time Dimension Q4 Database OLAP Le dimensioni ci permettono di “affettare” a “dadi” il cubo Le gerarchie all’interno delle dimensioni consentono di “trapanare” all’ interno del cubo per scendere/salire nei dettagli/aggregazioni (DrillDown/DrillUp) Può produrre report stampati, ma è prima di tutto una funzionalità interattiva Consente di verificare velocemente ipotesi formulate dall’utente 8 Analysis Services step by step Analysis Server gestisce una base dati multidimensionale per ottimizzare l’accesso ai dati attraverso client OLAP Un database è un insieme di cubi I cubi vengono alimentati con fonti dati esterne 9 Analysis Services step by step Unified Dimensional Model (UDM) Combina in un modello unico tutto il necessario per l’analisi Ambiente intuitivo per analisi interattive Olap fa parte dell’ UDM 10 Analysis Services step by step Security End-user Model • Translations • Actions • KPIs … Calculations Scope(Customer.Country.USA, *); Sales = 2; End Scope; Basic Dimensional Model • Cubes and Dimensions • Storage/caching policies • Linked objects Order Data Source View 11 Order# (PK) CustomerID DueDate Customer ID (PK) Name Age Analysis Services step by step Passi necessari per creare un cubo Creare un data source (la fonte dati) Disegnare la data source view Eseguire il wizard Deploy e processo del database Un cubo puo’ contenere piu’ fact table Ogni fact table genera measure group diverse 12 Analysis Services step by step BI Development Studio Ambiente integrato Funziona all’ interno di Visual Studio Lavora in modo disconnesso Genera script in formato xml 13 Analysis Services step by step DEMO 14 Dettagli sulle dimensioni Dimensione è basata sugli attributi presenti nella tabella delle dimensioni Posso creare gerarchie per poter facilitare la navigazione 15 Dettagli sulle dimensioni Key Column: Definisce i membri in un livello Possono essere definite con espressioni Name Column: Definisce il “nome” per i membri di un livello Possono essere definite con espressioni Sorting Member Definisce l’ordine all’ interno di un livello Discretization Crea range ( $9.97, $10.05, $10.10,…) ( <$10, $10 > $10,…) 16 Dettagli sulle dimensioni Dimensioni parent child Classica tabella con autoreferenza Sono basate su due campi all’ interno della stessa tabella Non è noto il numero di livelli Es. Piano dei conti 17 Dettagli sulle dimensioni Dimensione tempo Può essere creata in automatico con wizard a partire da un campo data/stringa della tabella dei fatti Se gestita come una normale tabella delle dimensioni possiamo gestire altri dettagli legate alla data es. festivo, prefestivo ecc. Occupa meno spazio !!! 18 Dettagli sulle dimensioni Demo 19 Interrogare i cubi La soluzione più semplice è nella maggior parte dei casi utilizzare Excel: Excel può collegarsi ad Analysis Services Excel add-in accelerator Reporting Services Magari integrato in WSSS Business Scorecard Accelerator Ricco ambiente di sviluppo Grosse novità in vista 20 Interrogare i cubi DEMO 21 Interrogare i cubi Potrebbe essere interessante implementare calcoli e formule per consentire analisi più approfondite e/o confronti tra le varie dimensioni (es. tempo) La risposta e’ MDX 22 Interrogare i cubi Key Performance Indicators Per creare cruscotti aziendali Calculate Value, Goal, Status, Trend, Weight, Gauge Disponibile sul client Adomd.net RS 23 Interrogare i cubi 24 KPI Actual value Valore attuale. Goal value Obiettivo da raggiungere Status Come sta andando Valore compreso tra (-1 very bad ,0,1 very good ) Trend. Andamendo nel tempo Valore compreso tra (-1 ,0,1 ) Rappresentazione grafica per status e trend Interrogare i cubi Writeback Possibilità di “scrivere” nell’ UDM Es Budget con possibilità di “spalmare” sul dettaglio dati aggregati Actions Link tra dati e una azione url Reporting DrillThrough 25 Interrogare i cubi DEMO 26 Gestire la sicurezza Si basa su definizioni di ruoli che si “appoggiano” sulla windows security Amministrativa Administrator Process Database Read Definition 27 Gestire la sicurezza Utenti Si basa sulla creazioni di ruoli all’interno di Analysis Services Posso limitare l’utente a vedere singole dimensioni, livelli, membri Consente di arrivare alla singola cella all’interno del cubo 28 Gestire la sicurezza Il ruolo viene creato a livello di database dal Database Role Manager Per ciascun cubo si possono specificare i dettagli 29 Gestire la sicurezza Demo 30 Deploying an OLAP Solution 31 Aggiornamento delle dimensioni Process Full quando : aggiungo, elimino un livello, rinomino o elimino un membro oppure lo passo di livello conseguenze : Nessun cubo interessato è disponibile ed inoltre deve prevedere un full process prima di diventarlo Process Update quando : Nuovi membri o modifiche conseguenze : I cubi rimangono disponibili I nuovi membri aggiunti legati a tabelle dei fatti non ancora processate appariranno senza valore Deploying an OLAP Solution Aggiornamento dei cubi Process Full quando : viene creato Aggiungo,elimino o modifico una misura Rebuild di una dimensione shared conseguenze : Il cubo non e’ disponibile Elaborazione lunga 32 Deploying an OLAP Solution Aggiornamento dei cubi Process Incremental quando : Aggiungo nuovi dati al DW conseguenze : Non “costa molto” in quanto il cubo rimane disponibile 33 Deploying an OLAP Solution Aggiornamento dei cubi Altre opzioni Process Indexes Process Data Process Structure Process Index Process Script Cache Proactive Cache 34 Deploying an OLAP Solution XMLA Zero client footprint HTTP, TCP/IP, SOAP, UDDI, WSDL Backward compatibility with OLE DB and ADO MD No Client caching 35 Deploying an OLAP Solution Backup e restore di un cubo SSMS (pulsante destro del mouse) Possibilità di encrypt con password 36 Deploying an OLAP Solution Analysis Services Scripting Language (ASSL) Linguaggio usato in tutti i file xml di AS View Code da Development Studio <Annotations> è usata solo dal Designer È basato su XML/A XML for Analysis SOAP-based www.xmla.org 37 Deploying an OLAP Solution Save (from BI Development Studio) Salva in formato XML la definizione Build (from BI Development Studio) Genera ASDatabase XML file Deploy Manda ASDatabase XML file al server Deployment Wizard per configurare script Process Carica dimensions e misure BIDS fa processes automatico sul deploy 38 Deploying an OLAP Solution Doppio click su .ASDatabase definition file Chiede informazioni di configurazione Server name, target database name Replacement mode for partitions and roles Locations for error logs and data files Processing options (full, default, or none) Puo creare XMLA script 39 Deploying an OLAP Solution Analysis Management Objects (AMO) .Net API per eseguire ASSL Scripting crea ASSL, no AMO Rimpiazza (DSO) DSO disponibile per compatibilità 40 Deploying an OLAP Solution DEMO !!! 41 Domande? 42 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.