La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Progettare sistemi SQL Server 2005 per soluzioni mission critical Silvano Coriani Developer Evangelist Microsoft.

Presentazioni simili


Presentazione sul tema: "Progettare sistemi SQL Server 2005 per soluzioni mission critical Silvano Coriani Developer Evangelist Microsoft."— Transcript della presentazione:

1

2 Progettare sistemi SQL Server 2005 per soluzioni mission critical Silvano Coriani Developer Evangelist Microsoft

3 Agenda Benefici architetturali Strategie di aggiornamento alle nuove funzionalità Partizionamento di dati e indici Disponibilità di dati e servizi Failover clustering Database mirroring Database snapshot Snapshot isolation

4 Benefici architetturali SQL Server 2005 fornisce Caratteristiche di gestione dati di tipo enterprise Tecnologie evolute (XML, Broker, ecc.) Costi di gestione minimizzati Quando le esigenze di scalabilità aumentano I sistemi crescono in scalabilità senza la necessità di una riprogettazione La scalabilità è incrementale È possibile implementare funzionalità scalabili quando necessarie

5 Evoluzioni architetturali TecnologiaEvoluzioneQuando Sicurezza Policy di sicurezza native Sicurezza su dati e metadati Principio del minor privilegio Immediata allupgrade Service Broker Implementazione di soluzioni scalabili Code e dialoghi con consistenza transazionale Aggiornamento architetturale Supporto XML Storage, schema, query, indici Dati semistrutturati e documenti Supporto nativo ai web service Aggiornamento architetturale SQLCLR Applicazioni di calcolo intensivo Estensione del Transact-SQL Aggiornamento architetturale T-SQL Funzionalità avanzate Gestione delle eccezioni Aggiornamento minimo

6 Quali vantaggi? Quanto costa utilizzare le varie tecnologie? Separazione User/Schema Separazione User/Schema Query Notification Query Notification SQLCLR SQLCLR Nuovi Data Type Nuovi Data Type T-SQL TRY/CATCH T-SQL TRY/CATCH Evoluzioni T-SQL Evoluzioni T-SQL Paginazione dei data Paginazione dei data Elaborazione di dati XML Elaborazione di dati XML Benefici immediati Interventi minimi Aggiornamento architetturale Policy di sicurezza Policy di sicurezza Sicurezza nei metadati Sicurezza nei metadati Permission granulari Permission granulari Supporto delle funzionalità avanzate dellhardware e del S.O. Supporto delle funzionalità avanzate dellhardware e del S.O. Prestazioni del motore relazionale Prestazioni del motore relazionale Service Broker Service Broker Web Service Web Service Infrastruttura per la cifratura dei dati Infrastruttura per la cifratura dei dati Contesto di esecuzione delle stored procedure Contesto di esecuzione delle stored procedure Utilizzo del data type XML Utilizzo del data type XML UDT /UD Aggregate UDT /UD Aggregate Migliorare la sicurezza e la scalabilità dallaggiornamento al design Consente di affrontare laggiornamento per gradi

7 Scalabilità attraverso lhardware Ottimizzazioni di SQL Server per sfruttare al meglio hardware e sistema operativo Conosciute come "SQLOS" Queste consentono un miglior supporto per Architetture a 64 bit Sistemi NUMA Gestione thread tipo task Affinità nella gestione della memoria Evoluzioni del sistema operativo Windows Server 2003 Supporto multi core senza costi aggiuntivi

8 Integrazione con Windows Server Adozione delle policy di sicurezza del sistema operativo anche per login SQL Aggiunta di memoria a caldo Gestione dinamica di AWE Supporto nativo 64 bit Supporto SOAP attraverso HTTP.SYS Inizializzazione istantanea dei file Cluster di SQL Server 2005 a 8 nodi * * Enterprise Edition

9 Scalabilità a livello di servizio Funzionalità disponibili in SQL Server Attività asincrone - Service Broker Per ottenere scalabilità in sistemi con forti carichi di lavoro Funzionalità garantita anche in situazioni di parziale malfunzionamento, grazie alle code di messaggi Gestione Cache Notifiche e invalidazione Web Service Supporto agli standard industriali Servizi implementabili attraverso T-SQL o SQLCLR Migliori prestazioni e deployment flessibile

