Condividi tramite


Modello di oggetti AMO e concetti relativi

In questo argomento viene fornita una definizione della libreria AMO (Analysis Management Objects), ne viene illustrata la correlazione con gli altri strumenti e librerie disponibili nell'architettura di Microsoft SQL Server Analysis Services e viene fornita una spiegazione concettuale di tutti gli oggetti principali presenti in AMO.

AMO è una raccolta completa di classi di gestione per Analysis Services che può essere utilizzata a livello di programmazione nello spazio dei nomi di Microsoft.AnalysisServices in un ambiente gestito. Le classi sono incluse nel file AnalysisServices.dll, che si trova in genere nel percorso in cui vengono installati i file di SQL Server nella cartella \100\SDK\Assemblies\. Per utilizzare le classi AMO, includere un riferimento a tale assembly nei progetti.

Il modello di oggetti AMO consente di creare, modificare ed eliminare oggetti quali cubi, dimensioni, strutture di data mining e database di Analysis Services. Su tutti questi oggetti le azioni possono essere eseguite dall'applicazione in .NET Framework. È inoltre possibile elaborare e aggiornare le informazioni archiviate nei database di Analysis Services.

AMO non consente di eseguire query sui dati. Per effettuare questa operazione, utilizzare ADOMD.NET.

In questo argomento sono contenute le sezioni seguenti:

AMO nell'architettura di Analysis Services

Architettura di AMO

Utilizzo di AMO

Automazione di attività amministrative con AMO

AMO nell'architettura di Analysis Services

Per motivi strutturali, AMO è destinato alla gestione di oggetti e non all'esecuzione di query sui dati. Se l'utente deve eseguire una query sui dati di Analysis Services da un'applicazione client, quest'ultima deve utilizzare ADOMD.NET.

Architettura di AMO

AMO è una libreria completa di classi progettata per gestire un'istanza di Analysis Services da un'applicazione client in codice gestito in .NET Framework versione 2.0.

La libreria AMO è progettata come una gerarchia di classi in cui è necessario creare un'istanza di determinate classi prima di altre al fine di utilizzarle nel codice. Sono disponibili inoltre classi ausiliarie di cui può essere creata un'istanza in qualsiasi momento nel codice. Prima di utilizzare una delle classi ausiliarie, è probabile tuttavia che l'utente abbia creato un'istanza di una o più delle classi della gerarchia.

Nella figura seguente viene illustrata una vista di alto livello della gerarchia di AMO in cui sono incluse classi principali. Nella figura viene illustrata la posizione delle classi tra i relativi contenitori e peer. Un oggetto Dimension appartiene a un oggetto Database e Server e può essere creato in qualsiasi momento come un oggetto DataSource e MiningStructure. È necessario creare un'istanza di determinate classi peer prima che sia possibile utilizzarne altre. È necessario ad esempio creare un'istanza di DataSource prima di aggiungere un nuovo oggetto Dimension o MiningStructure.

Vista di alto livello di classi AMO

Un oggetto principale è una classe che rappresenta un oggetto completo come entità intera e non come parte di un altro oggetto. Gli oggetti principali includono Server, Cube, Dimension e MiningStructure, poiché da soli costituiscono entità. Un oggetto Level, tuttavia, non è un oggetto principale poiché costituisce una parte di un oggetto Dimension. Gli oggetti principali possono essere creati, eliminati, modificati oppure elaborati indipendentemente da altri oggetti. Gli oggetti secondari sono oggetti che possono essere creati solo come parte della creazione dell'oggetto principale padre e vengono in genere creati in questa fase. I valori per gli oggetti secondari devono essere definiti nel momento della creazione poiché per questo tipo di oggetti non è prevista una creazione predefinita.

Nella figura seguente vengono illustrati gli oggetti principali contenuti in un oggetto Server.

Oggetti AMO principali evidenziatiOggetti AMO principali evidenziati (2)

Nella programmazione con AMO l'associazione tra classi e classi contenute utilizza attributi del tipo di raccolta, ad esempio Server e Dimension. Per utilizzare un'istanza di una classe contenuta, è necessario innanzitutto acquisire un riferimento a un oggetto della raccolta che include o può includere la classe contenuta. Successivamente è necessario individuare nella raccolta l'oggetto specifico desiderato, quindi è possibile ottenere un riferimento all'oggetto per iniziare a utilizzarlo.

Classi AMO

AMO è una libreria di classi progettata per gestire un'istanza di Analysis Services da un'applicazione client. La libreria AMO può essere considerata come un insieme di gruppi di oggetti correlati logicamente utilizzati per eseguire un'attività. Le classi AMO possono essere suddivise in categorie nel modo riportato di seguito:

Set di classi

Scopo

Classi fondamentali AMO

Classi necessarie per utilizzare qualsiasi altro set di classi.

Classi OLAP di AMO

Classi che consentono di gestire gli oggetti OLAP in Analysis Services.

Classi di data mining AMO

Classi che consentono di gestire gli oggetti di data mining in Analysis Services.

Classi di protezione AMO

Classi che consentono di controllare l'accesso ad altri oggetti e di gestire la protezione.

Altre classi e altri metodi AMO

Classi e metodi che consentono agli amministratori OLAP o responsabili delle operazioni di data mining di completare le attività giornaliere.

