MSSQL Dateien im RAM zwischenspeichern?
Hallo,
ich habe einen Microsoft SQL Server Express 2017 auf einem Windows Server 2012R2, welcher leider ziemliche Performance Probleme aufgrund vom überlastetem Storage (noch keine SSD's) mittlerweile hat. Das ganze ist eine VM auf VMWare.
Allgemein alle Anfragen die es erfordern etwas von der Festplatte zu lesen / schreiben haben eine Latenz von >~400ms im Taskmgr. Leider ist ein austauschen des Storages aktuell nicht auf die schnelle möglich. Was ich jedoch genug zur Verfügung habe, ist RAM.
Gibt es eine Möglichkeit die ganzen Daten vom SQL Server im RAM zwischen zu speichern, sodass zumindest bei lesenden Vorgängen dieses schneller geht.
Oder sonst irgendwie die Performance zu verbessern.
Die DB an sich ist nur insg. etwa 2gb.
Ich kenne mich mit VMWare nicht gut aus, evtl. gibt's da auch ne Möglichkeit wie eine art RAM-Disk oder so?
Habt ihr ne Idee?
Grüße
ich habe einen Microsoft SQL Server Express 2017 auf einem Windows Server 2012R2, welcher leider ziemliche Performance Probleme aufgrund vom überlastetem Storage (noch keine SSD's) mittlerweile hat. Das ganze ist eine VM auf VMWare.
Allgemein alle Anfragen die es erfordern etwas von der Festplatte zu lesen / schreiben haben eine Latenz von >~400ms im Taskmgr. Leider ist ein austauschen des Storages aktuell nicht auf die schnelle möglich. Was ich jedoch genug zur Verfügung habe, ist RAM.
Gibt es eine Möglichkeit die ganzen Daten vom SQL Server im RAM zwischen zu speichern, sodass zumindest bei lesenden Vorgängen dieses schneller geht.
Oder sonst irgendwie die Performance zu verbessern.
Die DB an sich ist nur insg. etwa 2gb.
Ich kenne mich mit VMWare nicht gut aus, evtl. gibt's da auch ne Möglichkeit wie eine art RAM-Disk oder so?
Habt ihr ne Idee?
Grüße
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 629799
Url: https://administrator.de/forum/mssql-dateien-im-ram-zwischenspeichern-629799.html
Ausgedruckt am: 23.04.2025 um 16:04 Uhr
5 Kommentare
Neuester Kommentar
der SQL Server speichert ALLE wiederkehrenden lesenden Abfragen, bis der Speicher voll ist.
Aber die Express Edition speichert maximal 1,4 GB im Datencache und danach wird der Storage bemüht.
die 2 GB sollte die Express Edition aber schaffen... aber beim Storage hat einer Murks gebaut. 400 ms, sowas hab ich schon lang nicht mehr gesehen. Vemrutlich sind auch die Datenträger-Warteschlangen voll (zu sehen im Ressource Monitor)
VMware selber hat noch einen eigenen Cache, der muß aber erst aktiviert werden und das wird dir eher nichts helfen, da der als Host cache deklarierte Teil des Arbeitsspeichers von VMware nur von Vorteil ist, wenn z.B. viele praktisch identische VMs regelmäßig gebootet werden. Beim SQL Server in einer VM hilft der Host cache nicht weiter, kümmer dich mal schnellstens um eine SSD oder besser noch NVME für den Storage.
Aber die Express Edition speichert maximal 1,4 GB im Datencache und danach wird der Storage bemüht.
die 2 GB sollte die Express Edition aber schaffen... aber beim Storage hat einer Murks gebaut. 400 ms, sowas hab ich schon lang nicht mehr gesehen. Vemrutlich sind auch die Datenträger-Warteschlangen voll (zu sehen im Ressource Monitor)
VMware selber hat noch einen eigenen Cache, der muß aber erst aktiviert werden und das wird dir eher nichts helfen, da der als Host cache deklarierte Teil des Arbeitsspeichers von VMware nur von Vorteil ist, wenn z.B. viele praktisch identische VMs regelmäßig gebootet werden. Beim SQL Server in einer VM hilft der Host cache nicht weiter, kümmer dich mal schnellstens um eine SSD oder besser noch NVME für den Storage.
Hallo,
also eine SQL Datenbank in eine Ramdisk hallte ich in den meisten Anwendungsfällen für Blödsinn.
Mssql kann zwar in den neueren Versionen im InMemory Tabellen umgehen, aber da muss das DB Layout passen, bzw. Die Programmierung.
Aber bei ner 2 GB Datenbank sollte eigentlich auch der Express mit langsamen Festplatten klar kommen.
Entweder du überforderst dein Storage so schön maßlos, und hast genug andere Probleme damit. Oder Der Datenbankaufbau ist eine Katastrophe.
also eine SQL Datenbank in eine Ramdisk hallte ich in den meisten Anwendungsfällen für Blödsinn.
Mssql kann zwar in den neueren Versionen im InMemory Tabellen umgehen, aber da muss das DB Layout passen, bzw. Die Programmierung.
Aber bei ner 2 GB Datenbank sollte eigentlich auch der Express mit langsamen Festplatten klar kommen.
Entweder du überforderst dein Storage so schön maßlos, und hast genug andere Probleme damit. Oder Der Datenbankaufbau ist eine Katastrophe.