DELL EMC bietet seit der Version OE 4.1 auf allen Unity All-Flash-Storage Systemen „Compression“ für File- und Block-Storage an.

Das „Compression“ Feature benutzt einen Software Algorithmus um die Daten zu analysieren und danach zu entscheiden ob eine Komprimierung erfolgen kann.

Das Komprimieren der Daten erfolgt „Inline“ zwischen System Cache und dem All-Flash-Pool.

Die eingehenden Front-End-Daten werden in den Cache geschrieben und die Bestätigung des Schreibens an den Host weitergegeben.

Durch die Bestätigung des Schreibens direkt nach dem entgegennehmen der Daten im Cache bleibt die gewohnt geringe Latenzzeit für den Write-I/O erhalten.

Bevor ein Schreibvorgang im System-Cache gespeichert wird, stellt das System sicher, dass Platz für die I / O-Operationen innerhalb der Zielspeicherressource verfügbar ist.

Um sicherzustellen, dass alle Daten im Cache durch eine Festplatte gesichert werden, wird ein Teil des privaten Speicherplatzes innerhalb der Speicherressource belegt und als ein möglicher Ort verwendet, um die Daten zu speichern, die im Cache gespeichert werden.

Wenn der Algorithmus bestimmt, dass nur minimale Einsparungen erzielt werden können, wird die Komprimierung übersprungen. Die Daten werden dann in den Pool geschrieben, als wäre die Komprimierung deaktiviert. Durch das Komprimieren von Daten, bevor diese auf die Festplatte geschrieben werden, werden I/O Operationen stark reduziert. Kompression hilft auch den Verschleiß der SSD zu reduzieren, indem die physikalische Datenmenge auf die Festplatte reduziert wird.

Wenn Leseoperationen empfangen werden, wird die aktuelle Position der Daten angefordert und der Kompressionszustand bestimmt. Sollten die Daten nicht komprimiert sein, tritt ein normaler Lesevorgang ein.

Sind die Daten komprimiert, müssen diese zuerst dekomprimiert werden, bevor die diese an den Host gesendet werden. Wenn sich die komprimierten Daten bereits im System Cache befinden, werden die Daten an einen temporären Speicherort dekomprimiert und danach an den Host gesendet. Der temporäre Speicherort wird freigegeben. Wenn die komprimierten Daten auf der Festplatte gespeichert sind werden diese zuerst in den System Cache gelesen, hier wieder entkomprimiert und danach an den Host gesendet. Daten werden beim Lesen nie auf der Festplatte entkomprimiert, da dies die Menge an Einsparungen an der Speicherressource verringern würde.

In aktuellen Projekten kann abtis bestätigen, dass es zu enormen Kapazitätseinsparungen für Storage Systeme bei aktivieren von Kompression kommt.

Folgendes Sizing beinhaltet eine Unity 400 / Hybrid ohne Compression.

Raw Capacity ca.100TB

Usable ca.              77TB

 

Folgende Abbildungen veranschaulichen das unterschiedliche Sizing zwischen einer Unity mit aktiver Compression und einer Unity ohne aktiver Compression

Wir gehen von einer eher schlechten Kompressionsrate von 1,6 / 1 aus.

Raw Capacity ca.54TB

Usable ca. 71TB

Redakt.: Stefan Knoll

Merken