SQL SERVER 2008 RESOURCE GOVERNOR Francesco Diaz Partner Technical Consultant.

Slides:



Advertisements
Presentazioni simili
© 2010 Colt Telecom Group Limited. All rights reserved. Cloud Computing Lapproccio Colt Dionigi Faccedna.
Advertisements

1 Le s-espressioni. 2 Un nuovo esempio completo: le s-espressioni Sexpr 4 alberi binari (possibilmente vuoti) che hanno sulle foglie atomi (stringhe)
Sicurezza e concorrenza nelle basi di dati
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità D3 Sicurezza e concorrenza nelle basi di dati.
Sviluppare workflow per il nuovo 2007 Microsoft Office system e Windows SharePoint Services 3.0 Paolo Pialorsi
La sicurezza di ASP.NET e IIS
Midrange Modernization Conference 1 Scenari evolutivi per le soluzioni basate su AS/400 Walter Poloni Direttore Developer & Platform Evangelism Microsoft.
Luca Bianchi Windows Development Day Bologna 28 gennaio 2005 SQL Server Desktop Engine (MSDE) & SQL Server 2005 Express.
ASP.NET – Web Forms Davide Vernole.NET MVP. Di cosa parleremo Introduzione ad ASP.NET ASP.NET, dietro le quinte Componenti principali di una applicazione.
WSDL (Web Services Description Language) Laurea Magistrale in Informatica Reti 2 (2006/07) dott. Federico Paoloni
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
Sequential Statements. – Il VHDL simula lo svolgersi in parallelo di varie operazioni – Loggetto fondamentale e il PROCESS – Un PROCESS contiene una serie.
Un DataBase Management System (DBMS) relazionale client/server.
Microsoft Robotics Studio Marco Petrucco Microsoft Student Partner - Udine.
EJB Enterprise Java Beans B. Pernici. Approccio Java.
Model – View - Controller
HDM Information Design notation v.4. HDM Information Design.
Introduzione alle griglie computazionali - a.a LEZIONE LEZIONE N. 12 Grid Monitoring modello GMA GridICE GridICE demo Introduzione alle griglie.
Citrix Metaframe. Metaframe è la soluzione client-server prodotta dalla Citrix in grado di rendere disponibili applicazioni e desktop a qualsiasi dispositivo.
Citrix Presentation Server Client In questo Tutorial descriviamo come accedere al ENEA Grid dal proprio computer.
Fanno ormai parte della nostra vita di tutti i giorni….
Programming with JXTA Hello World Peer discovery Peer Group discovery Creating Peer group Joining a Peer Group.
2000 Prentice Hall, Inc. All rights reserved. 1 Capitolo 6: Classi e astrazione dati 1.Introduzione 2.Definizione delle strutture 3.Accedere ai membri.
FONDAMENTI DI INFORMATICA III WfMC-1. FONDAMENTI DI INFORMATICA III WfMC-2 WFMC Cose WfMC Workflow Management Coalition (WfMC), Brussels, è unorganizzazione.
Sequence. CREARE UNA SEQUENCE CREATE SEQUENCE nome [INCREMENT BY n] [START WITH n] [MAXVALUE n | NOMAXVALUE] [MINVALUE n | NOMINVALUE] [CYCLE | NOCYCLE]
FUNZIONI DI GRUPPO Le funzioni di gruppo operano su un set di record restituendo un risultato per il gruppo. AVG ([DISTINCT|ALL] n) media, ignora i valori.
Constraints.
Componenti dell’architettura Oracle
SQL Server 2012 LocalDB.
Blog: Profilo:
Attribution-NonCommercial-ShareAlike SQL Server.
IL WIKI COSE E COME FUNZIONA. COSE? Un wiki è uno spazio collettivo virtuale, una specie di sito web, i cui contenuti possono essere visti e modificati.
Microsoft Access Maschere.
Il sistema operativo Sistema operativo (in breve) –È costituito dai programmi di gestione delle operazioni più elementari del computer –… gestione di vari.
7 cose da sapere su Volume Activation con Windows 7 © 2009 Microsoft Corporation. Tutti i diritti riservati. Come professionista IT, devi sapere che l'attivazione.
JavaScript Lezione 5 Tipizzazione ed operazioni tra tipi diversi Istruzioni di input.
Filtered Index and Statistics Filtered Indexes Sergio Govoni
Primi passi con Windows: Gestione del Desktop Barra Applicazioni Menu Avvio ISTITUTO COMPRENSIVO N.7 - VIA VIVALDI - IMOLA Via Vivaldi, Imola.
1 SatWeb/Mobile Gestione delle Chiamate Intervento via Internet.
Cosa vuol dire «Embedded»? Valter
Tutorial relativo al Mio EBSCOhost. Benvenuti al tutorial dedicato a Mio EBSCOhost, verranno fornite le istruzioni per la configurazione e lutilizzo ottimizzato.
Moduli o Form I Moduli permettono all'utente di immettere informazioni...
Riva del Garda Fierecongressi Richiesta di parere per impianto destinzione automatico a pioggia. Si tratta dellampliamento di un impianto esistente, inferiore.
SQL Server 2008 R2: Licensing
Gruppo 4: Gelmi Martina, Morelato Francesca, Parisi Elisa La mia scuola ha un sito Web: modelli per la qualità dei siti (Ingegneria del Web)
KNOwledge Store. INSTALLAZIONE KNOS 1.Architettura dellapplicazione 2.Prerequisiti hardware 3.Prerequisiti software 4.Installazione ruoli e funzionalità
INTERNET Antonio Papa Classe 2^ beat I.S.I.S. G. Meroni a.s. 2007/2008.
Scheda Ente Ente Privato Ente Pubblico. 2ROL - Richieste On Line.
14° Workshop – DotNetMarche :: Castelfidardo, 16 Aprile 2010 Introduzione ai framework per IoC / DI e AOP.
Fabio Cozzolino Vito Arconzo
Attribution-NonCommercial-ShareAlike SQL Server.
Attribution-NonCommercial-ShareAlike Le novità
Attribution-NonCommercial-ShareAlike Le novità
Scoprirete che su Office non si può solo contare ma anche sviluppare.
1 Questionario di soddisfazione ATA - a. sc. 2008/09 Il questionario è stato somministrato nel mese di aprile Sono stati restituiti 29 questionari.
24 aprile 2002 Avvisi: Risultati 1 o Esonero: (entro) lunedi 27 disponibili nella pag. WEB, ma anche esposti nella bacheca fuori dal corridoio 2 o dente,
Personalizzazione e porting delle procedure esterne connesse ad Aleph Il caricamento degli utenti della circolazione da files esterni Modifiche introdotte.
Installazione di Drupal su Linux (sistemista) Installazione step-by-step e note.
IIS7 Media Services Piergiorgio Malusardi IT Pro Evangelist
Visual Studio Tools for Office: Developer Solutions Platform Fulvio Giaccari MCSD.NET / MCT Responsabile Usergroup ShareOffice Blog:
SQL Server 2005 Sicurezza Davide Mauri Factory Software
Project Review Novembrer 17th, Project Review Agenda: Project goals User stories – use cases – scenarios Project plan summary Status as of November.
SUBQUERY Chi ha un salario maggiore di quello di Abel? Occorre scomporre la query in due sotto problemi: MAIN : quali impiegati hanno un salario maggiore.
Corso di Web Services A A Domenico Rosaci Patterns di E-Business D. RosaciPatterns per l'e-Business.
Negli ultimi anni, la richiesta di poter controllare in remoto la strumentazione e cresciuta rapidamente I miglioramenti nell’hardware e nel software insieme.
Azure: Mobile Services e Notification Hub ANDREA GIUNTA.
JDBC Java DataBase Connectivity SISTEMI ITIS B. CASTELLI Anno Scolastico
Workshop sulle problematiche di calcolo e reti nell'INFN
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità D3 Sicurezza e concorrenza nelle basi di dati.
Transcript della presentazione:

SQL SERVER 2008 RESOURCE GOVERNOR Francesco Diaz Partner Technical Consultant - Microsoft

Agenda Introduzione I componenti di Sql Server Resource Governor Come funziona Sql Server Resource Governor Monitorare Sql Server Resource Governor Utilizzo di Sql Server Resource Governor DEMO 2

Introduzione Cosa è Resource Governor? – Un modo per segmentare i carichi di lavoro di SQL Server – Un modo per gestire le risorse di una istanza Sql Server 3

Introduzione Perchè siamo interessati a Resource Governor ? – Vogliamo scegliere quali devono essere I carichi di lavoro a dover ricevere una migliore qualità del servizio – Vogliamo maggiore granularità nella gestione dei carichi di lavoro – Vogliamo monitorare i carichi di lavoro del nostro RDBMS – Abbiamo la necessità di gestire in tempo reale il carico di lavoro 4

Introduzione Quando è utile ? – Quando un singolo server condivide più workload e applicazioni – Quando I carichi di lavoro sono in qualche modo uniformi e predicibili – Quando vogliamo ridurre il numero di istanze di SQL 5

Introduzione Scenari di esempio – Applicazioni che devono sempre funzionare anche quando il server è sotto stress – Limitare le query run-away – Dare precedenza ai processi di alcuni utenti/gruppi 6

