Condividi tramite


Requisiti di architettura client per sviluppo Analysis Services

Si applica a: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Microsoft SQL Server SQL Server Analysis Services supporta un'architettura thin-client. Il motore di calcolo SQL Server Analysis Services è interamente basato sul server, quindi tutte le query vengono risolte nel server. Per ogni query è quindi necessario un solo round trip tra il client e il server, il che significa che le prestazioni sono scalabili a mano a mano che le query diventano più complesse.

Il protocollo nativo per SQL Server Analysis Services è XML per Analysis (XML/A). SQL Server Analysis Services offre diverse interfacce di accesso ai dati per le applicazioni client, ma tutti questi componenti comunicano con un'istanza di SQL Server Analysis Services usando XML per l'analisi.

Diversi provider vengono forniti con SQL Server Analysis Services per supportare diversi linguaggi di programmazione. Un provider comunica con un server SQL Server Analysis Services inviando e ricevendo XML per l'analisi nei pacchetti SOAP su TCP/IP o su HTTP tramite Internet Information Services (IIS). Una connessione HTTP usa un oggetto COM creato da IIS, denominato pompa dati, che funge da canale per SQL Server Analysis Services dati. Il data pump non esamina in alcun modo i dati sottostanti contenuti nel flusso HTTP e le strutture dei dati sottostanti non sono disponibili al codice nella libreria di dati stessa.

Architettura client logica per l'architettura client logica

Le applicazioni client Win32 possono connettersi a un server SQL Server Analysis Services usando OLE DB per interfacce OLAP o il modello a oggetti ADO (Microsoft® ActiveX® Data Objects) per i linguaggi di automazione COMPONENT Object Model (COM), ad esempio Microsoft Visual Basic®. Le applicazioni codificate con linguaggi .NET possono connettersi a un server SQL Server Analysis Services usando ADOMD.NET.

Le applicazioni esistenti possono comunicare con SQL Server Analysis Services senza modifiche semplicemente usando uno dei provider di SQL Server Analysis Services.

Linguaggio di programmazione Interfaccia di accesso ai dati
C++ OLE DB per OLAP
Visual Basic 6 ADO MD
Linguaggi .NET ADO MD.NET
Qualsiasi linguaggio che supporta SOAP XML for Analysis

SQL Server Analysis Services ha un'architettura Web con un livello intermedio completamente scalabile per la distribuzione da organizzazioni di piccole e grandi dimensioni. SQL Server Analysis Services offre un ampio supporto intermedio per i servizi Web. Le applicazioni ASP sono supportate tramite OLE DB per OLAP e ADO MD, mentre le applicazioni ASP.NET sono supportate tramite ADOMD.NET. Il livello intermedio, illustrato nella figura seguente, è scalabile per un numero elevato di utenti simultanei.

Diagramma logico per il diagramma logico dell'architettura di livello intermedio per

Sia le applicazioni client che intermedie possono comunicare direttamente con SQL Server Analysis Services senza usare un provider. Le applicazioni client e di livello intermedio possono inviare XML for Analysis in pacchetti SOAP attraverso il protocollo TCP/IP, HTTP o HTTPS. Il client può essere codificato in qualsiasi linguaggio che supporta SOAP. In tal caso, per semplificare la gestione delle comunicazioni è consigliabile utilizzare Internet Information Services (IIS) con HTTP, ma è anche possibile ricorrere a una connessione diretta al server tramite TCP/IP. Questa è la soluzione client più sottile possibile per SQL Server Analysis Services.

Analysis Services in modalità tabulare o SharePoint

In SQL Server 2017, il server può essere avviato in modalità VertiPaq in memoria (VertiPaq) per i database tabulari e per le cartelle di lavoro di Power Pivot pubblicate in un sito di SharePoint.

Power Pivot per Excel e SQL Server Data Tools sono rispettivamente gli unici ambienti client supportati per la creazione e l'esecuzione di query su database in memoria che usano la modalità SharePoint o Tabulare. Il database Power Pivot incorporato creato usando gli strumenti Excel e PowerPivot è contenuto nella cartella di lavoro di Excel e viene salvato come parte del file di Excel .xlsx.

Tuttavia, una cartella di lavoro di Power Pivot può usare i dati archiviati in un cubo tradizionale se si importano i dati del cubo nella cartella di lavoro. È anche possibile importare dati da un'altra cartella di lavoro di Power Pivot se è stata pubblicata in un sito di SharePoint.

Nota

Quando si usa un cubo come origine dati per una cartella di lavoro di Power Pivot, i dati ottenuti dal cubo sono definiti come query MDX; tuttavia, i dati vengono importati come snapshot flat. Non è possibile operare in modo interattivo con i dati o aggiornare i dati dal cubo.

Interfacce per il client Power Pivot

Power Pivot interagisce con il motore di archiviazione del motore di analisi in memoria VertiPaq all'interno della cartella di lavoro usando le interfacce e le lingue stabilite per Analysis Services: AMO e ADOMD.NET e MDX e XMLA. All'interno del componente aggiuntivo, le misure vengono definite tramite un linguaggio delle formule simile a Excel, Data Analysis Expressions (DAX). Le espressioni DAX sono incorporate all'interno dei messaggi XMLA inviati al server in-process.

Provider

Le comunicazioni tra Power Pivot e Excel usano il provider OLEDB MSOLAP (versione 11.0). All'interno del provider MSOLAP sono contenuti quattro diversi moduli, o trasporti, che possono essere utilizzati per l'invio di messaggi tra il client e il server.

TCP / IP Usato per le normali connessioni client-server.

HTTP Usato per le connessioni HTTP tramite il servizio di pompa dati SSAS o tramite una chiamata al componente Servizio Web PowerPivot di SharePoint.

INPROC Usato per le connessioni al motore in-process.

CANALE Riservato per le comunicazioni con il servizio di sistema Power Pivot nella farm di SharePoint.

Vedere anche

Componenti del server del motore OLAP