Domanda

In breve

Sono assolutamente confuso dal gamma di servizi di SQL Server disponibili, e sto avendo difficoltà a trovare una breve primer.

Lo scoop

Sono un lungo periodo di tempo ASP.Net sviluppatore che è stato felicemente sfornare applicazioni ASP.Net per anni. Questi sono stati solitamente basati su SQL Server e una serie di tabelle personalizzate e viste.

Proprio di recente ho avuto la necessità di fare un po 'di reporting che va un po' oltre il dritto in avanti, e così ho iniziato a guardare in SQL Server Reporting Services (SSRS). In questo modo mi sento come se avessi aperto il vaso di Pandora.

C'è servizi di reporting, servizi di integrazione, servizi di analisi, Business intelligence, ecc ecc Questo ha avuto mi chiedono che cosa fanno tutti, e se potessi (o avrebbero dovuto essere) sfruttando questi strumenti per fare un po 'di sollevamento di carichi pesanti per le applicazioni .NET.

I miei sforzi di ricerca immediati su Microsoft mi hanno soffocato con il marketing impenetrabile e parlare di affari. Il mio Google cercato hanno alzato nessun panoramica completa di ciò che questi strumenti sono, o si incastrano, o anche quale strumento deve essere utilizzato quando. Uno dei maggiori problemi che sto avendo comprendere le opzioni è che tutti sembrano sorta dello stesso per me!

Quindi, tutto questo per dire, se una specie unica di me potrebbe fissare dritto e mi punto nella giusta direzione, sarei molto grato:)

È stato utile?

Soluzione

Molto panoramica di alto livello:

I servizi di base per il motore di database stesso sono costituiti dal servizio SQL Server stesso (o MSSQLSERVER) e c'è anche l'agente SQL Server e SQL Server Browser. Lo SQL Server Agent è un job scheduler per SQL Server e gestisce alcune altre attività di manutenzione e così via, mentre il servizio Browser aiuta con gli account di accesso di accettare e così via con la creazione di un modo più semplice per le applicazioni client per connettersi a SQL Server.

Tutti e tre questi servizi anche se sono 'servizi' vero, nel senso che sono demoni in esecuzione sul server. Ma di questi tre, avete solo bisogno MSSQLSERVER in esecuzione per essere in grado di lavorare con il motore di database relazionale. (Gli altri due servizi sono opzionali.)

Poi, oltre alle funzionalità di motore di database di base, ci sono un sacco di add-on o 'prodotti' supplementari e strumenti che Microsoft offre per contribuire a rendere SQL Server che molto meglio e più interessante come piattaforma / offerta. Come si è visto, queste sono in genere commercializzati come 'servizi'.

Reporting Services (o SSRS) è una grande soluzione che utilizza un database nativo di SQL Server per memorizzare informazioni sulle fonti di dati, tempi di consegna, rapporto di autorizzazioni di accesso, e così via ... per un potente motore di reporting che rende molto facile per emettere grandi rapporti da praticamente qualsiasi sorgente di dati. Basta definire le fonti per i report, filo fino set di dati e parametri, quindi utilizzare un markup XML specializzata (Report Definition Language o RDL) per definire aspetto, forma, e così via dei vostri rapporti. E, Microsoft ha creato una versione 'pizzicato' di Visual Studio per rendere la creazione / sviluppo / modifica di questi rapporti molto più facile. Quella versione di Visual Studio si chiama SQL Server Business Intelligence Design Studio (o offerte).

Allo stesso modo, Microsoft utilizza anche offerte per aiutare gli sviluppatori, amministratori di database, e gli analisti creare cubi di dati - multidimensionale 'unita' tabelle utilizzando uno schema specializzato che permette di SQL Server Analysis Services (SSAS) per sfornare attraverso praticamente qualsiasi combinazione di rapporti di dati in per fornire 'dati analitici'. Quindi ... che tu abbia un azienda che vende widget: si potrebbe definire le relazioni tra i prodotti, clienti, aree di vendita, date, e così via - e SSAS vorrà che i dati (insieme a 'cubo' definizioni che definiscono quei rapporti appositamente definiti, la loro granularità, e così via) e pre-calcolare l'esito a praticamente qualsiasi combinazione di queste 'dimensioni' o gli angoli di dati - in modo che si potrebbe dire qualcosa come: "Mostrami tutti i widget x-marca venduti da gente di vendite nel regione nord-ovest nel gennaio di quest'anno .." e si darebbe una somma di quelle parti vendute ... e anche consentono di drill-down da persona di vendite, negozio, e così via - supponendo che avete definito il cubo / relazioni come necessario.

