Hallo Leute,
wie in meiner „über mich“ Seite angekündigt werde ich mich dem Thema In-Memory Datenbanken des SQL Server 2014 widmen.
Die beeindruckende Beschleunigung, die ein Insert Statement durch In-Memory Techniken erfahren kann, habe ich zum ersten Mal nach dem Lesen eines Artikels von Pinal Dave ausprobiert. Das ist dieser Artikel:
http://blog.sqlauthority.com/2014/09/15/sql-server-beginning-in-memory-oltp-with-sample-example/
Da wir in der Firma noch „Lichtjahre“ von dem Einsatz des SQL Server 2014 entfernt sind, bzw. für diesen bisher keine Notwendigkeit besteht, musste ich mich zuerst mit einer Testversion des SQL 2014 zufrieden geben mit der ich testen konnte.
Das reichte auf einer virtuellen Maschine aus um den Effekt zu sehen.
Von dem Erfolg angetrieben habe ich dann natürlich sofort versucht vorhandene Datenbanken auf In-Memory umzubauen 🙂 . Das Umbauen der Datenbank war dabei nicht das Problem, allerdings der Switch von einzelnen, viel genutzen Tabellen war dann nicht mehr so einfach. Da so manche Details der Tabellen nicht in Einklang mit den Vorgaben der In-Memory Tabellen stand, musste ich dort einiges ändern.
Das betraf vor allem Indizes. Bei dem Umbau half mir der Migrationsassistent des SSMS. Ich hab dann einfach alle Indizes gelöscht die nicht den Vorstellungen des Assistenten entsprachen und dann die Tabellen zu In-Memory Tabellen umgebaut.
Die erhoffte Beschleunigung beim Zugriff mit unserer Anwendung blieb allerdings aus. 🙁
Im Nachhinein erklärte sich das ganze auch:
Memory-optimierte Tabellen sind nicht unbedingt für das reine Lesen optimiert, sondern für Schreiben/Updates, so wie es in dem kleinen Beispiel von Pinal ja auch umgesetzt ist.
Da ich aber nur Tabellen umgebaut hatte, die ausschließlich lesende Zugriffe zu verarbeiten hatten, stellte sich keine Beschleunigung ein.
Meine weiteren Erfahrungen folgen im nächsten Teil…
Danke fürs Lesen,
Volker
Hallo Volker,
herzlichen Glückwunsch zum „Start in den Blogging-Alltag“. Es ist gut und wichtig, dass mehr Leute aus der Community ihre Erfahrungen mit Microsoft SQL Server beschreiben.
Bezüglich Deiner Erkenntnisse zu In Memory OLTP kann ich sagen, dass ja genau das der große Vorteil von In Memory OLTP ist. Aber schon der Name OLTP sagt ja schon deutlich aus, wo die Vorteile von In Memory OLTP liegen.
Weiter so – mir gefällt Dein Schreibstil schon jetzt!
Beste Grüße, Uwe
Hallo Uwe,
vielen Dank für den Kommentar und die Unterstützung.
Ich mache auf jeden Fall weiter. 🙂
Beste Grüße,
Volker
Hallo Volker,
auch von mir ein „herzlichen Glückwunsch“ zum Start deines Blogs.
CU
tosc
Hallo Torsten,
Danke Dir!
Viele Grüße
Volker
Pingback: In-Memory Techniken – Teil 2 – open HPI | Volker Bachmann bloggt über SQL Server