I componenti di Resource Governor Componenti e terminologia – Resource Pools – Workload Groups – Sessioni utente – Funzione di classificazione delle sessioni 7

I componenti di Resource Governor Resource Pools – Un pool può essere definito come un server virtuale allinterno dellistanza di SQL – Un modo per segmentare le risorse fisiche di Sql Server (CPU e memoria) – Fino a 18 user defined pools per instanza (+ 2 system pools) internal pool è utilizzato da SQL Server – richiesto, non modificabile, può accedere se necessario a tutte le risorse default pool è il gruppo predefinito – richiesto, modificabile 8

I componenti di Resource Governor Resource Pools – Composti da : Gestione delle risorse MIN : il totale delle risorse minime di tutti I pools non può superare 100 Gestione delle risorse MAX : il totale può anche essere 100, ma il valore MAX viene riconfigurato sulla base dei MIN degli altri pool – Ogni resource group può avere + workload group, eccetto internal 9

I componenti di Resource Governor Workload Group – Rappresenta il contenitore per le sessioni simili, secondo le classificazioni applicate a ciascuna richiesta – 2 di sistema (internal, default) + un numero illimitato custom – Usato per segmentare I resource pool – Ogni workload group può esistere solo in un resource pool – Posso fare modifiche al volo ma con alcune limitazioni Riclassificazione connessioni esistenti 10

Come funziona Resource Governor Workload Groups di sistema – Default Ogni sessione che non viene assegnata ad un gruppo finisce qui (catch-all) Può essere modificato – Internal Operazioni di sistema girano in questo gruppo DAC gira in questo gruppo NON modificabile 11

I componenti di Resource Governor Sessioni – Una connessione utente a Sql Server – Verificata ogni volta che lutente si connette (anche se il connection pooling è abilitato) – Collegato ad un gruppo finchè la sessione esiste – Può esistere in un solo gruppo alla volta 12

Separa le sessioni in gruppi Una funzione di classificazione per istanza Viene salvata come UDF scalare nel MASTER Non accetta parametri Può impattare negativamente sulle prestazioni del server 13 Funzione di classificazione

Viene eseguita su ogni nuova connessione dopo i LOGON TRIGGER Viene eseguita per ogni connessione anche in presenza di connection pooling Schemabinding Salvata nel master Non è modificabile nè cancellabile quando viene usata come funzione di classificazione Restituisce un sysname con il workload group Non può restituire internal

Funzione di classificazione Possono essere usate funzioni esistenti – HOST_NAME(), APP_NAME(), SUSER_NAME(), SUSER_SNAME(), IS_SRVROLEMEMBER(), IS_MEMBER() Nuove funzioni e nuove opzioni – CONNECTIONPROPERTY (option) Opzioni: NET_TRANSPORT, PROTOCOL_TYPE, AUTH_SCHEME, LOCAL_NET_ADDRESS, LOCAL_TCP_PORT, CLIENT_NET_ADDRESS – ORIGINAL_DB_NAME() – Nuove opzioni per LOGINPROPERTY() DefaultDatabase, DefaultLanguage

Funzione di classificazione Segmentare I workload basandosi su… – Il database di destinazione – SQL\Domain user\Gruppo di AD – Applicazione client – Host – In generale tutte le informazioni sulle stringhe di connessione + informazioni di rete 16

Funzione di classificazione CREATE FUNCTION dbo.fnTest() RETURNS SYSNAME WITH SCHEMABINDING AS BEGIN SYSNAME --FD workload group name is CASE SENSITIVE IF suser_sname() = testuser' = testgroup ELSE = default END

Come funziona il Resource Governor Si applica alle risorse gestite da Sql Server – Le limitazioni sulla memoria si applicano solo alla RAM assegnata a SQL – 100% della CPU è accessibile (eccetto Processor Affinity) Percentuali di CPU… – …Sono solo una linea guida – …Vengono implementate solo quando le risorse vengono contese Percentuali di memoria… – … Sono assolute – …vengono assegnate quando il pool viene creato – …va usato con cura 18

