db-berater-server-2

SQL Server Blog

Installation | Konfiguration | Optimierung von Microsoft SQL Server

Heaps – Update Operationen

Im vorherigen Artikel habe ich mich intensiv mit INSERT-Operationen und den Besonderheiten bei Heaps beschäftigt. Da aber in Datenbanken nicht nur neue Daten geschrieben werden, müssen auch Besonderheiten bei Aktualisierungen berücksichtigt werden. Dieser Artikel...

mehr lesen

Heaps – INSERT Operationen

Nachdem sich die vorherigen Artikel mit den internen Strukturen und der Auswahl von Daten in Heaps beschäftigt haben, werden die nächsten Artikel beschreiben, wie DML-Operationen für einem Heap optimiert werden können. Standardverfahren - INSERT Wenn Datensätze...

mehr lesen

SQL Server Internals Group

Im Juli 2017 haben Frank Geisler und Torsten Straus die SIG -SQL Server Internals Group gegründet. Da nach dem siebten Online Events keine Sprecher mehr gefunden wurden, wurde die Plattform nicht mehr aktiv beworben. Auf dem YouTube Channel sind bereits vier Sessions...

mehr lesen

Heaps – NonClustered Indizes

Im vorherigen Artikel “Heaps – Lesen von Daten” wurden die Möglichkeiten beschrieben, wie die Performance für das Auswählen von Daten aus einem Heap optimiert werden kann. Dieser Artikel beschreibt die Möglichkeit, mit Hilfe von NonClustered Indexes ebenfalls effektive Abfragezeiten für Heaps zu erreichen.

mehr lesen

Heaps – Lesen von Daten

Heaps sind nicht unbedingt des Entwicklers liebstes Kind, da sie insbesondere bei der Auswahl von Daten nicht sehr performant sind (so denken die meisten!). Sicherlich ist da etwas Wahres dran – aber letztendlich entscheidet immer der Workload. In diesem Artikel beschreibe ich die Arbeitsweise eines Heaps, wenn Daten selektiert werden.

mehr lesen

Heaps – Systemstrukturen

Dieser Artikel beschäftigt sich mit den – für Heaps relevanten – internen Strukturen einer Datenbank, die wichtig sind, um Vor- und Nachteile von Heaps für die einzelnen Anwendungsszenarien zu erkennen.

mehr lesen

Heaps – Grundlagen

Heaps werden in Microsoft SQL Server gemieden, wie der Teufel das Weihwasser meidet. Das liegt unter anderem daran, dass viele Blogartikel renommierter Experten darauf hinweisen, dass eine Tabelle nach Möglichkeit einen Clustered Index verwenden soll. Dabei werden teilweise Aspekte nicht berücksichtigt, die eine solche Entscheidung in Frage stellen könnten.

mehr lesen

Datentypen bei Prädikaten beachten

Kennen Sie das Problem, dass Sie einen Index für eine Tabelle implementieren und die Abfrage dennoch nicht besser wird? Ursächlich ist in solchen Fällen häufig die Verwendung von falschen Datentypen für die Prädikate, die in einer WHERE-Klausel oder einem JOIN verwendet werden. In diesem Artikel beschreibe ich, wie wichtig es ist, dass man auf Datentypen achten sollte.

mehr lesen

Database Scoped Configuration: Parameter Sniffing

Parameter Sniffing ist sicherlich eine häufig zu beobachtende Problemstellungen, mit denen sich Programmierer als auch Datenbankadministratoren beschäftigen (müssen). Mit Einführung der datenbankspezifischen Konfigurationselemente gibt es Möglichkeiten, dieses Problem auf Datenbankebene zu “optimieren”.

mehr lesen

Database Scoped Configuration: Max Degree of Parallelism

In einem Workshop, den ich mit einem Kunden – auf Grund der aktuellen Situation – remote durchgeführt habe, kam unter anderem die Frage auf, ob Einstellungen, die explizit für Datenbanken vorgenommen werden können (Database Scoped Configuration) durch gleiche Einstellungen auf Ebene des Servers überschrieben werden. In diesem Fall ging es konkret um die Konfigurationseinstellungen für Parallelisierung. Ich habe hierzu diverse Tests durchgeführt und in diesem Artikel veröffentlicht.

mehr lesen