Server remoti e locali (Analysis Services - Data mining)
Il data mining richiede una connessione a un'istanza di SQL Server Analysis Services. Non è necessario creare un cubo OLAP (Online Analytical Processing) o utilizzare funzionalità OLAP per eseguire il data mining, ma il motore di Analysis Services offre numerosi vantaggi in termini di prestazioni e scalabilità e il data mining condivide molti componenti con OLAP. In questo argomento vengono fornite informazioni necessarie per la connessione a un'istanza locale o remota di SQL Server Analysis Services per creare, elaborare e distribuire modelli di data mining o eseguire query su tali modelli.
Configurazione di autorizzazioni e proprietà del server
Il data mining richiede autorizzazioni aggiuntive per un database di Analysis Services. La maggior parte delle proprietà di data mining può essere impostata nella Finestra di dialogo Proprietà computer Analysis server (Analysis Services - Dati multidimensionali). Per ulteriori informazioni sulle proprietà che è possibile configurare, vedere Proprietà di configurazione di Analysis Services.
Le proprietà del server riportate di seguito hanno particolare rilevanza per il data mining:
AllowAdHocOpenRowsetQueries Controlla l'accesso ad hoc ai provider OLE DB, caricati direttamente nello spazio di memoria del server.
Importante Per migliorare la protezione, è consigliabile impostare questa proprietà su false. Il valore predefinito è false. Anche se questa proprietà viene impostata su false, tuttavia, gli utenti possono continuare a creare query singleton e utilizzare OPENQUERY sulle origini dati consentite.
AllowedProvidersInOpenRowset Specifica il provider, se l'accesso ad hoc è abilitato. È possibile specificare più provider, immettendo un elenco delimitato da virgole di ProgID.
MaxConcurrentPredictionQueries Controlla il caricamento sul server causato dalle stime. Il valore predefinito 0 consente query illimitate per SQL Server Enterprise Edition e un massimo di cinque query simultanee per SQL Server Standard Edition. Le query oltre il limite vengono serializzate e sono soggette a timeout.
Il server offre proprietà aggiuntive che determinano gli algoritmi di data mining disponibili, incluse eventuali restrizioni sugli algoritmi, e le impostazioni predefinite per tutti i servizi di data mining. Non sono tuttavia disponibili impostazioni che consentano di controllare in modo specifico l'accesso alle stored procedure di data mining. Per ulteriori informazioni, vedere Proprietà di data mining.
È inoltre possibile impostare proprietà che consentono di ottimizzare il server e controllare la protezione per l'utilizzo client. Per ulteriori informazioni, vedere Proprietà di funzionalità.
Nota Gli algoritmi plug-in possono essere abilitati solo in SQL Server Enterprise Edition.
Accesso a livello di codice agli oggetti di data mining
Per creare una connessione a un database di Analysis Services e utilizzare oggetti di data mining, è possibile utilizzare i modelli di oggetti seguenti:
ADO Utilizza OLE DB per la connessione a un server Analysis Services. Quando si utilizza ADO, il client è limitato alle query sul set di righe dello schema e alle istruzioni DMX.
ADO.NET Interagisce meglio con i provider SQL Server rispetto ad altri provider. Utilizza adattatori dati per archiviare set di righe dinamici. Utilizza l'oggetto set di dati, ovvero una cache dei dati server archiviati come tabelle di dati che è possibile aggiornare o salvare come XML.
ADOMD.NET Provider di dati gestito ottimizzato per l'utilizzo con data mining e OLAP. ADOMD.NET è più veloce e più efficiente nell'utilizzo della memoria rispetto ad ADO.NET. ADOMD.NET consente inoltre di recuperare metadati relativi agli oggetti server. È consigliato per le applicazioni client tranne nel caso in cui .NET non sia disponibile.
ADOMD del server Modello di oggetti per l'accesso agli oggetti Analysis Services direttamente nel server. Utilizzato dalle stored procedure Analysis Services, non è destinato all'utilizzo client.
AMO Interfaccia di gestione per Analysis Services che sostituisce DSO (Decision Support Objects). Per operazioni quali l'iterazione di oggetti sono necessarie autorizzazioni di livello più alto se si utilizza AMO anziché altre interfacce. Questa condizione è dovuta al fatto che AMO accede direttamente ai metadati, mentre ADOMD.NET e le altre interfacce accedono unicamente agli schemi del database.
Esplorazione ed esecuzione di query sui modelli
È possibile eseguire qualsiasi tipo di stima utilizzando server locali o remoti, con le restrizioni seguenti:
Se si utilizza ADOMD del server, è possibile utilizzare DMX per accedere al server senza stabilire una connessione. È quindi possibile copiare i risultati direttamente in una tabella di dati. Non è tuttavia possibile utilizzare ADOMD del server con istanze remote. Le query possono essere eseguite solo sul server locale.
ADO.NET non supporta parametri denominati per il data mining. È necessario utilizzare ADOMD.NET.
Poiché ADOMD.NET consente di passare un'intera tabella da utilizzare come parametro, è possibile utilizzare dati presenti nel client o dati che non sono disponibili per il server. È inoltre possibile utilizzare tabelle con sintassi SHAPE come input della stima.
Utilizzo di stored procedure di data mining
ADOMD.NET consente di esplorare il contenuto del modello in modo gerarchico ed esegue la ricorsione nei nodi. Se viene creata una query sul contenuto del modello, tuttavia, la query restituisce l'intero modello. Per evitare la restituzione di troppe righe, è possibile scrivere stored procedure su Analysis Services utilizzando il modello di oggetti ADOMD+. Le stored procedure vengono comunemente utilizzate per incapsulare le query al fine di poterle riutilizzare.
Il client può utilizzare CALL per eseguire stored procedure, incluse quelle di sistema di Analysis Services. Se la stored procedure restituisce un set di dati, il client riceverà un set di dati o una tabella di dati con una tabella nidificata che contiene le righe. Per scrivere una stored procedure del server, è necessario fare riferimento allo spazio dei nomi Microsoft.AnalysisServices.AdomdServer. Per ulteriori informazioni sulla creazione e l'utilizzo di stored procedure, vedere Funzioni definite dall'utente e stored procedure.
Nota
Non è possibile utilizzare le stored procedure per modificare la protezione per gli oggetti server dei dati. Quando si esegue una stored procedure, viene utilizzato il contesto corrente dell'utente per determinare l'accesso a tutti gli oggetti server. Gli utenti devono pertanto disporre delle autorizzazioni appropriate su qualsiasi oggetto di database cui accedono.
Spostamento di oggetti di data mining tra database o server
È possibile spostare oggetti di data mining tra database o tra istanze di Analysis Services distribuendo una soluzione, eseguendo il backup e il ripristino di una copia del database, nonché esportando e importando strutture e modelli.
Con distribuzione si intende il processo di spostamento dei modelli dal server di prova o di sviluppo in un altro server, per la produzione, per condividere modelli o per incorporare un modello in un'applicazione. Per ulteriori informazioni sulla distribuzione di Analysis Services, vedere Distribuzione (Analysis Services - Dati multidimensionali).
Le operazioni di backup e ripristino di un intero database di Analysis Services sono il metodo ottimale se la soluzione di data mining si basa su oggetti OLAP. SQL Server 2008 offre nuove funzionalità di backup e ripristino che rendono più veloci e facili le operazioni di backup del database. Per ulteriori informazioni sul backup, vedere Gestione di backup e ripristino di un database di Analysis Services.
Le operazioni di importazione ed esportazione di modelli e strutture di data mining mediante le istruzioni DMX costituiscono il modo più semplice per spostare o eseguire il backup di singoli oggetti di data mining relazionali. Per ulteriori informazioni, vedere gli argomenti seguenti:
Se si specifica l'opzione INCLUDE DEPENDENCIES, mediante Analysis Services verrà anche esportata la definizione di eventuali viste origine dati obbligatorie e, durante l'importazione del modello o della struttura, verrà ricreata la vista origine dati nel server di destinazione. Al termine dell'importazione del modello, assicurarsi di impostare le autorizzazioni di data mining necessarie per l'oggetto.
Nota
Non è possibile esportare né importare modelli OLAP tramite DMX. Se il modello di data mining è basato su un cubo OLAP, è necessario utilizzare le funzionalità di backup e ripristino o di distribuzione di Analysis Services sull'intero database.