Microsoft SQL Server 2008 Internals

18-teilige, geführte Online-Workshopserie für Administratoren, Entwickler und Systemarchitekten

Diese Serie von 18 voneinander unabhängigen Workshops richtet sich an Entwickler und Datenbankadministratoren, welche mit MS SQL Server 2005/2008 arbeiten oder arbeiten wollen. Sie interessieren sich für die inneren Mechanismen der SQL Server Database Engine und deren externe Mess- und Steuerungsfunktionen. Die Inhalte dieser Workshopserie befähigen Sie, hochperformante, skalierbare und fehlertolerante Lösungen auf MS SQL Server zu betreiben oder solche zu konzipieren und zu entwickeln.

Die wichtigsten Vorteile


Fakten und Zahlen



Workshopthemen

SQL08-Internals01
Physische Struktur einer SQL Server Datenbank
Records, Pages, Extents, Alllocation Bitmaps, IAM Chains, Allocation Units

Ziel: Aus den Disk-bezogenen Operationen von SQL Server alle performancrelevanten Effekte herleiten können, diese Effekte mit Standardwerkzeugen (PerfMon, SSMS) messen und interpretieren können

SQL08-Internals02
Physische Struktur neuer Speicherkonzepte von SQL Server 2008
Data Compression, Sparse Columns, Filestream

Ziel: Die neuen Konzepte kennen und konfigurieren sowie deren Effekte messen und steuern können (PerfMon, SSMS, OS)

SQL08-Internals03
Daten-Dateien und ihre Verwaltung
Physisches Layout, Auto-grow, Shrink, Instant Initialization, Tempdb, DB Snapshot

Ziel: Zweckmässige Dateilayouts für SQL Server anlegen, geeignete RAID-Level wählen sowie performance- und wartungseffektive Unterhaltsarbeiten konzipieren und vornehmen können

SQL08-Internals04
Log-Dateien und ihre Verwaltung
Abbildung von Operationen im Transaktionslog, Checkpoints, Recovery, Recovery Modelle, Wartungsaufgaben

Ziel: Maximale Fehlertoleranz bei minimalem Wartungsaufwand und minimaler Performanceinbusse konfigurieren und pflegen können

SQL08-Internals05
Index Internals
Aufbau und Funktionsweise aller Indexvarianten, performancerelevante Faktoren, Query Plan-Interpretation

Ziel: Aus dem Verständnis des Aufbaus und der Pflege von Indizes alle performancerelevanten Abhängigkeiten herleiten und entsprechend optimale Entscheidungen treffen können

SQL08-Internals06
Indexierungsstrategien I
Clustering Key, Entscheidungskriterien für Nonclustered Indizes, Optimierungspfade, Bookmark Lookups, Covering, Query Plan

Ziel: Mittels richtiger Wahl des Clustering Keys und der darauf aufbauenden Nonclustered Indexes ein generisch optimale Grundperformance konfigurieren können

SQL08-Internals07
Indexierungsstrategien II
Fallspezifische Indexierungsstrategien: AND, OR, Joins, Aggregate, Indexed Views

Ziel: Die optimale Indexierung für spezifische Abfragefälle finden und deren Erfolg messen können

Voraussetzung: Besuch von Workshop SQL08-Internals06, Indexierungsstrategien I

SQL08-Internals08
Index Statistiken
Aufbau und Zweck, aktive Steuerung und Messung der Statistikerstellung

Ziel: Die Effekte von Indexstatistiken verstehen und zu Gunsten spezifischer Abfragefälle und Indizes nutzen und steuern können

SQL08-Internals09
Optimierung von prozeduralem T-SQL-Code
Plan Caching, Cache Analyse, dynamischer SQL-Code, EXECUTE AS, Recompilations, Execution Plan Optimierung

Ziel: T-SQL-Code auf Performance konzipieren oder nachträglich (Black Box) optimieren können

SQL08-Internals10
Index Performance
Messen und Analysieren der Indexperformance, relevante DMV, Data Collector

Ziel: Die Effektivität einer gewählten Indexierungsstrategie im laufenden Betrieb messen und verstehen können

SQL08-Internals11
Locking und Blocking I
Ablauf von Transaktionen, Lockgranularität und –dauer, Lockeskalation, Analyse und Behebung von Blocking

Ziel: Lock-Situationen analysieren, verstehen und optimieren können

SQL08-Internals12
Locking und Blocking II
Isolationslevel, RCSI, Snapshot Isolation, Messung und Analyse

Ziel: Zweckmässige Isolationslevel wählen oder konfigurieren können, neue Snapshot-Isolationskonzepte verstehen und einsetzen können

Voraussetzung: Besuch von Workshop SQL08-Internals11, Locking und Blocking I

SQL08-Internals13
Partitionierung
Partitionierungsstrategien, Partitioned Views, Partitioned Tables, Partitioned Indexes, Sliding Window Konzept

Ziel: Die Partitionierungskonzepte von SQL Server für Wartungsminimierung und Performanceoptimierung bei grossen Datenmengen oder temporalen Dateninhalten zweckmässig einsetzen können

SQL08-Internals14
Fragmentierung
Fragmentierung von Indexstrukturen, Auswirkungen auf Datenzugriffsmethoden, Page Splits, FILLFACTOR, Messung und Optimierung von Fragmentierungssituationen

Ziel: Indexfragmentierung verstehen und effektiv verhindern können

SQL08-Internals15
Backup
Backuptypen und -szenarien, Sicherstellung der Backupintegrität, Backupkompression

Ziel: Die Interna von SQL Server-Backups verstehen und daraus effektive, fehlerfreie und fehlertolerante Datensicherungsszenarien herleiten und konfigurieren können

SQL08-Internals16
Restore
Ablauf des Restore-Prozesses, Recovery-Zustände, Restore-Typen, Point in Time Recovery

Ziel: Fehlerfreie und fehlertolerante Restore-Szenarien entwerfen und ausführen können

SQL08-Internals17
Konsistenzprüfung mit DBCC CHECK DB
IO Fehler und ihre Interpretation, Page Protection, DBCC CHECKDB, Datenkorruption beheben

Ziel: Wartungs- und Katastrophenszenarien effektiv und fehlerfrei durchspielen können, physische Konsistenz einer Datenbank messen und aufrecht erhalten können

SQL08-Internals18
Benchmarks und Baselines
Load Tests, zu messende Baseline-Faktoren, SQLIO und weitere Werkzeuge

Ziel: Effektive und zweckmässige Baselines festhalten, im laufenden Betrieb Benchmarks dagegen erheben und Alarmzeichen interpretieren können

Download Faktenblatt (PDF)