Naturalmente, questa funzionalità è abbastanza potente, ma quasi mai vuole questi cubi che funziona contro le tabelle di produzione ... per cui le aziende di solito creano data warehouse o data mart per archiviare i propri dati analitici. Ma per copiare i dati in modo regolare base dalla produzione in questi magazzini / mart .. è necessario un qualche tipo di strumento che rende semplice per capire quali cambiamenti dovrebbero essere presi a bordo, come devono essere gestiti, e che tipo di modifiche / modifiche è necessario fare per loro di farli uscire di un ambiente di produzione altamente normalizzata in un mart magazzino / dati altamente denormalizzato (dove si sta utilizzando fiocco di neve o stelle schemi) ... E questo strumento / servizio non è altro che SQL Server Integration Services (SSIS) - che ha un ricco set di connettori, pompe, trasforma, monitor e così via per facilitare trasformazioni e la migrazione dei dati in base a una pianificazione. Che cosa è molto interessante di questo strumento / servizio però ... è che non si limita a collegare / trasformare i dati tra SQL Server e SQL Server ... ma è in grado di collegare la maggior parte fonti di dati per maggior parte delle fonti di dati - quindi è un potente strumento per la trasformazione,esportazione, l'importazione, la modifica, tweaking, e così via tutti i tuoi dati. E ... per definire i flussi di lavoro '' per i vostri progetti di integrazione / trasformazione, si utilizza anche Business Intelligence Design Studio - come con cubetti di definizione e così via per SQL Server Analysis Services.

In definitiva però, ciò che rende tutti questi così cool è che si ottiene l'accesso a:

SQL Server

SQL Server Reporting Services

SQL Server Integration Services

SQL Server Analysis Services

Con edizioni di SQL Server Standard ed Enterprise - quindi non c'è bisogno di acquistare ulteriori strumenti / soluzioni / offerta al fine di essere in grado di trarre vantaggio da queste grandi caratteristiche. (L'edizione Enterprise di SQL Server che costa circa 5 volte tanto quanto standard ... è dotato di caratteristiche molto migliori / più fresche in un certo senso ... ma è ancora ottenere una solida sottoinsieme di tutte le funzioni che utilizzano la Standard Edition.)

Altri suggerimenti

Ecco una panoramica di base dei servizi:

Analysis Services: Questa è la soluzione di data warehousing di Microsoft. Esso consente di creare cubi di dati e altre caratteristiche di magazzino. Fornisce strumenti per rendere più facile la creazione di scenari ipotetici. Questo viene eseguito sulla parte superiore di SQL Server. Data warehousing è indicato anche come applicazioni di Business Intelligence, perché i magazzini sono utilizzati per la mia e analizzare i dati.

Reporting Services: Permette di creare report di database più facilmente. Esso fornisce una funzionalità di report designer e gestione. Questo servizio si suppone per rendere più facile e più veloce per creare report ricchi. Il servizio di segnalazione funziona anche contro i servizi dati del server non SQL.

Servizi di integrazione: Fornisce funzionalità per costruire Extract, Transform, Load (ETL) funzionalità. strumenti di ETL integrano set di dati individuali e aiutare con l'estrazione, l'aggregazione, la pulizia e caricamento dei dati. Come gli altri servizi, fornisce una GUI che dovrebbe rendere questi pacchetti più facili da creare.

Non è necessario utilizzare i tre servizi in un unico gruppo ma forniscono funzionalità quando usati insieme. Ad esempio, è possibile utilizzare Analysis Services per creare cubi di dati, Integration Services per estrarre i dati da un servizio esterno ed importarlo nel cubo e Reporting Services per creare report che contengono metriche di business dai dati contenuti nel cubo.

Quanto alla questione se si dovrebbe essere / avete usato loro, come sempre, dipende. I servizi di fornire alcuni servizi di grande, ma non sempre si adattano al progetto. Ad esempio, Reporting Services fanno più facile per creare report, ma, nella mia esperienza, non è abbastanza gentile per la creazione di report per l'utente finale come è pubblicizzato. I servizi di integrazione sono grandi per fare alcuni processi ETL, ma non è flessibile come a volte è stato richiesto. Ho usato questo servizio in alcuni progetti, ma sempre finito per essere più problemi di quanto mi sarei aspettato. Ma sicuramente, dare un'occhiata a loro.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top