10 Disponibilità di dati e servizi Cosa significa per noi? Non poter supportare lattività dei nostri utenti perchè… Il sito non è disponibile Il sistema non è disponibile Il database non è disponibile Il database è parzialmente non disponibile La tabella non è disponibile Il dato non è disponibile Disponibilità 24x7x365

11 Barriere alla disponibilità Malfunzionamenti isolati Continuare a lavorare in presenza di malfunzionamenti isolati Limitare limpatto dei malfunzionamenti Disponibilità parziale dei database Online Restore * Tecnologie abilitanti Inizializzazione istantanea dei file Come funziona? * Enterprise Edition

12 Cosa succede quando… I dischi si rompono In SQL Server 2000 Il database è marcato come suspect Gli utenti non possono connettersi al database In SQL Server 2005 Il filegroup è marcato come offline Gli utenti sono in grado di accedere ai dati non danneggiati

13 Cosa succede quando… Inizia il recovery In SQL Server 2000 Il database è in fase di recovery Gli utenti non sono in grado di accedere al database I file devono essere ricreati e inizializzati con byte a zero Il restore dei dati può procedere – il database è sempre offline In SQL Server 2005 Il Filegroup è in fase di recovery Gli utenti possono collegarsi ai dati non danneggiati I file vengono ricreati in un istante Il restore parziale può procedere – il database è online e i dati recuperati sono accessibili subito * * Enterprise Edition

14 Partizionamento logico / fisico Separazione oggetti/dati Organizzazione logica degli oggetti Oggetti posizionati in differenti filegroup Strategie di partizionamento basate sul tempo Per supportare scenari di tipo sliding window Per sfruttare al massimo la disponibilità parziale dei dati utilizzare il partizionamento fisico dei dati in tabelle e indici Partizionamento – nuova funzionalitò in SQL Server 2005 per semplificare la creazione e la gestione di basi dati di grandi dimensioni * * Enterprise Edition

15 Benefici del partizionamento Prestazioni nella gestione di sliding window Manipolazione di porzioni di dati allesterno della tabella attiva Backup parziali Backup più frequenti delle porzioni di dati attivi, meno frequenti per dati storicizzati Disponibilità parziale dei database Dati disponibili anche se un filegroup non lo è Restore parziali Durante il restore, i dati non danneggiati rimangono disponibili

16 Disponibilità parziale dei dati Aumentare la disponibilità in caso di rotture isolate I dati non danneggiati rimangono accessibili Lo stato dei file è disponibile nella vista sys.database_files Le pagine dati in errore sono scritte nella tabella sys.suspect_pages in msdb I seguenti alert sono disponibili: Notifica di file danneggiati Possibilità di mettere automaticamente offline il database, se necessario Possibilitò di automatizzare il restore, tipicamente per dati read-only

17 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 19 20 21 22 23 18 File Header extent 0 extent 1 extent 2 Anatomia di un Database Database composto da… Filegroup composto da… File composto da… Extent composto da… Page composta da dati 24 25 27 28 29 30 31 26 … extent 3 TicketSalesD B File2 File3 Log Readwrite filegroup File4 File5 File6 Readonly filegroups 2004 2003 2002 2001 Primary File1

18 Alta disponibilità dei dati Disponibilità parziale dei dati Silvano Coriani Developer Evangelist Microsoft

19 Restore online dei dati * Disponibilità migliorata durante il recovery Praticamente ogni componente del database (page, file, filegroup) può esere recuperato – ONLINE Se una pagina è danneggiata Recupero della sola pagina da un backup (del file, filegroup o intero database) disponibile Se un file è danneggiato … Se un filegroup è danneggiato … I filegroup readonly non necessitano della ri-applicazione del transaction log Gli utenti possono accedere ai dati disponibili durante il restore * Enterprise Edition

