Block-Storage ist eine Daten-Storage-Methode, die Informationen in Einheiten fester Größe aufteilt, die als Blöcke bezeichnet werden und denen jeweils eine eindeutige Kennung zugewiesen wird. In SAN-, iSCSI- und lokalen Festplattenumgebungen wird jeder Block häufig als eigenständiges Storage-Volume verwendet.
Branchenforschung prognostiziert, dass die globale Kapazität aktiver Rechenzentren zwischen 2025 und 2035 um das Sechsfache steigen wird. Anwendungen, die von Datenbanken, virtuellen Maschinen und Transaktionsverarbeitung abhängen, erfordern Storage, der in Mikrosekunden und nicht in Millisekunden reagiert. Herkömmliche dateibasierte Ansätze bringen oft Overhead mit sich, der die Performance im großen Maßstab verlangsamt.
Block-Storage erfüllt diese Anforderungen direkt. Bei dieser Daten-Storage-Methode werden Informationen in Einheiten fester Größe unterteilt, die als Blöcke bezeichnet werden und denen jeweils eine eindeutige Kennung zugewiesen wird. Im Gegensatz zu Datei-Storage, der Daten in hierarchischen Verzeichnissen organisiert, oder Objekt-Storage, der Daten mit umfangreichen Metadaten verpackt, werden bei Block-Storage alles außer den Rohdaten und einer minimalen Adresse entfernt. Das Ergebnis ist eine schlanke, leistungsstarke Architektur, die auf Geschwindigkeit optimiert ist.
Da jeder Block als unabhängiges Storage-Volume fungiert, behandeln Betriebssysteme sie auf die gleiche Weise wie eine lokal angeschlossene Festplatte. Dadurch ist Block-Storage die Grundlage für Storage Area Networks (SANs), Cloud-Computing-Instanzen und praktisch jede Workload, bei der geringe Latenz und hoher Durchsatz nicht verhandelbar sind.
Wie funktioniert Block-Storage?
Bei Block-Storage enthält jeder Block eine bestimmte Menge an Daten, in der Regel 256 KB bis 4 MB. Jeder Block stellt einen Teil einer Datei dar, der nicht in einer bestimmten hierarchischen Reihenfolge organisiert ist. Die Daten auf Blöcken, die nebeneinander liegen, haben möglicherweise gar nichts miteinander zu tun.
Jeder Block hat eine eigene eindeutige Kennung – eine logische Blockadresse (LBA), die ihn von anderen Blöcken unterscheidet. Wenn eine Datei abgerufen werden muss, sendet eine Anwendung eine Anfrage, und das Storage-System zieht eine Nachschlagetabelle zu Rate, in der die Adresse jedes Blocks seinem physischen Speicherort zugeordnet wird. Die relevanten Blöcke befinden sich möglicherweise auf mehreren Geräten und werden in der richtigen Reihenfolge neu zusammengesetzt. Der gesamte Prozess ist für die Anwendung transparent.
Außer der Kennung enthalten die Blöcke keine Metadaten. Da es keine Metadaten gibt, ist Block-Storage sehr effizient, da fast die gesamte Storage-Kapazität des Blocks für die eigentlichen Daten verwendet wird. So wird kein Speicherplatz verschwendet. Dadurch ist Block-Storage ideal für Workloads, die eine schnelle Skalierung und eine schnelle Lese-/Schreib-Performance erfordern.
Storage-Protokolle
Block-Storage-Geräte kommunizieren über mehrere Protokolle mit Servern:
- Fibre Channel (FC): Ein dediziertes Hochgeschwindigkeits-Fabric-Protokoll, das einen Durchsatz von bis zu 128Gbpss bietet. FC bleibt der Standard für geschäftskritische SAN-Umgebungen, in denen Performance und Zuverlässigkeit im Vordergrund stehen.
- iSCSI: Verkapselt SCSI-Befehle in TCP/IP-Paketen und ermöglicht so den Block-Storage-Zugriff über Standard-Ethernet-Netzwerke. Erschwinglicher als FC, mit 10/25/100-GbE-Optionen, die die Performance-Lücke schließen.
- NVMe over Fabrics (NVMe-oF): Verlängert die Architektur von NVMe mit niedriger Latenz und hoher Warteschlangentiefe über Netzwerk-Fabrics hinweg und bietet nahezu lokale Performance für Shared Storage.
- Fibre Channel over Ethernet (FCoE): Konvergiert FC- und Ethernet-Datenverkehr in einem einzigen Netzwerk, reduziert die Komplexität der Infrastruktur und erhält gleichzeitig die Zuverlässigkeit auf FC-Ebene.
Block-Storage vs. Datei-Storage vs. Objekt-Storage