autore: Cristian Marchi Anildo

Slides:



Advertisements
Presentazioni simili
Training On Line - CONP. 2 Richiesta Da Menu: Conferimenti ad inizio anno termico > Agosto > Pluriennali > Nuova Richiesta Si accede alla pagina di Richiesta.
Advertisements

Numeri a 100 Electronic flashcard. 1 uno ritorno.
Dipartimento di Ingegneria Idraulica e Ambientale - Universita di Pavia 1 Caduta non guidata di un corpo rettangolare in un serbatoio Velocità e rotazione.
1 Tutto su liceoclassicojesi.it 1° Incontro sulla gestione di liceoclassicojesi.it.
Valutazione d’Istituto A.S. 2008/2009
1 MeDeC - Centro Demoscopico Metropolitano Provincia di Bologna - per Valutazione su alcuni servizi erogati nel.
1 Pregnana Milanese Assessorato alle Risorse Economiche Bilancio Preventivo P R O P O S T A.
DBMS (DataBase Management System)
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità B1 Introduzione alle basi di dati.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità C1 Il linguaggio SQL.
Visual Studio Tools For Office 2005 Fabio Santini. NET Senior Developer Evangelist Microsoft Italy.
Miglioramento della protezione dei dati mediante SQL Server 2005 Utilizzo della crittografia di SQL Server 2005 per agevolare la protezione dei dati Pubblicato:
Consumare Web Service Andrea Saltarello
Introduzione alla tecnologia OLAP: Microsoft SQL Analisys Services
Introduzione al datawarehouse
PHP.
1 Semantica Operazionale di un frammento di Java: lo stato.
Connessione con MySQL.
Biglietti e Ritardi: schema E/R
Data warehousing con SQL Server
Biglietti e Ritardi: schema E/R
Biglietti: schema E/R.
1 Biglietti: schema E/R. 2 Biglietti: albero degli attributi.
Esercitazioni del Corso di Sistemi Informativi Marina Mongiello
Frontespizio Economia Monetaria Anno Accademico
Associazione Nazionale Medici Cardiologi Ospedalieri
1 IT FOR BUSINESS AND FINANCE ACCESS INTRODUCTION.
Canale A. Prof.Ciapetti AA2003/04
Corso di Informatica (Basi di Dati)
eliana minicozzi linguaggi1a.a lezione2
Perché.Net e non più COM/DCOM ? Superamento dei problemi di COM: Richiede una infrastruttura "non semplice" da ogni applicazione (ad esempio Class Factory.
Basi di dati Università Degli Studi Parthenope di Napoli
MP/RU 1 Dicembre 2011 ALLEGATO TECNICO Evoluzioni organizzative: organico a tendere - ricollocazioni - Orari TSC.
Laboratorio di Informatica
Cos’è un problema?.
Gli italiani e il marketing di relazione: promozioni, direct marketing, digital marketing UNA RICERCA QUANTITATIVA SVOLTA DA ASTRA RICERCHE PER ASSOCOMUNICAZIONE.
DBMS ( Database Management System)
Corso di INFORMATICA anno scolastico 2009/10 Linguaggio SQL IDENTIFICATORI di tabelle e attributi: stringhe di lunghezza max 18 caratteri, composte da.
CHARGE PUMP Principio di Funzionamento
Settimana: 3-7 marzo Orariolunedimartedi Mercoledi 5 Giovedi 6 Venerdi lezione intro alla fis mod DR lezione intro alla fis mod DR.
C APITOLO 6 © 2012 Giorgio Porcu – Aggiornamennto 22/02/2012 G ESTIRE D ATI E C ARTELLE DI LAVORO Excel Avanzato.
Q UESTIONI ETICHE E BIOETICHE DELLA DIFESA DELLA VITA NELL AGIRE SANITARIO 1 Casa di Cura Villa San Giuseppe Ascoli Piceno 12 e 13 dicembre 2011.
Ll Questionario Introduzione al software SAS (Parte 2) Metodi Quantitativi per Economia, Finanza e Management Esercitazione n°2.
1 Negozi Nuove idee realizzate per. 2 Negozi 3 4.
ORDINE DI CHIAMATA a 1minuto e 2 minuti PRINCIPALI TEMPI DELLA COMPETIZIONE ORDINE DI CHIAMATA a 1minuto e 2 minuti PRINCIPALI TEMPI DELLA COMPETIZIONE.
ISTITUTO COMPRENSIVO “G. BATTAGLINI” MARTINA FRANCA (TA)
Protocollo informatico: interoperabilità e PEC
Business Intelligence Semantic Model Tomislav Piasevoli SoftPro Tetral d.o.o.
1 w w w. g a t 4. c o m WI GAT WebIngelligence rappresenta una piattaforma funzionale e tecnologica per la creazione e gestione di un datawarehouse che.
Configurazione in ambiente Windows Ing. A. Stile – Ing. L. Marchesano – 1/23.
Un trucchetto di Moltiplicazione per il calcolo mentale
1 Ly-LAB Sistema di gestione dei dati analitici di laboratorio.
Prima rilevazione sullo stato di attuazione della riforma degli ordinamenti nelle istituzioni scolastiche in LOMBARDIA Attuazione del D.L. 59/2003 a.s.
Basi di Dati e Sistemi Informativi Il Linguaggio SQL Home page del corso:
Esempi risolti mediante immagini (e con excel)
1 Data warehousing con SQL Server SQL Server è un RDBMS (Relational DataBase Management System) Analysis Services è un componente di SQL Server che offre.
ASP – Active Server Pages Introduzione Pagine Web Statiche & Dinamiche(ASP)
NO WASTE Progetto continuità scuola primaria scuola secondaria Salorno a.s. 2013_
I DATABASE.
A.P. cat. B - 1 Per chi vuole: Libro di testo D.P. Curtis, K. Foley, K. Sen, C. Morin Informatica di base 2° edizione Mc Graw-Hill Companies.
I DBMS BASI DI DATI (DATABASE) Insieme organizzato di dati utilizzati
Eprogram informatica V anno. ASP.NET Introduzione ASP.NET (Active Server Page) è il linguaggio che, sfruttando la tecnologia.NET, permette di: -scrivere.
MySQL Database Management System
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
Database Elaborato da: Claudio Ciavarella & Marco Salvati.
By: Powered by:. Tecnologia Microsoft La soluzione CCAnalyzer utilizza la tecnologia OLAP (On Line Analytical Processing) di Microsoft presente nel software.
Servizi Internet Claudia Raibulet
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 UdA 1A Database Progettazione Fisica G IORGIO P ORCU
ICT e Sistemi informativi Aziendali Materiale di supporto alla didattica.
Linguaggio SQL. Linguaggi per database La diffusione del modello relazionale ha favorito l’uso prevalente di linguaggi non procedurali: in questo modo.
Transcript della presentazione:

autore: Cristian Marchi Anildo Design and Implementing OLAP solution with Microsoft SQL Server 2005 Analysis Services autore: Cristian Marchi Anildo

Obiettivi del corso Il corso fornisce ai partecipanti le conoscenze necessarie per progettare,implementare e gestire nuove applicazioni di analisi multidimensionale utilizzando il nuovo sistema Microsoft SQL Server 2005 Analysis Services.

Contenuti del corso Introduzione alla piattaforma Microsoft per la Business Intelligence Architettura degli Analysis Services Creazione di un progetto Analysis Services Introduzione agli oggetti Analysis Services Amministrazione di database Analysis Services La programmazione multidimensionale Utilizzo di Client OLAP per l’interrogazione di basi dati multidimensioanli

Introduzione: la tecnologia OLAP Il termine OLAP identifica una particolare tecnologia, vista anche come estensione delle funzionalità tipiche di un Data Warehouse, in grado di supportare l’elaborazione di operazioni per il supporto alle decisioni. Analysis Services è la piattaforma OLAP di Microsoft mediante la quale è possibile progettare, creare, gestire e distribuire strutture multidimensionali, le cui informazioni aggregate permettono attività di analisi per il supporto alle decisioni.

La piattaforma Microsoft per la Business Intelligence Sessione 1

La piattaforma Microsoft per la BI Microsoft SQL Server 2005 è una piattaforma completamente integrata che fornisce strumenti, funzionalità e caratteristiche innovative per lo sviluppo di soluzioni di Business Intelligence e applicazioni di analisi e reporting direzionale.

Panoramica dei componenti chiave di gestione Principali strumenti per la realizzazione di soluzioni BI: SQL Server Management Studio (SSMS) SQL Server Business Intelligence Development Studio (SSBIDS) Principali componenti server per la realizzazione di soluzioni BI: SQL Server Database Engine SQL Server Analysis Services SQL Server Integration Services SQL Server Reporting Services

SQL Server Management Studio Strumento integrato per la gestione ed amministrazione di qualsiasi tipo di server appartenente alla famiglia SQL Sever: Database Engine Analysis Services Reporting Services Integration Services Funzionalità tipiche di gestione database (proprietà, data files, backup and restore, etc.) Query Editor integrato: Database Engine Query AS MDX Query AS DMX Query AS XMLA Query Definizione di oggetti Analysis Services

SQL Server Business Intelligence Development Studio Strumento integrato per la gestione, implementazione e distribuzione di progetti Analysis Services Solution Explorer Definizione di sorgenti dati (Data Source) Definizione di strutture multidimensionali (Cubi e Dimensioni) Definizione di modelli di Mining Definizione di Ruoli Utente (Roles and Permission) Amministrazione delle proprietà del progetto Analysis Services Deployment and Processing Progress Modalità di elaborazione e storage delle strutture multidimensionali Deploy di progetti Analysis Services

Dimostrazione 1-1 Visti da vicino… SQL Server Management Studio SQL Server Business Development

L’architettura degli Analysis Services 2005 Sessione 2

Architettura Client/Server Architettura costruita su componenti Client e Server Componente Server (MSMDSVR.EXE) eseguito come servizio Windows La comunicazione con i Clients avviene utilizzando lo standard XML for Analysis per l’invio di comandi

Architettura Distribuita Differenti Providers forniti con AS per supportare differenti linguaggi di programmazione Comunicazione con AS mediante l’invio e la ricezione di pacchetti SOAP (XML/A) mediante protocollo TCP/IP Comunicazione mediante protocollo HTTP (Internet Information Server)

Componenti Server e Client Applicazione Server msmdsvr.exe (XML/A Listener) Interpreta i comandi inviati dalle postazioni Client Gestione di metadata Processi di elaborazione delle strutture multidimensionali Calcolo e gestione delle aggregazioni Funzionalità di caching Applicazioni Client Data Access Interfaces per le applicazioni Client (OLEDB for OLAP, ADO MD, ADO MD.NET, XML/A) Comunicazione attraverso XML/A Tutte le interrogazioni vengono elaborate lato Server

Oggetti Analysis Services Data Source Data Source Views Cubi Dimensioni Modelli di Mining Ruoli

Data Source Il Data Source rappresenta la connessione ad una origine dati. Contiene la stringa di connessione con i seguenti parametri: Server Name Database Security Timeout Etc. Analysis Services immagazzina le informazioni di connessione in un file XML opportunamente criptato. C:\Programmi\Microsoft SQL Server\ MSSQL.2\OLAP\Data\OLAPDatabase.0.db\OLAPDatabase.7.ds.xml

Data Source: xml file - <Load xmlns="http://schemas.microsoft.com/analysisservices/2003/engine" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> - <ParentObject>   <DatabaseID>GAT</DatabaseID>   </ParentObject> - <ObjectDefinition> - <DataSource xsi:type="RelationalDataSource">   <Name>GAT</Name>   <ID>GAT</ID>   <CreatedTimestamp>2005-10-10T20:59:17</CreatedTimestamp>   <LastSchemaUpdate>2005-10-13T10:10:57</LastSchemaUpdate>   <ObjectVersion>7</ObjectVersion>   <ObjectID>E5E6061A-C5B7-41E7-B400-59FCC2AA6E9C</ObjectID>   <Ordinal>7</Ordinal>   <PersistLocation>0</PersistLocation>   <System>false</System>   <DataFileList />   <Description />   <PermissionFileList>DataSourcePermission.2.perm.xml</PermissionFileList>   <ConnectionString>[EncryptedDataStart]CAAAAAAHmgD2mnUf6aIvMnk/eKZUchQk6ctUoYL1rS0/9+zaA3KSwJddx28PHjP2aYkOCEsahwVz tDffiJeJwjKvUsKMGHyjsZy9kW4BvKYQA2DL54UXH1cNfiZQJaZTrwE9YDjhZ0+S0bBKLdBa/p+R zjzDsSZicOJfbo1qpG6jveIQmu334P20e6F0Kf6+/JWrOg0HIevwGmzrB1wpTMYlrexc6BEuFHRk 2tca4sLWC0Ysv7Ax7tKxy0NvarxwoBqikdQkF1vMCGH/AJqClQEql+nWjhM+ww6Uox3dkCkDRknu NeqxZrXFx1JDwtrcHXr5d4N2pZLiYet85Ylw+Q== [EncryptedDataEnd]</ConnectionString>   <Timeout>P0D</Timeout> - <ImpersonationInfo>   <ImpersonationMode>ImpersonateServiceAccount</ImpersonationMode>   <Account />   <Password>CAAAAAAAAADzA4h3rswfNEGmETAP8q9X</Password>   </ImpersonationInfo>   <MaxActiveConnections>10</MaxActiveConnections>   <Isolation>ReadCommitted</Isolation>   </DataSource>   </ObjectDefinition>   </Load>

Data Source Views Il Data Source Views (DSV) consente la creazione di un livello logico di interfaccia tra il sistema relazionale e quello multidimensionale. L’oggetto DSV: Contiene i metadati degli oggetti relazionali importati da una o più sorgenti dati (Data Source) connesse, oppure i metadati di oggetti relazionali che possono essere creati successivamente. Può essere definito su una o più sorgenti dati Può contenere relazioni, colonne calcolate e query che non sono presenti all’interno delle sorgenti dati fisiche. Non è visibile all’applicazione Client E’ possibile costruire uno o più DSV. Gli oggetti DSV possono essere condivisi fra le strutture OLAP. Tutte le informazioni sono salvate in file XML C:\Programmi\Microsoft SQL Server\ MSSQL.2\OLAP\Data\OLAPDatabase.0.db\<<dsv nome>>.dsv.xml

Data Source Views (continua…) L’introduzione dell’oggetto DSV fornisce una enorme flessibilità nella progettazione di oggetti Analysis Services in quanto la loro implementazione non si limita allo schema fisico delle strutture contenute nell’origine dati, bensì ad uno schema logico basato su nuove relazioni, colonne calcolate o query capaci di definire nuove entità relazionali. L’introduzione dell’oggetto DSV consente l’implementazione di sistemi BI complessi, eliminando le problematiche relative alla creazione di nuove entità relazionali fisiche su sorgenti dati laddove non si dispone di privilegi di System Administrator. Ulteriore vantaggio è la certezza di poter progettare e disegnare modelli multidimensionali senza la necessità di essere collegati alla sorgente dati.

Dimensione L’oggetto dimensione è una componente fondamentale nella struttura di un cubo. La costruzione dell’oggetto dimensione si basa sulle entità logiche definite nel DSV. La struttura di una dimensione è molto simile al concetto di tabella. L’oggetto dimensione viene costruito su una base di attributi e gerarchie. La dimensione è una collezione di attributi. L’oggetto dimensione può essere utilizzata in molteplici strutture cubi L’oggetto dimensione può essere utilizzata più volte all’interno di una struttura cubo. Esistono differenti tipi di dimensioni.

Concetto di attributo La dimensione è una collezione di attributi Ogni attributo corrisponde ad una o più colonne di una tabella In una dimensione deve essere sempre definito un attributo chiave, corrispondente ad una o più colonne chiave di una tabella. (Tipicamente l’attributo chiave rappresenta la PK della tabella. Laddove non sia definita una PK è possibile definire una Logical Primary Key). I membri contenuti in un attributo sono organizzati in due livelli gerarchici (livello figlio e livello ALL) Gli attributi contribuiscono alla definizione delle gerarchie. All’interno di una dimensione è possibile definire molteplici gerarchie

Rappresentazione di una gerarchia Dimensione Tempo Attributi Year, Quarter e Month Membri: 2004, Quarter 1,2,3… Gerarchia Calendario Livelli Year, Quarter e Month Membri 2004, Quarter 1,2,3…

Relazioni in una gerarchia Dimensione Ancestors di Dec Descendants di 2004 Parent Children Siblings Cousins

Le relazioni Alcuni concetti fondamentali di una rappresentazione di dati in forma multidimensionale Fatto – un concetto sul quale centrare l’analisi Misura – una proprietà atomica di un fatto da analizzare Dimensione - descrive una prospettiva lungo la quale effettuare l’analisi Le dimensione devono essere quindi correlate ai fatti AS consente di combinare le dimensioni ai i fatti in modi differenti Regular Role-Playing Fact Dimension References Many-to-Many

Regular, Role-Playing e References Una Regular Dimension è una dimensione correlata direttamente alla Fact Table attraverso l’attributo chiave. Una medesima dimensione può essere correlata più volte alla Fact Table assumendo il nome di Role-Playing Dimension. Una dimensione correlata indirettamente alla Fact Table mediante una dimensione intermedia, prende il nome di References Dimension (snowflake schema). Non vi è un limite al numero di reference dimensions che possono essere correlate tra loro.

Fact Dimension Dimensioni standard i cui attributi sono definiti sulla base di colonne presenti all’interno della dimensione tabella dei fatti. Vengono utilizzate per supportare le azioni di drillthrough.

Many-to-Many Dimension Medesima logica presente nelle strutture relazionali Il concetto di dimensione many-to-many allarga il modello dimensionale oltre il classico star-schema consentendo analisi complesse dove le dimensioni non sono direttamente correlate alla Fact Table.

Categorie di dimensioni Tutte le dimensioni sono composte da informazioni soggette a cambiamenti più o meno frequenti nel tempo. AS 2005 suddivide le dimensioni in tre categorie: Regular Dimensions – Dimensioni le cui informazioni vengono considerate statiche Slowly Changing Dimensions – Dimensioni le cui informazioni possono cambiare Rapidly Changing Dimensions – Dimensioni le cui informazioni possono cambiare nel tempo con una elevata frequenza.

Slowly Changing Dimensions Le SCDs mantengono uno storico dei cambiamenti all’interno di una sorgente dati. Le SCDs più comunemente utilizzate sono raggruppate in due differenti sottocategorie: SCDs Type 1 – durante il processo di elaborazione le informazioni “storiche” vengono sovrascritte e non conservate (La chiave primaria identificativa del record soggetto a modifica non viene alterata). SCDs Type 2 - forma più comune di SCD. Durante il processo di elaborazione le informazioni “storiche” vengono mantenute e le eventuali differenze vengono gestite mediante la generazione di un nuovo membro per l’attributo soggetto a modifica.

Rapidly Changing Dimensions Utilizzate per gestire grandi quantitativi di dati Le RCDs influiscono sulla struttura della Fact Table mediante la generazione di chiavi surrogate Le RCDs e la Fact Table sono correlate tra loro mediante le correlazioni definite tra le chiavi surrogate aggiunte.

Dimostrazione 2-1 Creazione di un nuovo progetto Analysis Server Creazione di un nuovo oggetto connessione (Data Source) Creazione di un nuovo oggetto Data Source Views Creazione di un nuovo oggetto Dimensione Identificazione degli attributi e definizione delle gerarchie Impostazione di proprietà per l’oggetto Dimensione fine primo giorno

Oggetto Cubo Il Cubo è sviluppato sulla base di tabelle e viste definite nell’oggetto DSV. Un Cubo è un insieme di misure, che rappresentano i fatti, e dimensioni. Un Cubo è composto da misure basate su una o più Fact Tables e dimensioni, basate su una o più Dimension Tables.

Concetto di Measures e Measures Group Una misura rappresenta una colonna che contiene i dati (solitamente numerici) quantificabili e aggregati, presenti in una tabella dei fatti. Una misura può essere calcolata sulla base di una regola di business definita utilizzando il linguaggio multidimensionale (MDX). All’interno di un cubo, le misure presenti in una tabella dei fatti sono raggruppate tra loro, formando un “gruppo di misure”. In AS 2005, lo scenario prospettato è quello di definire una singola struttura multidimensionale (Cubo) che contiene una o più misure di gruppo. I dati presenti nella tabella dei fatti, all’interno di un gruppo di misure hanno una specifica granularità definita dall’intersezione delle dimensioni.

UDM - Unified Dimensional Model UDM è un livello logico che si interpone tra l’utente finale e l’insieme delle sorgenti dati. UDM può essere definito sulla base di quattro elementi chiave: Accesso a fonti dati eterogenee Data Source e Data Source Views Caratteristiche e funzionalità di analisi aggiuntive KPI, Translation, Perspective, etc. Advanced Analytics Logica di business per analisi complesse (definizione di Calculation Script) Proactive Caching Servizio che consente di configurare l’accesso ai dati (realtime o non realtime) mantenendo un elevato livello di performance. Cubo è sinonimo di UDM

UDM - Rappresentazione Il ruolo del livello UDM è quello di fornire un ponte fra l’utente analista e le sorgenti dati. UDM è costruito su una o più sorgenti dati e l’utente finale invia richieste/interrogazioni utilizzando una varietà di strumenti Client, quali ad esempio Microsoft Excel.

Dimostrazione 2-2 Creazione di un nuovo oggetto Cubo Impostazione di proprietà per l’oggetto Cubo

Creazione di un progetto Analysis Services 2005 Sessione 3

Ambiente di lavoro Business Intelligence Development Studio (Visual Studio 2005) Definizione degli oggetti Definizione delle proprietà

Definizione oggetto Data Source Creazione oggetto di connessione ad una fonte dati. Impostazione delle proprietà di connessione (Server Name, Database Name, Security, etc.)

Definizione oggetto Data Source Views Definizione di un livello logico rappresentativo dei metadati Sorgente Dati Metadati

Data Source Views Designer Definizione di nuovi diagrammi, schemi relazionali, named query, colonne calcolate, etc.

Definizione oggetto Dimensione Wizard per la definizione di un nuovo oggetto dimensione Costruzione di un oggetto dimensione utilizzando le entità presenti all’interno di una sorgente dati Costruzione di un oggetto dimensione non utilizzando le entità presenti all’interno di una sorgente dati (modalità top-down)

Laboratorio 3-1 Mettiamo in pratica quanto sin qui analizzato: Creazione di un nuovo progetto Analysis Server Creazione di un nuovo oggetto connessione Creazione di un nuovo oggetto Data Source Views Creazione di colonne calcolate, relazioni, logical key Creazione di un nuovo oggetto Dimensione Proprietà dell’oggetto Dimensione Durata: 30 minuti

Definizione oggetto Cubo Wizard per la definizione di un nuovo oggetto cubo Identificazione Fatti e Dimensioni Identificazione Dimensione Tempo Identificazione delle Misure

Cube Wizard Designer

Relazionare Dimensioni e Misure Utilizzo del Dimension Usage Tab del frame-work Cube Designer

…Relazionare Dimensioni e Misure Selezionare il tipo di relazione da implementare

Laboratorio 3-2 Mettiamo in pratica quanto sin qui analizzato: Creazione di un nuovo oggetto Cubo Proprietà dell’oggetto Cubo Definizione delle relazioni tra Dimensioni e Misure Durata: 30 minuti fine secondo giorno

Deploy di un progetto AS Impostazione delle proprietà di configurazione del progetto AS Deploy e Processing del progetto AS

Caratteristiche di un Cubo Analysis Services 2005 Sessione 4

Business Intelligence enhancement Aggiungere “valore” alle strutture multidimensionali mediante Business Intelligence Wizard. Enhancement Tipo Applicata a Time Intelligence Cubo Account Intelligence Dimensione Dimensione o Cubo Dimension Intelligence Custom Aggregation Semiadditive Behavior Custom Member Formula Custom Sorting Dimension Writeback

Time Intelligence Consente la creazione semplificata di nuove misure calcolate basate su una dimensione tempo: Period to date Period over period Moving averages Parallel period Modelli di calcolo (template) definiti nel file TimeIntelligence.xml eventualmente modificabile in base alle proprie esigenze di calcolo. Modifica della struttura (metadati) dell’oggetto Data Source Views con l’aggiunta delle nuove colonne calcolate. Modifica della struttura dell’oggetto dimensione (Time) con l’aggiunta di nuovi attributi Modifica della struttura dell’oggetto cubo con l’aggiunta di nuovi membri calcolati nel linguaggio MDX.

KPI Nuovo pannello per la creazione di indicatori di business Possibilità di visualizzare gli indicatori creati in reports, portali e dashboard mediante utilizzo di APIs

Object Translation AS 2005 permette la rappresentazione dei nomi degli oggetti misure, gruppi di misure, dimensioni, attributi e gerarchie, KPIs, e membri calcolati in un linguaggio specifico (proprietà di identificazione del linguaggio LCID “Local Identifier”)

Perspective AS 2005 permette di definire una o più viste semplificate di un cubo in base alle specifiche di business.

Action Espressione multidimensionale (MDX) definita in AS Può essere incorporata in una applicazione client L’esecuzione viene ordinata dall’utente finale Differenti tipologie di Actions: URL Statement Dataset Drillthrough Reporting

Laboratorio 4-1 Mettiamo in pratica quanto sin qui analizzato: Creazione di una nuova Dimensione Time mediante l’utilizzo del Wizard “Add Business Intelligence” Aggiunta di KPI ad un Cubo Aggiunta di Object Translation ad un Cubo Aggiunta di Perspective ad un Cubo Durata: 30 minuti

Amministrazione di un database Analysis Services 2005 Sessione 5

Ruoli, Gruppi e Permessi AS 2005 consente la creazione di Ruoli mediante lo strumento Role Designer È consentito impostare le modalità di accesso agli oggetti AS (Fact Table e Dimension Table) È consentito impostare i permessi di elaborazione per ogni singolo oggetto AS. È consentito, all’amministratore di sistema, definire utenti e gruppi locali per il ruolo creato.

Backup e Restore In SSAS 2005 un amministratore può effettuare il backup di un database AS direttamente su file system. Il processo di backup crea un file contenente varie informazioni a seconda del tipo di struttura multidimensionale (OLAP, MOLAP o HOLAP) MOLAP – metadata, dati e aggregazioni HOLAP – metadata e aggregazioni ROLAP – metadata In SSAS 2005 un amministratore può effettuare il restore di un database AS impostando differenti opzioni: Restore di un database utilizzando il medesimo nome della base dati Sovrascrivere un database esistente Decidere se utilizzare differenti locazioni per ogni partizione che compongono la struttura miltidimensionale. Partizioni locali possono essere restorate in qualsiasi locazione appartenente all’istanza dell’Analysis Server. Partizioni remote possono essere restorate in qualsiasi locazione su qualsiasi server.

Dimostrazione 5-1 Funzionalità di amministrazione di un data base OLAP Impostazione di ruoli e permessi Backup e Restore

Processo di strutture multidimensionali Comando mediante il quale server di Analisi accede alle sorgenti dati per alimentare le strutture multidimensionali (cubi, dimensioni, modelli di mining, partizioni, etc.) Le richieste di elaborazione vengono inviate al server di Analisi mediante protocollo nativo XML for Analysis <Process> <Object>object_reference</Object> <Type>processing_type</Type> <Bindings>ool_bindings</Bindings> <DataSource>ool_ds</DataSource> <DataSourceView>ool_dsv</DataSourceView> <ErrorConfiguration>error_config</ErrorConfiguration> <WriteBackTableCreation>wb_tbl_creation</WriteBackTableCreation> </Process>

Principali Opzioni di elaborazione Processing Option Database Dimension Cube Measure Group Partition ProcessFull X ProcessClear ProcessDefault ProcessData ProcessIndexes ProcessUpdate ProcessAdd ProcessStructure

…Opzioni di elaborazione ProcessFull può essere applicato a tutti gli oggetti AS. Elimina il contenuto dell’oggetto in lavorazione e ricostruisce il tutto ProcessClear può essere applicato a tutti gli oggetti AS. Elimina il contenuto dell’oggetto in lavorazione ProcessDefault può essere applicato a tutti gli oggetti AS. Permette di completare la lavorazione di un’oggetto portandolo allo stato di Fully Processed. ProcessData può essere applicato agli oggetti OLAP (dimensioni, cubi, misure e partizioni). L’azione di lavorazione si concentra soltanto sulla ricostruzione dei dati. ProcessIndexes può essere applicato agli oggetti OLAP (dimensioni, cubi, misure e partizioni). L’azione di lavorazione si concentra soltanto sulla ricostruzione degli indici

…Opzioni di elaborazione ProcessUpdate può essere applicato soltanto all’oggetto dimensione. Il processo di lavorazione verifica eventuali cambiamenti (update, addition e deletion) registrati nella tabella di origine. ProcessAdd può essere applicato soltanto agli oggetti dimensione e partizione. Riferito alle dimensioni effettua soltanto operazioni di addition. Riferito alle partizioni, il processo di lavorazione crea un partizione temporanea, elabora la partizione e termina le operazione con una attività di merge con la partizione target. ProcessStructure può essere applicato soltanto all’oggetto cubo. Il processo di lavorazione effettua la ricostruzione della struttura dell’oggetto.

Elaborazione delle Dimensioni Logica di elaborazione

Elaborazione delle Partizioni Logica di elaborazione

Le Partizioni Una partizione è un file o un disco fisico che contiene un sottoinsieme di dati/informazioni che compongono un database Analysis Services Le partizioni si definiscono locali se sono definite, processate e salvate su un server di analisi Le partizioni si definiscono remote se sono definite su un server di analisi, ma processate e salvate su altri server Partition Wizard consente la creazione ed aggiunta di nuove partizioni ad un cubo AS. E’ possibile impostare le modalità di storage per ogni singola partizione creata

Storage Setting ROLAP HOLAP Low Latency MOLAP Medium Latency MOLAP Descrizione ROLAP Modalità Real Time update. Dati e aggregazioni sono memorizzati in schema relazionale. HOLAP Modalità “ibrida”. Dati memorizzati in schema relazionale. Aggregazioni in schema multidimensionale Low Latency MOLAP Dati e aggregazioni memorizzati in schema multidimensionale. Il server di Analisi ascolta eventuali notifiche di aggiornamento sulle informazioni per passare eventualmente sull’impostazione real-time ROLAP, mentre la struttura MOLAP vengono riprocessati in un’area temporanea (cache). È previsto un intervallo di “silenzio” di almeno 10 secondi prima dell’aggiornamento della cache. Qualora tale intervallo non sia raggiunto ne è previsto uno in sovrapposizione di 10 minuti. L’elaborazione procede automaticamente con uno stato di latenza di 30 minuti dopo le prime modifiche sui dati. Medium Latency MOLAP Come il precedente fatta eccezione per l’elaborazione automatica con uno stato di latenza di quattro ore dopo le prime modifiche sui dati. Automatic MOLAP Viene mantenuta la corrente cache MOLAP mentre ne viene generata una nuova. Il server non passa all’impostazione real-time ROLAP. È richiesto un intervallo di 10 secondi prima della generazione della nuova cache MOLAP. Sempre previsti i 10 minuti di sovrapposizione. Mentre l’elaborazione procede automaticamente con uno stato di latenza di due ore. Scheduled MOLAP Nessuna notifica di modifiche sui dati inviata al server di analisi. Il server di analisi elabora automaticamente ogni 24 ore. MOLAP Servizio di Proactive Caching non abilitato. Attività di elaborazioni manuale o schedualata.

Proactive Caching Proactive Caching è un nuovo servizio che consente di determinare ogni quanto tempo deve essere rielaborata la cache di una struttura multidimensionale. Il servizio di Proactive Caching viene impostato per ogni partizione E’ possibile impostare correttamente il servizio di Proactive Caching mediante l’apposito Wizard.

Laboratorio 5-1 Mettiamo in pratica quanto sin qui analizzato: Elaborazione e Processing di strutture multidimensionali Impostazione delle opzioni di Processing Impostazione delle modalità di Storage Gestire il servizio di Proactive Caching Durata: 30 minuti fine terzo giorno

Introduzione alla programmazione in Analysis Services 2005 Sessione 6

Linguaggi per amministrare una istanza AS Creare o modificare oggetti AS (database, cubi, dimensioni, etc.) mediante: Analysis Management Objects (AMO) XML for Analysis (XMLA) e Analysis Services Scripting Language (ASSL) Processare oggetti AS mediante: XML for Analysis (XMLA) Gestione di una istanza AS

Analysis Management Objects (AMO) AMO è una libreria di oggetti MS .NET da utilizzare all’interno di una applicazione. AMO consente la gestione di oggetti Analysis Services (database, cubi, dimensioni, modelli di mining, etc.) AMO Classes of Namespace AnalysisService Account AccountCollection AccountType … Cube CubeAttribute CubeDimension AMO namespaces Microsoft.AnalysisServices Microsoft.AnalysisServices.Hosting Microsoft.Datawarehouse.ComponentModel ……

Analysis Management Objects (AMO) Public method CanProcess Clone CopyTo … Process Method CopyTo Public Function CopyTo (_ obj As Cube _ ) As Cube AMO Classe Cube of Namespace AnalysisService Cube Microsoft.AnalysisServices.Server server = new Server(); Server.Connect("localhost");

Analysis Services Scripting Language (ASSL) ASSL è una sintassi XML utilizzata dalle applicazioni clients per comunicare con SSAS ASSL è composto da due sezioni: Data Definition Language (DDL): definizione dell’istanza di AS e dei relativi oggetti Command Language: Create, Alter, Process ovvero comandi inviati al server di analisi. <Batch Transaction="true" xmlns="http://schemas.microsoft.com/analysisservices/2003/engine"> <Process> <Object> <DatabaseID>Adventure Works DW</DatabaseID> <DimensionID>Customer</DimensionID> </Object> <Type>ProcessFull</Type> </Process> <Process> …. </Batch>

Introduzione al linguaggio MDX MDX è un linguaggio utilizzato per definire, lavorare con, e restituire dati o informazioni da oggetti multidimensionali. MDX è molto simile ad un linguaggio SQL, ma non è una estensione dello stesso. Con MDX è possibile: Creare, eliminare ed operare con oggetti multidimensionali (Data Definition Language o DDL) Restituire e gestire le informazioni risultanti da oggetti multidimensionali (Data Manipulation Language o DML) Gestire le informazioni attraverso un insieme di operatori e funzioni messe a disposizione Estendere le funzionalità tipiche mediante la definizione di User Define Functions.

Concetti chiave nel linguaggio MDX Concetti fondamentali di un modello dimensionale per MDX Hierarchies, Levels, Members and Measures Calculated Members Cells, Tuples and Sets Expressions, Statements and Scripts

Hierarchies Database relazionale definito attraverso entità logiche (tabelle) bi-dimensionali, la cui intersezione tra colonne e righe fornisce il valore del dato. All’interno di un database multidimensionale (cubi OLAP) i dati sono organizzati in gerarchie (hierarchies) e non in tabelle.

Levels, Members and Measures Ogni dimensione (Route, Source, Time e Measures) contiene dei livelli (levels). Ogni livello di una gerarchia è composto da singoli elementi, membri (members) , ovvero i dati presenti all’interno di una dimensione. Un membro può rappresentare una o più occorrenza di dati I Membri della dimensione Measures vengono chiamati measures. Es:. Time.[2nd half].[3rd quarter] Uso la proprietà member name Uso la proprietà member key Es:. Time.[2nd half].&[Q4]

Calculated Members Un membro calcolate può essere creato come una parte di una query MDX, in grado di restituire dati calcolati mediante espressioni o funzioni rese disponibili in MDX. WITH MEMBER [Measures].[PackagesForecast] AS '[Measures].[Packages] * 1.1' Il membro calcolato viene eseguito in modalità run-time mediante l’espressione di calcolo MDX definita.

Tuples Una tupla identifica una “fetta” di dati contenuti in un oggetto cubo. Una tupla è praticamente una collezione di membri di una o più dimensioni. Esempio di tupla semplice (Time.[2nd half]) Esempio di tupla composta (Time.[2nd half], Source.nonground.air)

Sets Un insieme è una collezione di 0, una o più tuple. L’insieme è comunemente usato per definire gli Assi in una query MDX. Insieme Tupla 1 { (Time.[1st half], Source.nonground.air), (Time.[2nd half], Source.nonground.sea) } Tupla 2

Query MDX Una Query MDX è una istruzione in grado di restituire un insieme di celle contenente un sotto insieme di dati presenti in una struttura multidimensionale. SELECT { [Measures].[Sales Amount], [Measures].[Tax Amount] } ON COLUMNS, [Date].[Fiscal Time].[Fiscal Year].&[2002], [Date].[Fiscal Time].[Fiscal Year].&[2003] } ON ROWS FROM [Adventure Works] WHERE ( [Sales Territory].[Southwest] )

Laboratorio 6-1 Mettiamo in pratica quanto sin qui analizzato: Scrivere Query MDX Creare nuovi membri calcolati Durata: 30 minuti fine quarto giorno

Introduzione all’utilizzo di Client OLAP Sessione 7

Strumenti Microsoft per l’Analisi multidimensionale Office OLAP Components Pivot Table Service Excel Pivot Table Office Web Component Reporting Service Reports a matrice Delivery di Reports (e-Mail;file sharing;etc.) Format Rendering Reports (PDF, Excel, Html, Xml)

Utilizzo delle Office Web Component 10.0

Collegamento alla fonte dati OLAP

Analisi mediante Pivot Table

Impiego delle OWC in un contesto applicativo

Impiego delle OWC in un contesto applicativo

Laboratorio 7-1 Mettiamo in pratica quanto sin qui analizzato: Utilizzo di Microsoft Excel per interrogare un Cubo Olap Utilizzo delle Office Web Component per interrogare un Cubo Olap Durata: 30 minuti

Presentazione di un Case Study Sessione 8 fine quinto giorno