20 Inizializzazione istantanea dei file Aumentare la disponibilità riducendo I downtime SQL Server 2000 Tutti i file dati e log devono essere inizializzati Il tempo di creazione e inizializzazione dei file di grandi dimensioni ha un impatto significativo durante il restore SQL Server 2005 Solo i file di log devono essere inizializzati Il downtime è fortemente ridotto Benefici legati non solo al Restore Creazione di nuovi database Cambiamenti delle dimensioni dei file: autogrow, resize manuale

21 Alta disponibilità dei dati Restore parziale online Silvano Coriani Developer Evangelist Microsoft

22 Riassumendo: danneggiamenti isolati TecnologiaEvoluzioneQuando Disponibilità parziale del database Disponibilità dei dati I dati/partizioni non danneggiati rimangono disponibili Tempo di recovery Solo per i dati effettivamente da recuperare Immediata allupgrade Inizializzazione istantanea dei file Tempo di creazione del database Non cè linizializzazione iniziale Restore di File, Filegroup, e Database File mancanti ricreati rapidamente Autogrow e Manual Growth Operazioni più rapide Recovery Time – tempi ridotti Immediata allupgrade Restore online Disponibilità dei dati I dati/partizioni rimangono disponibili durante il restore Tempi di Recovery Solo per i dati danneggiati – online Immediata allupgrade

23 Barriere alla disponibilità Gestione della concorrenza Il Database è disponibile ma lapplicazione/utente non può svolgere le sua attività Impatto delle attività amministrative Operazioni amministrative possono richiedere lock Nuova funzionalità di rebuild online degli indici Impatto delle attività applicative Progettazione errata dellattività transazionale Diverse tipologie di workload (es. Report vs OLTP) Snapshot Isolation

24 Cosa succede quando… Dobbiamo ricostruire gli indici In SQL Server 2000 Lock esclusivo a livello di tabella Gli utenti non possono accedere ai dati In SQL Server 2005 Rebuild online tranne alcuni casi specifici Gli utenti accedono normalmente ai dati

25 Operazioni online sugli indici * Aumentare la disponibilità durante la manutenzione SQL Server 2000 Attività offline DBCC DBREINDEX CREATE with DROP_EXISTING SQL Server 2005 ALTER INDEX…REBUILD: ONLINE – dati disponibili durante il rebuild OFFLINE – simile a SQL Server 2000 Se non è possibile il rebuild online le alternative possibili necessitano di una riprogettazione dello schema * Enterprise Edition

26 Online Index Rebuild Silvano Coriani Developer Evangelist Microsoft

27 Cosa succede quando… Reader e Writer lavorano sugli stessi dati In SQL Server 2000 Viene usato il locking per garantire la consistenza transazionale Gli utenti devono attendere il rilascio del lock La concorrenza e le prestazioni sono compromesse Se viene abbassato il livelli di isolamento transazionale pregiudichiamo invece la consistenza In SQL Server 2005 Locking o Versioning sono le due alternative Usando il versioning: Readers wont block writers and writers wont block readers Miglioramento delle prestazioni là dove esiste la concorrenza La consistenza non è compromessa

28 Migliorare laccesso concorrente Read Committed Snapshot Isolation Opzione del DB: READ_COMMITTED_SNAPSHOT Usa lock per le scritture, versioning per le letture Incrementa la disponibilità dei dati riducendo i deadlock Readers wont block writers; writers wont block readers La consistenza a livello di statement è garantita via row versioning Impatto sulle applicazioni Nessun cambiamento richiesto per le applicazioni in lettura Permette la migrazione trasparente da ambienti che usano il versioning… Attenzione al tempdb…

29 Migliorare laccesso concorrente Snapshot Isolation a livello di connessione Opzione del DB: ALLOW_SNAPSHOT_ISOLATION Usa il locking di default Incrementa la disponibilità dei dati riducendo i deadlock Readers wont block writers; writers wont block readers Consistenza a livello di transazione attraverso il row versioning quando il livello di isolamento è SET TRANSACTION ISOLATION LEVEL SNAPSHOT Impatto sulle applicazioni Nessun cambiamento per applicazioni in lettura Gestione di eventuali conflitti per transazioni che eseguono modifiche sui dati Attenzione al tempdb…

