Archiv für November 2011

SQL Server 2012 – Erster Release Candidate veröffentlicht

Dienstag, 22. November 2011

Am letzten Wochenende hat Microsoft still und heimlich den ersten Release Candidate (RC0) des SQL Server 2012 veröffentlicht.

Was ist aber ein “Release Candidate” (RC)? Im Unterschied zu den bisher veröffentlichen “Community Technologies Previews” (CTP) besitzt ein Release Canidate den vollen Funktionsumfang der späteren finalen Version, d.h. alle Funktionen, die der neue SQL Server 2012 hat, sind auch in dem nun veröffentlichten RC0 enthalten.

Für die finale Version gibt es weiterhin keinen offiziellen Termin, aber höchstwahrscheinlich wird die neue Version im Frühsommer 2012 veröffentlicht.

Detailierte Informationen zur Veröffentlichung des RC0 finden Sie hier, den Download finden Sie hier.

Mit vorweihnachtlichen Grüßen, Patrick Rühmkorb

Columnstore Index – ein Renner

Mittwoch, 09. November 2011

Unsere Experimente mit dem SQL Server 2012 (Denali) lassen uns zunehmend frohlocken: Tests mit dem neuen ColumnstoreIndex prognostizieren einen ganz erheblichen Performanceboost. In einer Tabelle mit ca. 3 Millionen Datensätzen, 4 verschieden Datentypen und unterschiedlichen Anzahlen von Ausprägungen haben wir jeweils pro Ausprägungen die Anzahl der Zeilen gezählt.

Die Ergebnisse lassen sich wie folgt zusammenfassen:

  1. Die Abfragen sind deutlich schneller. Bei 3 Ausprägungen in 3 Mill. Sätzen ergab sich Faktor 25-30 (280ms zu 10ms). Im Vergleich: Ein normaler Index brachte immerhin noch einen Faktor um zwei – was aber hier kein repräsentativer Vergleich ist.
  2. Je weniger Ausprägungen, desto größer der Performancegewinn. Bei kanpp 100.000 Ausprägungen  in 3 Mill. Sätzen gab es immerhin noch ein Faktor 1,3.
  3. Alle Datentypen (varchar, nvarchar, int, datetime) wiesen vergleichbare Werte auf.

Das Geheimnis der Geschwindigkeit ist an sich trivial: Statt wie sonst üblich die Attribute einer Zeile zusammen abzulegen, werden beim Columnstore Index die Attribute der Spalten zusammen abgelegt, was die Plattenzufgriffe erheblich reduzieren kann. Zusätzlich werden die Attribute komprimiert – und diese Komprimierung gewinnt an Effizienz, je weniger distinkte Attribute komprimiert werden müssen.

Es gibt natürlich auch ein Wehrmutstropfen. Eigentlich gibt es zwei:

  1. Tabellen, auf denen ein Columnstore-Index liegt, können nicht direkt manipuliert werden (Also kein Insert, Update, …). Das führt dazu, dass die beladenden ETL-Strecken komplexer werden, weil hier entweder die Indizes jeweils neu erstellt werden müssen oder – wenn es schnell gehen soll – ein Verfahren mit zwei Tabellen und nachgelagerter Zusammenführung etabliert werden muss.
  2.  Den Columnstore-Index wird es nur mit der Enterprise-Edition geben – nicht mit der neuen BI-Edition.

Ich freue mich schon auf das Lächeln in den Gesichtern der IT-Leiter…

Herzlichst, Torsten Katthöfer

 


1 Besucher online
0 Gäste, 1 Bots, 0 Mitglied(er)
Meiste Besucher heute: 3 um/am 04:09 UTC
Diesen Monat: 5 um/am 06-05-2018 10:22 UTC
Dieses Jahr: 16 um/am 02-17-2018 03:42 UTC
Jederzeit: 40 um/am 09-24-2012 13:16 UTC