RAID 5 VS RAID 10 für den Datenbank Server (MSSQL)?
Hallo,
ich hätte eine Frage da mich das Thema etwas verwirrt hat. Vielleicht könnte mir jemand mit Erfahrung die Frage schnell beantworten.
Es geht darum dass ich in einem Monat einen neuen Server bekomme und unsere Haupt-Anwendungen (ERP, Produktionstool und Statistik) natürlich im Hintergrund auf einer MSSQL Datenbank liegen. Mein Ziel ist es klar, dass diese Anwendungen ohne "Spürbaren-Wartezeiten" für den Anwender zum benutzen gehen.
Kurz zu den Details bevor ich die Fragen stelle:
- Es arbeiten in Summe 70 Mitarbeiter mit der Software (ERP, Produktionstool und Statistik) - Somit können natürlich 70 gleiche Zugriffe auch möglich sein. (READ und WRITE Operationen ausbalanziert)
Mein jetziger Server hat:
-8 mal SAS HDD mit 10K RPM auf RAID 10 mit 300GB pro Festplatte
- DDR 3
Mein neuer Server wird haben:
- 5 mal SAS SSD (MX), überlegt habe ich mir hier RAID 5 mit 3TB pro Festplatte
- DDR 4
Meine Fragen: Da ein RAID 10 für die SAS SSD mir etwas zu teuer kommt würde ich gerne ein RAID 5 bevorzugen.
1.) Was für einen spürbaren Leistungsunterschied habe ich zwischen RAID 5 und RAID 10 im Datenbank bereich? vor allem was das Schreiben angeht? (Wir speichern keine Bilder oder Dateien in die Datenbanken, es ist nur Text. Habe gelesen, dass RAID 5 im SSD bereich gegenüber RAID 10 um 2-3 mal langsamer beim schreiben ist, ist dies jedoch spürbar? oder bedeutet dies nur RAID 10 braucht 0,003 Sekunden und RAID 5 nur 0,009 (Somit zwar dreimal langsamer aber nicht spürbar)
2.) Die sieht es mit den Transaktionlogs aus? Habe gelesen, dass bei einem RAID 5 SSD das schreiben der Transaktion-Logs manchmal langsamer sein können wie bei einem RAID 10 mit 15k RPM HDD? Kann das so stimmen?
3.)Ich weiß, dass bei einem SELECT statement auf den Arbeitsspeicher zugegriffen wird (Ausnahme wenn keine Indexierung vorhanden ist und ein RANDOM-READ stattfindet). Wie sieht es aber mit dem schreiben aus, (auch wenn es nur text ist) unsere Datenbank bekommt am Tag ca. 500.000 neue Einträge (in Summe) es wird doch wohl auch bei einem RAID5 mit SAS SSD die Performance um das vielfache besser sein oder (so dass die Software um ein vielfaches halt flüssiger und schneller funktioniert)?
Danke!
lg Samet
ich hätte eine Frage da mich das Thema etwas verwirrt hat. Vielleicht könnte mir jemand mit Erfahrung die Frage schnell beantworten.
Es geht darum dass ich in einem Monat einen neuen Server bekomme und unsere Haupt-Anwendungen (ERP, Produktionstool und Statistik) natürlich im Hintergrund auf einer MSSQL Datenbank liegen. Mein Ziel ist es klar, dass diese Anwendungen ohne "Spürbaren-Wartezeiten" für den Anwender zum benutzen gehen.
Kurz zu den Details bevor ich die Fragen stelle:
- Es arbeiten in Summe 70 Mitarbeiter mit der Software (ERP, Produktionstool und Statistik) - Somit können natürlich 70 gleiche Zugriffe auch möglich sein. (READ und WRITE Operationen ausbalanziert)
Mein jetziger Server hat:
-8 mal SAS HDD mit 10K RPM auf RAID 10 mit 300GB pro Festplatte
- DDR 3
Mein neuer Server wird haben:
- 5 mal SAS SSD (MX), überlegt habe ich mir hier RAID 5 mit 3TB pro Festplatte
- DDR 4
Meine Fragen: Da ein RAID 10 für die SAS SSD mir etwas zu teuer kommt würde ich gerne ein RAID 5 bevorzugen.
1.) Was für einen spürbaren Leistungsunterschied habe ich zwischen RAID 5 und RAID 10 im Datenbank bereich? vor allem was das Schreiben angeht? (Wir speichern keine Bilder oder Dateien in die Datenbanken, es ist nur Text. Habe gelesen, dass RAID 5 im SSD bereich gegenüber RAID 10 um 2-3 mal langsamer beim schreiben ist, ist dies jedoch spürbar? oder bedeutet dies nur RAID 10 braucht 0,003 Sekunden und RAID 5 nur 0,009 (Somit zwar dreimal langsamer aber nicht spürbar)
2.) Die sieht es mit den Transaktionlogs aus? Habe gelesen, dass bei einem RAID 5 SSD das schreiben der Transaktion-Logs manchmal langsamer sein können wie bei einem RAID 10 mit 15k RPM HDD? Kann das so stimmen?
3.)Ich weiß, dass bei einem SELECT statement auf den Arbeitsspeicher zugegriffen wird (Ausnahme wenn keine Indexierung vorhanden ist und ein RANDOM-READ stattfindet). Wie sieht es aber mit dem schreiben aus, (auch wenn es nur text ist) unsere Datenbank bekommt am Tag ca. 500.000 neue Einträge (in Summe) es wird doch wohl auch bei einem RAID5 mit SAS SSD die Performance um das vielfache besser sein oder (so dass die Software um ein vielfaches halt flüssiger und schneller funktioniert)?
Danke!
lg Samet
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 551256
Url: https://administrator.de/contentid/551256
Ausgedruckt am: 21.11.2024 um 23:11 Uhr
10 Kommentare
Neuester Kommentar
Ich bin in dem Bereich kein Profi, allerdings ist ein RAID10 immer schneller als ein RAID5.
Vorallem wenn es un Restores geht merkst du es so richtig, da das Paritäten zurückrechnen die CPU als auch die betroffenen Platten ordentlich in die Mangel nimmt.
Laut Gerüchten im Internet grillt man angeblich gerne durch RAID5 Restores die eine oder andere Platte.
Hab ich bisher nie mitgemacht, hatten immer RAID10.
Im Volksmund sagt man ja zu RAID5 auch „arme Leute RAID“
Vorallem wenn es un Restores geht merkst du es so richtig, da das Paritäten zurückrechnen die CPU als auch die betroffenen Platten ordentlich in die Mangel nimmt.
Laut Gerüchten im Internet grillt man angeblich gerne durch RAID5 Restores die eine oder andere Platte.
Hab ich bisher nie mitgemacht, hatten immer RAID10.
Im Volksmund sagt man ja zu RAID5 auch „arme Leute RAID“
Moin,
also generell macht man mit SSD kein RAID 5 mehr, da die Parity-Blocks die SSDs zusätzlich beanspruchen und damit schneller altern lassen. Wenn du mit dem Platz hinkommst, könntest du 4 SSDs im RAID 10 laufen lassen und 1 als Hot Spare verwenden bzw eine 6te SSD hinzunehmen und RAID 10 für DB und RAID 1 für Logs. Wovon bootet denn der Server?
lg,
Slainte
also generell macht man mit SSD kein RAID 5 mehr, da die Parity-Blocks die SSDs zusätzlich beanspruchen und damit schneller altern lassen. Wenn du mit dem Platz hinkommst, könntest du 4 SSDs im RAID 10 laufen lassen und 1 als Hot Spare verwenden bzw eine 6te SSD hinzunehmen und RAID 10 für DB und RAID 1 für Logs. Wovon bootet denn der Server?
lg,
Slainte
Manchmal frag' ich mich ob das Google von den Leute kaputt ist...
2 Sekunden fördern das hier zu Tage: https://www.thomas-krenn.com/de/wiki/SSD_RAID_Performance-Tests
2 Sekunden fördern das hier zu Tage: https://www.thomas-krenn.com/de/wiki/SSD_RAID_Performance-Tests
Es geht darum dass ich in einem Monat einen neuen Server bekomme und unsere Haupt-Anwendungen (ERP, Produktionstool und Statistik) natürlich im Hintergrund auf einer MSSQL Datenbank liegen.
Okay, also MSSQL.Mein Ziel ist es klar, dass diese Anwendungen ohne "Spürbaren-Wartezeiten" für den Anwender zum benutzen gehen.
Das heißt, dass du aktuell spürbare Wartezeiten hast?Es arbeiten in Summe 70 Mitarbeiter mit der Software (ERP, Produktionstool und Statistik) - Somit können natürlich 70 gleiche Zugriffe auch möglich sein.
Bei drei Plätzen ist die Chance sicherlich nahezu 100 %, dass alle drei am Platz sind und damit arbeiten. Bei 70 Leuten bezweifle ich das aber. Okay, gut... Gehen wir mal davon aus. Mein jetziger Server hat:
-8 mal SAS HDD mit 10K RPM auf RAID 10 mit 300GB pro Festplatte
- DDR 3
Okay...-8 mal SAS HDD mit 10K RPM auf RAID 10 mit 300GB pro Festplatte
- DDR 3
Mein neuer Server wird haben:
- 5 mal SAS SSD (MX), überlegt habe ich mir hier RAID 5 mit 3TB pro Festplatte
- DDR 4
Aha... Und wie viel Arbeitsspeicher bekommt das Gerät? Was für SSDs sind das? Wie viele IOPS?- 5 mal SAS SSD (MX), überlegt habe ich mir hier RAID 5 mit 3TB pro Festplatte
- DDR 4
Wieso ist ein RAID5 für dich das RAID der Wahl? Welchen Vorteil versprichst du dir davon? Wie groß ist die Datenbank denn aktuell?
Hi
für das reine DB Flat-File kannst du Raid 5 nehmen, besser Raid 6 (alternative sind Spare Platten), da wo die Logs liegen 10 und wo die TempDB liegt idealweise PCIe m2 Raid 10.
Und die 750k Records pro Tag ... niedlich wir machen das in unter einer Stunde. Bei der Anforderung kannst du, meiner Meinung nach, alles auf Raid5 laufen lassen, das wirst du bei der geringer IO Last nicht merken ob da ein Raid 5 oder Raid 10 drunter ist. Viel wichtiger beim SQL Server ist RAM, habe ich schon RAM gesagt? Oh ja RAM ist wichtig, erst wenn das meiste direkt ausm RAM beantwortet wird ist der SQL Server "richtig" schnell, wenn der bei jeder 2. Abfrage von der Festplatte lesen muss geht die Performance in den Keller.
Wir haben mit 512GB RAM ein Cache-Hit Rate von 99,5%, lediglich die TempDB und Log HDDs arbeiten permanent, ich kenne eure ERP jetzt nicht, wenn es aber "zufällig" Dynamics NAV ist, braucht das Array mit der TempDB die meiste Leistung.
Und SSD's müssen nicht teuer sein, konfiguriere dir den mal bei ThomasKrenn statt bei Dell oder HP, bei den SSD Preisen sind Welten dazwischen.
Ich bin nicht der SQL Spezi, aber 90% der Performance-Engpässe kommt durch ranzige SQL Abfragen oder schlecht gesetzte Indizes und nicht aufgrund mangelnder Hardware.
Wenn der Controller meint seine eigenen SQL Scripts für seine BI abzufeuern wo jeder FiAE im 1ten Lehrjahr die Hände über Kopf zusammenschlägt ... ja es gibt solche Unternehmen die das zulassen - kann es richtig langsam werden :D
Gruß
@clSchak
für das reine DB Flat-File kannst du Raid 5 nehmen, besser Raid 6 (alternative sind Spare Platten), da wo die Logs liegen 10 und wo die TempDB liegt idealweise PCIe m2 Raid 10.
Und die 750k Records pro Tag ... niedlich wir machen das in unter einer Stunde. Bei der Anforderung kannst du, meiner Meinung nach, alles auf Raid5 laufen lassen, das wirst du bei der geringer IO Last nicht merken ob da ein Raid 5 oder Raid 10 drunter ist. Viel wichtiger beim SQL Server ist RAM, habe ich schon RAM gesagt? Oh ja RAM ist wichtig, erst wenn das meiste direkt ausm RAM beantwortet wird ist der SQL Server "richtig" schnell, wenn der bei jeder 2. Abfrage von der Festplatte lesen muss geht die Performance in den Keller.
Wir haben mit 512GB RAM ein Cache-Hit Rate von 99,5%, lediglich die TempDB und Log HDDs arbeiten permanent, ich kenne eure ERP jetzt nicht, wenn es aber "zufällig" Dynamics NAV ist, braucht das Array mit der TempDB die meiste Leistung.
Und SSD's müssen nicht teuer sein, konfiguriere dir den mal bei ThomasKrenn statt bei Dell oder HP, bei den SSD Preisen sind Welten dazwischen.
Ich bin nicht der SQL Spezi, aber 90% der Performance-Engpässe kommt durch ranzige SQL Abfragen oder schlecht gesetzte Indizes und nicht aufgrund mangelnder Hardware.
Wenn der Controller meint seine eigenen SQL Scripts für seine BI abzufeuern wo jeder FiAE im 1ten Lehrjahr die Hände über Kopf zusammenschlägt ... ja es gibt solche Unternehmen die das zulassen - kann es richtig langsam werden :D
Gruß
@clSchak