Select the search type
  • Site
  • Web
Search
  |  Login
Configurare il Data Collection

Autore: Ruggiero Lauria - Data Pubblicazione: 24 Gennaio 2012

Il tipico problema di ogni DBA è tenere sotto controllo le installazioni dei propri DB in termini di performance e carichi del server.Il processo di preparazione di collettori di dati per poter fare analisi è normalmente un task laborioso e spinoso.

Se siamo dei fortunati DBA di Database SQL Server 2008, Microsoft ha predisposto uno strumento che fa il lavoro al nostro posto: i SQL Data Collector (da non confondere con gli omonimi del performace monitor di Windows): in questo modo i Data Collector diventano un potentissimo alleato di tutti i DBA, soprattutto di quelli meno esperti.


Figura 1 – Architettura SQL Data Collector

Nonostante l'architettura sia abbastanza complessa, figura 1, l'installazione risulta essere molto semplice in quanto la configurazione e la parametrizzazione è minima, peraltro il Data Collector è stato disegnato per avere un overhead molto basso sul sistema in fase di raccolta ed analisi dei dati.

Queso sistema crea dei pacchetti SSIS (SQL Server Integration Service), lanciati tramite dei JOB e quindi dall'Agent di SQL Server, che si occupano di raccogliere e memorizzare i dati all'interno di un Data Warehouse di gestione (Managemet Data WareHouse da ora in poi MDW); infine rappresenta le informazioni raccolte tramite una serie di Report dinamici linkati tra di loro che consentono di analizzare a fondo l'attività ed i trend delle nostre istanze di SQL Server.

Installazione
All’interno della SSMS posizionarsi nella sezione di Gestione, cliccando il tasto destro su Data Collector, selezionando Configura Data Collector – Figura 2.


Figura 2 – Configurazione MDW

Procedere con la configurazione, come mostra la figura 3.


Figura 3 – Setup MWD

Scegliere nome e posizione, figura 4, (es. DataCollector).

NB: a regime il Data Warehouse può arrivare ad occupare fino a 10GB di spazio disco, quindi fate attenzione a dove lo posizionate ed alle dimensioni iniziali, incrementiali e massime.


Figura 4 – Nome Database

Andando avanti verrà chiesto di configurare i ruoli e le autorizzazioni, ma se non avete esigenze particolari si può semplicemente procedere senza selezionare nulla andando completare la prima fase di configurazione – figura 5.


Figura 5 – Conclusione Wizard

Tornare sulla configurazione del Data Collection – Figura 6, e scegliere Collezione Dati – Figura 7.


Figura 6 – Nuova configurazione


Figura 7 – Selezione Collezione Dati

Selezionare il Data Warehouse, figura 8, creato precedentemente ed una directory in cui parcheggiare i dati raccolti prima che vengano inseriti nel MDW (come vedremo più avanti i collettori delle query e di sistema raccolgono dati con un'elevata frequenza, ma il caricamento nel DB di Data Warehouse avviene in maniere differita per evitare un eccessivo overhead dovuto ad un quasi continuo inserimento di dati). Una volta inserito questo dato, concludere il wizard.


Figura 8 – Selezione DW e Directory

A questo i collettori sono finalmente attivati e pian piano il MDW comincerà a popolarsi.


Figura 9 – Attivazione Data Collection

I Data Collector
Finita la configurazione i pacchetti SSIS ed i loro Job sono pronti e funzionanti.

Come mostra la figura 9, esistono tre tipologie di collettori (4 su SQL 2008 R2):

- Utilizzo del disco
- Statistiche sulle Query
- Attività del Server

Utilizzo del Disco (Figura 10): mantiene traccia della crescita dei file di Database e di Log raccogliendo informazioni da una serie di tabelle e viste di sistema. Il campionamento avviene ogni 6 ore e viene simultaneamente caricato sul MDW (vista la bassa frequenza). I dati vengono mantenuti per 730 giorni in maniera da consentire un adeguato delineamento dei trend di crescita.


Figura 10 – Configurazione Utilizzo Disco

Statistiche sulle Query (Figura 11): raccoglie dati sugli statement SQL ed i relativi piani di esecuzione campionando alla frequenza di 10 secondi alcune viste di gestione dinamica (Dynamic Management Views, da ora in poi DMV). Il caricamento in questo caso è differito ed avviene ogni 15 minuti. I dati vengono conservati nel MDW per 14 giorni.


Figura 11 – Configurazione Statistiche Query

Attività del Server (Figura 12): fornisce una visualizzazione sull'attività, l'utilizzo di risorse e la competizione sulle risorse di SQL Server; raccoglie inoltre dati generali sulle risorse di sistema per consentire l'identificazione di eventuali colli di bottiglia esterni rispetto al motore di DB. In questo caso i dati vengono raccolti sia dalle DMV che da molti contatori di performance di SQL Sever e di sistema. Il campionamento avviene ogni 60 secondi ed i dati vengono caricati sul MDW ogni 15 minuti dove vengono conservati per 14 giorni.


Figura 12 – Configurazione Attività Server

Report
Se non si vuole aspettare le schedulazioni predefinite è possibile, in qualsiasi momento, forzare la raccolta ed il caricamento dei dati – Figura 13.


Figura 13 – Creazione Report Manuale

L'analisi dei dati raccolti mettere a dura prova anche un DBA di grande esperienza e per questo motivo che il secondo, e forse anche il più grande, vantaggio del Data Collector sono i report che mette a disposizione.


Figura 14 – Integrazione tra DC e Report

La figura 14, mostra come i report sono in rapporto uno ad uno con i collettori: i dati che vengono messi a disposizione e la loro rappresentazione grafica.

Utilizzo del Disco
Questo report, figura 15 e 16, mostra tutti i file di Dati e Log dei Database della nostra istanza in termini di grandezza e crescita. Cliccando sul nome del singolo DB possiamo vedere lo spazio libero e l'elenco di tutti gli eventi correlati alla loro crescita.


Figura 15 – Report Utilizzo Disco


Figura 16 – Report Utilizzo Spazio Disco

Statistiche sulle Query
Questo tipo di report, innanzitutto visualizza la TOP 10 delle Query relativamente al consumo di risorse (di default la CPU) in formato grafico, figura 17, ed anche in formato testuale, figura 18.


Figura 17 – Top 10 Query Formato Grafico


Figura 18 – Top 10 Query Formato Testuale

Cliccando sul singolo statement si entra in una visualizzazione di dettaglio con preziosissime informazioni inerenti le risorse utilizzate e la possibilità di entrare nel dettaglio dei waits, come mostra la figura 19.


Figura 19 – Dettaglio Query

Attività del Server
Questo report, figura 20, consente di visualizzare dei grafici relativi alle quattro risorse fondamentali in fase di tuning di SQL. Molto interessante è il fatto che consente di separare l'attività SQL Server da quella di sistema; inoltre mette il tutto in formato grafico, con la possibilità di entrare nel dettaglio tramite un semplice click sia i Wait che le attività più significative in termini di performance tuning del server SQL.


Figura 20 – Report Attività Server

Come si è visto, questo strumento coniuga due grandi qualità: semplicità di configurazione e potenza di analisi, quindi sono certo che diventerà presto parte di quasi tutte le vostre installazioni di SQL Server. Purtroppo SQL Server 2005 non supporta i data collector ma MSSQLDUDE suggerisce una tecnica per ovviare al problema. Ricordate che potete sempre esportare i grafici in formato PDF o Excel, vedi figura 21.


Figura 21 - Esportazione Dati