30 Snapshot Isolation Silvano Coriani Developer Evangelist Microsoft

31 Barriere alla disponibilità Failure hw o sw Il database non è disponibile Il server subisce un grave failover La sede XYZ non è più raggiungibile Tecnologie di standby Failover Clustering Database Mirroring Replica Log Shipping Tecnologie abilitanti Fast Recovery

32 Failover Clustering Novità in SQL Server 2005 Failover più rapidi con il Fast Recovery Supporto fino a 8-nodi con la Enterprise Edition Supporto fino a 2-nodi con la Standard Edition Supporto ai mounted volume per una definizione più granulare del sottosistema I/O – aiuta in scenari di server consolidation Supporto dinamico ad AWE Setup unattended Tutti i servizi di SQL Server cluster-aware Database Engine, SQL Server Agent, Full-Text Search Analysis Services – istanze multiple

33 Redo Fast Recovery * Riduzione dei downtime Ne beneficiano molti servizi La fase di Recovery garantisce la consistenza in fase di startup, restore, failover.. Due fasi di Recovery: REDO: riapplica le transazioni committed UNDO: roll back delle transazioni fallite In SQL Server 2005 i dati disponibili dopo il REDO SQL Server 2005 SQL Server 2000 ONLINE Undo ONLINE * Enterprise Edition

34 Database Mirroring Ridondanza a livello di Database Tecnologia per lalta disponibilità Rilasciata per testing e prototipazione con SQL Server 2005 RTM Certificato per luso in produzione dalla prima metà del 2006 Supporta tre configurazioni: High Availability High Protection High Performance

35 Database Mirroring Overview sulla tecnologia Il database Principal gestisce lattività degli utenti Il database Mirror riceve le modifiche attraverso un canale TCP sicuro e dedicato Il server di Mirror non richiede una licenza in caso serva solo a questo scopo Server Witness opzionale Meccanismo leggero per la definizione di un quorum Qualsiasi edizione di SQL Server (Express? )

36 Commit Scrittura nel Log Trasmessa al Mirror Scrittura nel Log Acknowledge Commit nel Log Redo costante nel Mirror Acknowledge Database Mirroring Mirroring sincrono Log DB Log

37 Database Mirroring Opzioni di configurazione Il database Mirror disponibile in alcuni secondi Normalmente offline ma disponibile attraverso Database Snapshot Nessuna individuazione guasti Nessuna individuazione guasti Failover manuale Failover manuale Mirroring sincrono Mirroring sincrono No Witness No Witness Overhead come il precedente Overhead come il precedente High Availability High ProtectionHigh Performance Individuazione guasti Individuazione guasti Failover automatico Failover automatico Mirroring sincrono Mirroring sincrono Richiede il Witness Richiede il Witness Esiste un overhead sul Principal inversamente proporzionale alla larghezza di banda Esiste un overhead sul Principal inversamente proporzionale alla larghezza di banda Nessuna individuazione guasti Nessuna individuazione guasti Failover manuale Failover manuale Mirroring asincrono Mirroring asincrono No Witness No Witness Performance non influenzate da rete e distanza Performance non influenzate da rete e distanza

38 Database Mirroring Silvano Coriani Developer Evangelist Microsoft

39 In sintesi SQL Server 2005 offre caratteristiche immediate per lalta disponibilità Molte tecnologie sono disponibili semplicemente allupgrade! Altre necessitano di aggiornamenti architetturali o di implementazione SQL Server 2005 garantisce Database disponibili anche in presenza di danneggiamenti a filegroup, file o pagine Database disponibili in fase di recovery Inizializzazione istantanea dei file, recovery rapido Nuove alternative di replica SQL Server 2005 nasce robusto e affidabile!

40 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.


Scaricare ppt "Progettare sistemi SQL Server 2005 per soluzioni mission critical Silvano Coriani Developer Evangelist Microsoft."

Presentazioni simili


Annunci Google