Come funziona Resource Governor Settaggi dei Resource Pool MIN_CPU_PERCENTMAX_CPU_PERCENT MIN_MEMORY_PERCENT MAX_MEMORY_PERCENT 19 Pool name MIN % setting MAX % setting Calculated effective MAX % Calculated shared % Comment default The effective MAX value is calculated as: min(100,100-( )) = 25. The calculated shared % is Effective MAX - MIN = 25. Pool The effective MAX value is calculated as: min(100,100-(50+5)) = 45. The calculated Shared % is Effective MAX - MIN = 25. Pool The effective MAX value is calculated as: min(70,100-(20+5)) = 70. The calculated Shared % is effective MAX - MIN = 20. Pool The effective MAX value is calculated as: min(100,100-(20+50)) = 30. The calculated Shared % is effective MAX - MIN = 25.

Usare Resource Governor Posso cambiare dinamicamente I carichi di lavoro – In risposta a stimoli esterni – Basandomi su uno schedule Tracciare lutilizzo del Resource Governor – I workload groups possono essere monitorati 20

Suggerimenti Test – Verificare con cura le performance della UDF – Monitorare accuratamente in seguito ad una modifica della UDF Debug – Usare le viste e I performance counter disponibili 21

Autorizzazioni – CONTROL SERVER per la configurazione di Resource Governor – VIEW SERVER STATE per visualizzare la configurazione attiva 22

Limitazioni di Resource Governor Solo Database Engine – Analysis Services, Reporting Services, etc. non vengono gestiti Single instance – Ogni istanza viene gestita individualmente Controls per CPU e Memoria – No I/O

Domande frequenti al supporto Ho sbagliato la UDF e le sessioni vanno in timeout, come risolvo ? – DAC – non esegue la UDF – Single user (-m) – non esegue la UDF Ho fatto il restore del DB su un altra macchina ed il funzionamento non è quello che mi aspetto – Tutte le configurazioni di RG sono nel master, il restore di un db su un altro Sql con configurazioni diverse potrebbe creare anomalie Come mai il resource pool degli utenti con limite CUP MAX 10 occupa tutta la CPU ? – Il Resource Governor interviene solo in caso di risorse contese per la CPU

Monitorare Resource Governor Resource Governor – configurazione corrente e statistiche – sys.dm_resource_governor_configuration – sys.dm_resource_governor_resource_pools – sys.dm_resource_governor_workload_groups Resource Governor – valori memorizzati ma non è detto che siano ancora stati applicati – sys.resource_governor_configuration – sys.resource_governor_resource_pools – sys.resource_governor_workload_groups 25

Monitorare Resource Governor DMV con informazioni su Resource Governor – sys.dm_exec_query_memory_grants – sys.dm_exec_query_resource_semaphores – sys.dm_exec_sessions – sys.dm_exec_requests – sys.dm_exec_cached_plans – sys.dm_os_memory_brokers – sys.dm_os_wait_stats 26

Monitorare Resource Governor Resource Governor - eventi – Errori e Warnings - CPU Threshold Exceeded Event Segnala una query che ha violato REQUEST_MAX_CPU_TIME_SEC – Sessioni - PreConnect:Starting Event Segnala linizio dellesecuzione di un trigger di LOGON o della funzione di classificazione – Sessioni - PreConnect:Completed Event Segnala la fine dellesecuzione del LOGON trigger o della UDF Resource Governor - contatori – SQLServer:Resource Pool Stats – SQLServer:Workload Group Stats 27

Resource governor : comandi utili ALTER RESOURCE GOVERNOR RECONFIGURE – Viene fatto in automatico dalla GUI ALTER RESOURCE GOVERNOR DISABLE – Vengono usati i valori di default, la UDF viene ignorata ALTER RESOURCE GOVERNOR RESET STATISTICS 28

Resource Governor DEMO 29

SOMMARIO I componenti di Resource Governor Come funziona Monitoraggio Utilizzo 30

Riferimenti utili Resource Governor su technet – us/library/bb aspx us/library/bb aspx Blog team sviluppo – 14/part-1-anatomy-of-sql-server-2008-resource- governor-cpu-demo.aspx 14/part-1-anatomy-of-sql-server-2008-resource- governor-cpu-demo.aspx Sql Load Generator su Codeplex –

Grazie! BLOG :