Bachelorarbeit, 2011
123 Seiten, Note: 1,0
1. Einleitung
2. Grundlagen
2.1 Optimierungsmodell
2.2 Interne Verarbeitung von SQL-Anweisungen
2.3 Datenverwaltung durch den SQL Server
2.3.1 Datenbank
2.3.2 Lesen von Datenseiten
2.3.3 Schreiben von Datenseiten
2.4 Performanceüberwachung und Leistungsmessung
2.4.1 Ausführungszeit einer SQL-Anweisung messen
2.4.2 Statistische Größen mittels T-SQL "SET-Anweisungen" ermitteln
2.4.3 Grafische Ausführungspläne
2.4.4 Der Aktivitätsmonitor
2.4.5 Berichte
3. Systemumgebung
3.1 Arbeitsspeicher
3.2 Prozessor
3.3 Festplatten
3.3.1 Festplattenarten
3.3.2 RAID-Systeme
3.4 Netzwerk
3.5 Betriebssystem
3.6 Datenbankmanagementsystem
4. Indizes
4.1 Grundlagen von Indizes
4.2 Verwendung von Indizes
4.2.1 HEAP - Tabelle ohne gruppierten Index
4.2.2 Gruppierte Indizes (Clustered Index)
4.2.3 Nicht gruppierte Indizes (Nonclustered Index)
4.2.4 Eindeutige Indizes (Unique Indexes)
4.2.5 Gefilterte Indizes (Filtered Indexes)
4.2.6 Kombinierte Indizes (Combined Indexes)
4.2.7 Abdeckende Indizes (Covering Indexes)
4.3 Verwaltung von Indizes
4.3.1 Der Füllfaktor
4.3.2 Indizes reorganisieren
4.3.3 Indizes neu erstellen
4.3.4 Fehlende Indizes aufspüren
4.3.5 Überflüssige Indizes
5. Statistiken
5.1 Statistiken anzeigen
5.2 Statistiken anlegen
5.3 Statistiken aktualisieren
5.4 Gefilterte Statistiken
6. Partitionierung
6.1 Hardwareorientierte Partitionierung
6.2 Vertikale Partitionierung
6.3 Horizontale Partitionierung
7. Abfrageoptimierung
7.1 Aufbau einer Abfrage
7.2 Parametrisierung
7.2.1 Automatische Parametrisierung
7.2.2 Erzwungene Parametrisierung
7.2.3 Explizite Parametrisierung
7.2.4 Parametrisierung durch gespeicherte Prozeduren
7.2.5 Parametrisierungsproblematik
7.3 Hinweise
7.3.1 Abfragehinweise (Query Hints)
7.3.2 Tabellenhinweise (Table Hints)
7.3.3 Verknüpfungshinweise (JOIN Hints)
8. Fazit
Diese Arbeit zielt darauf ab, einen umfassenden Überblick über die häufigsten Ursachen für Performance-Probleme in Microsoft SQL Server 2008-Datenbanken zu geben und praxisorientierte Lösungsansätze zu deren Behebung aufzuzeigen.
2.4.2 Statistische Größen mittels T-SQL "SET-Anweisungen" ermitteln
Die Ausführungszeit einer SQL-Anweisung allein ist oftmals jedoch nicht aussagekräftig genug, sondern muss in Abhängigkeit von weiteren Parametern betrachtet werden. So spielt die Anzahl der Lesevorgänge, wie auch die Anzahl der ausgeführten Index- und Tabellenscans eine wesentliche Rolle für die Performanceoptimierung.
SET STATISTICS IO
Wenn die Option SET STATISTICS IO aktiviert ist, werden nach der Ausführung einer SQL-Anweisung im Meldungsfenster des SQL Management Studio detaillierte Informationen über die Datenträgeraktivitäten der beteiligten Tabellen ausgegeben. Die Meldung gibt unter anderem Aufschluss über:
• Scananzahl - Anzahl der ausgeführten Index- und Tabellenscans
• Logische Lesevorgänge - Anzahl der aus dem Cache gelesenen Datenseiten
• Physische Lesevorgänge - Anzahl der von der Festplatte gelesenen Datenseiten
• Read-Ahead-Lesevorgänge - Anzahl der neu im Cache hinterlegten Datenseiten
1. Einleitung: Diese Einleitung führt in die Relevanz der Datenbank-Performance-Optimierung ein und gibt einen Ausblick auf die sechs thematischen Abschnitte der Arbeit.
2. Grundlagen: Hier werden grundlegende Optimierungsstrategien sowie die interne SQL-Verarbeitung und Performance-Überwachung des SQL Servers erläutert.
3. Systemumgebung: Dieses Kapitel behandelt die technischen Voraussetzungen und Hardwarekomponenten wie Arbeitsspeicher, Prozessoren und Festplatten für einen performanten Datenbankbetrieb.
4. Indizes: Hier wird die zentrale Rolle von Indizes zur Beschleunigung von Such- und Sortiervorgängen sowie deren Verwaltung und Optimierung detailliert beschrieben.
5. Statistiken: Dieses Kapitel erläutert, wie Statistiken den Abfrageoptimierer unterstützen und welche Methoden zur manuellen oder automatischen Pflege dieser Informationen bestehen.
6. Partitionierung: Hier werden Konzepte der vertikalen und horizontalen Partitionierung vorgestellt, um große Datenmengen effizienter zu verwalten.
7. Abfrageoptimierung: Dieser Abschnitt konzentriert sich auf die Optimierung von SQL-Code aus Sicht der Anwendungsentwicklung, insbesondere durch Parametrisierung und Abfragehinweise.
8. Fazit: Das Fazit fasst zusammen, dass Performance-Optimierung ein komplexer, interaktiver Prozess ist, der eine stetige Überwachung erfordert.
Microsoft SQL Server 2008, Performance-Optimierung, Datenbank-Tuning, SQL-Abfragen, Indizierung, Statistiken, Partitionierung, Abfrageoptimierer, Ausführungsplan, Performance-Überwachung, Arbeitsspeicher, RAID-Systeme, Datenverwaltung, Query Hints, SQL-Code
Die Arbeit befasst sich mit der Performance-Optimierung von Datenbanken am Beispiel des Microsoft SQL Server 2008, wobei Ursachen für Performanceprobleme analysiert und Lösungsstrategien erarbeitet werden.
Die zentralen Themen sind Grundlagen der SQL-Verarbeitung, Hardware-Systemumgebung, Indexverwaltung, Einsatz von Statistiken, Partitionierungsstrategien sowie die Optimierung von SQL-Code.
Das primäre Ziel ist es, dem Datenbankadministrator und Entwickler ein systematisches Vorgehen zur Analyse und Verbesserung der Performance von SQL Server-Instanzen an die Hand zu geben.
Es wird eine praxisorientierte, analytische Methode verwendet, die durch Performancetests (z.B. mittels SET STATISTICS IO/TIME) und die Analyse von Ausführungsplänen unterstützt wird.
Der Hauptteil behandelt die interne Verarbeitung von Abfragen, die Konfiguration der Systemumgebung, die Struktur und Wartung von Indizes sowie Techniken zur Partitionierung und Abfrageoptimierung.
Die Arbeit lässt sich am besten durch Begriffe wie SQL Server Performance-Optimierung, Indexmanagement, Abfrageplan, Partitionierung und Statistikpflege charakterisieren.
Die Parametrisierung erhöht die Trefferquote im Plancache, was dazu führt, dass bereits erstellte Ausführungspläne wiederverwendet werden können, anstatt bei jeder Abfrage neue zu kompilieren.
Bei einem gruppierten Index sind die tatsächlichen Tabellendaten in der Blattebene des Index sortiert gespeichert, während bei einem nicht gruppierten Index die Indexstruktur separat von den eigentlichen Daten gehalten wird und auf diese verweist.
Der GRIN Verlag hat sich seit 1998 auf die Veröffentlichung akademischer eBooks und Bücher spezialisiert. Der GRIN Verlag steht damit als erstes Unternehmen für User Generated Quality Content. Die Verlagsseiten GRIN.com, Hausarbeiten.de und Diplomarbeiten24 bieten für Hochschullehrer, Absolventen und Studenten die ideale Plattform, wissenschaftliche Texte wie Hausarbeiten, Referate, Bachelorarbeiten, Masterarbeiten, Diplomarbeiten, Dissertationen und wissenschaftliche Aufsätze einem breiten Publikum zu präsentieren.
Kostenfreie Veröffentlichung: Hausarbeit, Bachelorarbeit, Diplomarbeit, Dissertation, Masterarbeit, Interpretation oder Referat jetzt veröffentlichen!