Utilizzo di AMO

AMO risulta particolarmente utile per automatizzare attività ripetitive, ad esempio la creazione di nuove partizioni in un gruppo di misure in base a nuovi dati nella tabella dei fatti o la riesecuzione del training di un modello di data mining con nuovi dati. Tali attività che creano nuovi oggetti vengono eseguite in genere su base mensile, settimanale o trimestrale e il relativo nome basato sui nuovi dati può essere assegnato in modo semplice dall'applicazione.

Amministratori di Analysis Services

Gli amministratori di Analysis Services possono utilizzare AMO per automatizzare l'elaborazione di database di Analysis Services. Per la progettazione e la distribuzione di database di Analysis Services, è necessario utilizzare Business Intelligence Development Studio.

Sviluppatori

Gli sviluppatori possono utilizzare AMO per sviluppare interfacce amministrative per insiemi specificati di utenti. Tali interfacce possono limitare l'accesso agli oggetti di Analysis Services e impedire agli utenti di eseguire determinate attività. Tramite AMO è possibile creare ad esempio un'applicazione di backup che consente a un utente di visualizzare tutti gli oggetti di database, selezionare uno qualsiasi dei database ed eseguirne il backup in uno dei dispositivi di un set specificato.

Gli sviluppatori possono inoltre incorporare logica di Analysis Services nelle applicazioni creando cubi, dimensioni e strutture e modelli di data mining in base all'input dell'utente oppure ad altri fattori.

Utenti OLAP esperti

Gli utenti OLAP esperti sono in genere analisti dei dati o altri utenti con esperienza nell'utilizzo dei dati che dispongono di notevoli conoscenze nell'ambito della programmazione e che desiderano migliorare l'analisi dei dati con un utilizzo più approfondito degli oggetti dati. Per utenti che devono lavorare in modalità non in linea, AMO può semplificare notevolmente la creazione automatica di cubi locali prima dell'attivazione di tale modalità.

Utenti esperti di operazioni di data mining

Per gli utenti esperti in operazioni di data mining, AMO risulta estremamente utile se sono presenti set di modelli di grandi dimensioni di cui è necessario rieeseguire periodicamente il training.

Automazione di attività amministrative con AMO

La maggior parte delle attività ripetitive vengono progettate, distribuite e gestite meglio se per lo sviluppo viene utilizzato Integration Services anziché un'applicazione in qualsiasi linguaggio selezionato dall'utente. Per attività ripetitive che non possono essere automatizzate tramite Integration Services, è tuttavia possibile utilizzare AMO. AMO risulta utile inoltre quando si desidera sviluppare un'applicazione specializzata per Business Intelligence tramite Analysis Services.

Gestione automatica degli oggetti

AMO consente di creare, aggiornare o eliminare oggetti di Analysis Services, ad esempio Database, Dimension, Cube, oggetti MiningStructure e MiningModel relativi al data mining o Role, in base all'input utente o ai nuovi dati acquisiti. AMO rappresenta la soluzione ideale per applicazioni di installazione che devono distribuire una soluzione sviluppata da un fornitore di software indipendente a un cliente finale. L'applicazione di installazione può verificare l'esistenza di una versione precedente e può aggiornare la struttura, rimuovere gli oggetti non più utili e crearne di nuovi. Se non è presente alcuna versione precedente, l'applicazione può creare qualsiasi elemento da zero.

AMO può essere particolarmente efficace nella creazione di nuove partizioni basate su nuovi dati ed è in grado di rimuovere partizioni obsolete non più necessarie per il progetto. In una soluzione di analisi finanziaria in cui vengono utilizzati gli ultimi 36 mesi di dati, ad esempio, non appena viene ricevuto un nuovo mese di dati il mese più obsoleto potrebbe essere rimosso. Per ottimizzare le prestazioni, è possibile progettare nuove aggregazioni in base all'utilizzo e applicarle ai 12 mesi più recenti.

Elaborazione automatica di oggetti

L'utilizzo di AMO per rispondere a determinati eventi non appartenenti a dati di flusso ordinario e ad attività pianificate che utilizzano Integration Services consente di eseguire l'elaborazione degli oggetti e di ottenere una disponibilità aggiornata.

Gestione automatica della protezione

La gestione della protezione può essere automatizzata per assegnare nuovi utenti a ruoli e autorizzazioni o per rimuovere altri utenti non appena scaduto il tempo a disposizione relativo. Per semplificare la gestione per gli amministratori responsabili della protezione, è possibile creare nuove interfacce. Questa operazione può risultare più semplice rispetto all'utilizzo di Business Intelligence Development Studio.

Gestione automatica dei backup

La gestione automatica dei backup può essere realizzata tramite attività di Integration Services o la creazione di applicazioni AMO specializzate eseguite in modo automatico. Utilizzando AMO è inoltre possibile sviluppare interfacce di backup per gli operatori che ne semplificano i processi giornalieri.

Attività per cui AMO non è stato progettato

AMO non consente di eseguire query sui dati. Per eseguire query sui dati di Analysis Services, ad esempio cubi e modelli di data mining, utilizzare ADOMD.NET da un'applicazione utente. Per ulteriori informazioni, vedere ADOMD.NET.