Hinweis zum Bildmaterial: Die in diesem Artikel verwendeten Screenshots stammen von HPETM. (www.hpe.com)
Dieser Artikel geht auf die Unterschiede der Schnittstellen SATA – SAS ein und behandelt in weiterer Folge das Thema SSD. Außerdem beantwortet er die Frage, warum gerade der Einsatz von SSDs einen Performanceschub für die NTCS bedeutet.
Für die NTCS ist vor allem die IOPS-Leistung (Input/Output Operations per Second) wichtig. Wie viele Zugriffe/Operationen kann ein Medium (z. B. eine Festplatte oder SSD) pro Sekunde abarbeiten. Ein wichtiger Aspekt sollte hier nicht vernachlässigt werden. Nicht nur der Datendurchsatz (Bandbreite) ist zwangsweise entscheidend für eine gute Performance.
1. Bandbreite ist nicht Performance
MB/s und GB/s sind wichtig für:
- Backbone Netzwerke
- Data-Streaming
- Disk-to-Disk Backup
IO/s sind wichtig für:
- Transaktionsorientierte Applikationen
- Datenbanken (z. B. SQL und Oracle) → NTCS!
- Daten-Analyse
In weiterer Folge gibt es mittlerweile mehrere Schnittstellen, über die Festplatten und SSDs angeschlossen werden können. Wir konzentrieren uns hier bei den HDDs auf SATA und SAS, wobei für SSDs auch bereits die Schnittstellen NVMe (vor allem im Serverbereich) und M.2 (Consumer Bereich) zum Einsatz kommen können.
Bevor wir auf die Unterschiede eingehen, möchten wir einen Geschwindigkeitsvergleich zwischen einer HDD und SSD zeigen. Ausschlaggebend sind für den Einsatz von datenbankorientierten Anwendungen, wie die NTCS, die IOPS und Latenzzeiten der jeweiligen Medien. Hier lässt sich bereits sehr gut der Vorteil einer SSD gegenüber HDD erkennen.
Testszenario | Consumer HDD | Consumer SDD |
4k Ran. Read IOPS | ~ 184 IOPS | ~ 65.000 IOPS |
4K Ran. Write IOPS | ~ 102 IOPS | ~ 94.000 IOPS |
4K Write Latency (Avg) | ~ 4.8ms | ~ 0.45ms |
2. Mythos
| SATA | SAS |
Bandbreite | bis 6 GBit/sek | bis 12 GBit/sek |
Kapazität | bis 8 TB | bis 1,8 TB |
Umdrehungen pro Minute | bis 7.200 | bis 15.000 |
Durchschnittliche Zugriffszeit | 7,6 – 12,0 ms | 2,9 – 4,0 ms |
Duplex-Betrieb | nein | ja |
Dual Porting | nein | ja |
Für den Datenbankbetrieb ist ausschließlich die Random I/O-Leistung (Performance) von Bedeutung und diese ist bei einer einzelnen SAS-Festplatte bis zu 4 x höher als bei einer SATA-Festplatte (Zugriffszeit)! Außerdem kann eine SAS-Festplatte Schreib- und Leseoperationen parallel durchführen (Duplex-Betrieb)!
2.1. Optimierungsstrategien für das Disk Subsystem:
- SAS anstatt SATA
- RAID Controller anstatt Onboard Controller
- Effiziente RAID Varianten und „richtige“ Anzahl an Festplatten
- Richtige Strip Size verwenden (z. B.: bei RAID5 64kB anstatt 16 kB)
- Write Back Cache (BBWC/FBWC)
- Sehr gut für Random-I/O Daten
- Neutral für sequentielle Daten (gut für kurze Bursts)
- mehr Festplatten
- Festplatten mit 15k rpm
- 2,5" Platten verwenden - kleinere Platten haben kürzere Zugriffszeiten
- Solid State Drives (SSDs)
- auch als Cache-Ersatz für BBWC/FBWC
- somit viel größerer Cache-Speicher
- und viel höhere Random-Read Leistung
- Trennen von sequentiellen und Random-I/O Daten auf unterschiedliche RAID Controller und RAID Varianten
- z. B. Betriebssystem, Log-Dateien und Datenbanken auf jeweils eigene Controller und eigene RAIDs aufteilen.
3. Überblick der gängigsten RAID-Varianten
3.1. RAID 0 – Striping
Kapazität | Anzahl der Platten mal Kapazität der kleinsten Einzelplatte |
Geschwindigkeit | Sehr hoch, exzellente Schreib- und Leseperformance |
Ausfallswahrscheinlichkeit | Sehr hoch, bei Ausfall einer Platte Gesamtverlust der Daten |
Kosten | Sehr gering, kein Kapazitätsverlust |
Minimale Plattenanzahl | 2 |
Anwendung | Videoschnitt, Temporärspeicher |
3.2. RAID 1 – Mirroring
Kapazität | Halbe Anzahl der Platten mal Kapazität der kleinsten Einzelplatte |
Geschwindigkeit | Hoch, sehr gute Leseperformance, Schreibperformance wie Einzelplatte |
Ausfallswahrscheinlichkeit | Gering, eine Platte kann ohne Datenverlust ausfallen |
Kosten | Hoch, nur halbe Kapazitätsnutzung |
Minimale Plattenanzahl | 2 |
Anwendung | Betriebssystem, Datenbank, hohe I/O-Last |
3.3. RAID 10 – Striped Mirror
Kapazität | Halbe Anzahl der Platten mal Kapazität der kleinsten Einzelplatte |
Geschwindigkeit | Sehr hoch, sehr gute Leseperformance, gute Schreibperformance |
Ausfallswahrscheinlichkeit | Gering, eine Platte kann ohne Datenverlust ausfallen (Sicherheit ist 1 + x) |
Kosten | Hoch, nur halbe Kapazitätsnutzung |
Minimale Plattenanzahl | 4 |
Anwendung | Datenbanken, hohe I/O-Last |
3.4. RAID 5 – Distributed Data Guarding
Kapazität | Anzahl der Platten minus 1 Mal der Kapazität der kleinsten Einzelplatte |
Geschwindigkeit | Normal, gute Leseperformance, bescheidene Schreibperformance |
Ausfallswahrscheinlichkeit | Gering, eine Platte kann ohne Datenverlust ausfallen |
Kosten | Gering, nur eine Platte Verlust |
Minimale Plattenanzahl | 3 |
Anwendung | Fileserver, Testsystem, Archivierung, Backup-to-Disk |
3.5. RAID 50 – Striped RAID 5
Kapazität | Anzahl der Platten minus 2 Mal der Kapazität der kleinsten Einzelplatte |
Geschwindigkeit | Hoch, allerdings langsamer als RAID 10 |
Ausfallswahrscheinlichkeit | gering, eine Platte kann ohne Datenverlust ausfallen (Sicherheit ist 1 + x) |
Kosten | Normal, zwei Platten Verlust |
Minimale Plattenanzahl | 6 |
Anwendung | Fileserver, Datenbank, hohe I/O-Last |
3.6. RAID 6 – Advanced Data Guarding
Kapazität | Anzahl der Platten minus 2 Mal der Kapazität der kleinsten Einzelplatte |
Geschwindigkeit | Niedrig, Gute Leseperformance (~ Raid 5), schlechte Schreibperformance |
Ausfallswahrscheinlichkeit | Sehr gering, zwei Platten können ohne Datenverlust ausfallen |
Kosten | Normal, zwei Platten Verlust |
Minimale Plattenanzahl | 4 |
Anwendung | Fileserver, Testsystem, Archivierung, Backup-to-Disk |
4. SSD (Solid State Disks)
Seit der Marktreife von SSDs (Solid State Disk) im Consumer und Enterprise Markt möchten wir einen kurzen Blick auf unterschiedliche Bereiche dieser Technologie werfen.
Da fast alle Daten, die innerhalb der NTCS verarbeitet werden, in einer Datenbank liegen und wie weiter oben bereits erwähnt wurde, für eine Datenbank vor allem die I/O-Leistung entscheidend ist, profitiert unsere Applikation vor allem durch den Einsatz von SSDs. Was ist nun beim Einsatz von SSDs zu beachten?
4.1. Aufbau einer SSD
Eine SSD unterscheidet sich im Aufbau zu einer normalen Festplatte wie folgt:
- SSDs enthalten im Unterschied zu herkömmlichen Festplatten keine beweglichen Teile mehr. Es werden lediglich Flashspeicher eingesetzt.
- Ein Controller, der sich ebenfalls auf der SSD befindet, ist für die „Dateiverwaltung“, also die Organisation und Verwaltung der Daten, verantwortlich.
- Ein weiterer Bestandteil einer SSD ist die Schnittstelle über die die Kommunikation mit RAM, CPU usw. erfolgt. Wie bei normalen Festplatten unterscheidet man hier zwischen SATA (gängig für PC oder Laptops) und SAS (Serverbereich). Mittlerweile gibt es bereits auch die Möglichkeit PCI-E Schnittstellen (NVMe) oder M.2 (Consumer Bereich) für den Einsatz von SSDs zu nutzen.
4.2. Vorteile/Nachteile einer SSD gegenüber einer Festplatte
Vorteile
- Bessere Performance
- Sehr geringe Latenzzeiten (Zugriffszeiten)
- Energieeffizient
- Geräuschlos
Nachteile
- Höherer Preis bei großen Kapazitäten und Enterprise SSDs
- Geringere Lebensdauer
5. Consumer SSDs vs. Enterprise SSDs
Wie bei Festplatten gibt es nun auch bei SSDs Unterschiede die sich vor allem auf die Performance, Lebensdauer, den Preis und das Einsatzgebiet auswirken.
5.1. Verwendeter Speicher
Vor allem der verwendete Speicher auf den SSDs hat Einfluss auf Preis und Lebensdauer der SSD. Im Gegensatz zu Festplatten kann der Speicher von SSDs nur begrenzt oft beschrieben werden, bis die SSD nicht mehr verwendet werden kann. Im Normalbetrieb (Consumerbereich) wird zwar bereits eine Lebensdauer von Jahren erreicht, diese wird aber hauptsächlich davon beeinflusst wie stark die SSD beansprucht wird. Angegeben wird die Lebensdauer oft mit DWPD (Disk Writes per Day), oder TBW (Terrabytes Written). Oft wird beim Speicher selbst auch von Schreibzyklen gesprochen.
Grob betrachtet gibt es hier vor allem folgende Speichervarianten die auf SSDs zum Einsatz kommen und je nach Einsatzgebiet (PC, Server etc.) verwendet werden.
TLC
Einsatzbereich | Consumer, hauptsächlich PCs, Laptops, etc. |
Vorteile/Nachteile | Mittlerweile günstig, geringere Lebensdauer gegenüber eMLC und SLC, geringere Geschwindigkeit als MLC, TLC etc. |
Schreibzyklen | ~ 1000 |
MLC
Einsatzbereich | Consumer, hauptsächlich PCs, Laptops, etc. |
Vorteile/Nachteile | Mehr Schreibzyklen als TLC, oft die „Pro“ Version der Consumer SSDs |
Schreibzyklen | ~ 3000 |
eMLC
Einsatzbereich | Enterprise, Einsatz in Servern, Workstations |
Vorteile/Nachteile | Schneller Speicher, höhere Lebensdauer als MLC/TLC |
Schreibzyklen | ~ 20.000-30.000 |
SLC
Einsatzbereich | Enterprise, vorwiegender Einsatz im Serverbereich |
Vorteile/Nachteile | Sehr schneller Speicher, sehr hoher Preis |
Schreibzyklen | ~ 100.000 |
5.2. Performance
Ausschlaggebend ist natürlich die Performance der SSD gegenüber einer normalen Festplatte. Untenstehend ein kurzer Performancevergleich zwischen SSD und HDD. In diesem Fall werden zwei Consumerprodukte miteinander verglichen. Ein Blick auf die Werte gibt uns eine Vorstellung, welche Performancevorteile eine SSD bringen kann. (Da wir keine Empfehlung für Hard Disks oder SSDs abgeben möchten, geben wir keinen Hersteller an. Die Testergebnisse wurden von einer externen Seite bereitgestellt)
Testszenario | Consumer HDD | Consumer SDD |
4k Ran. Read IOPS | ~ 184 IOPS | ~ 65.000 IOPS |
4K Ran. Write IOPS | ~ 102 IOPS | ~ 94.000 IOPS |
4K Write Latency (Avg) | ~ 4.8ms | ~ 0.45ms |
Ein weiterer Test (anderes Setting) vergleicht die Performance von Hard Disks (SAS) und den Einsatz von SSDs. Im Testvergleich 14 x 10krpm SAS HDD (RAID5) vs. 6x SSD (SAS) RAID5.
Testszenario | 14x 10krpm HDD (SAS) RAID5 | 6x SSD (SAS) RAID5 |
8k Ran. Read IOPS | ~ 5.100 IOPS | ~ 118.000 IOPS |
8K Ran. Write IOPS | ~ 1.500 IOPS | ~ 31.000 IOPS |
8K Write Latency (Avg) | ~ 44,00 ms | ~ 2,06 ms |
6. Fazit
Aus den oben genannten Gründen und Ergebnissen möchten wir abschließend darauf hinweisen, dass der Einsatz von bzw. der Umstieg auf SSDs in Verbindung mit BMD NTCS, sei es nun als Einzelplatz- oder Serverinstallation, einen Performanceschub bringen kann.