Key Value SSD's

NullGradC3lsius

Cadet 1st Year
Registriert
Juli 2019
Beiträge
14
Guten Abend,

ich habe um auf dem laufenden zu bleiben einen Artikel gelesen welcher neue Key Value SSD's vorstellt. Allerdings verstehe ich nur wenig von dem was erklärt wird, kennt sich wer aus und mir/und helfen zu verstehen?

MfG


"
Bisher arbeiten SSDs üblicherweise als sogenannte Blockgeräte, das heißt, die kleinste vom System adressierbare Einheit zum Speichern von Daten ist ein zusammenhängender Block. Historisch ist dieser 512 Byte groß, bei modernen Geräten umfasst der kleinste mögliche Datenblock 4 KByte. Die Blöcke werden typischerweise einfach durchgezählt, was als Logische Blockadressierung (LBA) bezeichnet wird. Diese LBA-Adressen sind 48 Bit oder auch 64 Bit groß.
Die KV-SSDs nutzten dagegen analog zu Key-Value-Speichern in Software Schlüssel-Wert-Paare zur Adressierung der Daten im Speichermedium. Die Schlüssel zum Zugriff können dabei unterschiedlich groß sein und müssen lediglich eindeutig sein. Auch der Wert selbst kann - anders als bei den Datenblöcken - unterschiedlich groß sein und damit eventuell direkt selbst eine vollständige Datei repräsentieren."
 
Das ist quasi eine absolut ultrasimple Datenbank mit einer Tabelle mit 2 Spalten (unique Index und Value) die vom SSD Controller verwaltet wird. Der Vorteil ist dass der Zugriff auf die Werte über den Controller schneller geht als erst über die CPU auf ein Dateisystem zu mappen dass dann auf eine normale SSD zugreift. Dazu kommt noch das auch der Garbage Collector gleich auf die Key-Value Datenstruktur ausgelegt ist und sich somit die CPU nicht mehr darum kümmern muss die Datenstruktur nach einem Löschen aufzuräumen.

Ist also ein hochspezialisertes Gerät für einen bestimmten Anwendungsfall. Bin aber schon mal gespannt ob man mal Benchmarks zu sehen bekommt wie viel das in der Praxis bringt.

Als "einfacher Endanwender" wird man mit sowas aber nie in Berührung kommen.
 
  • Gefällt mir
Reaktionen: NullGradC3lsius
Jesterfox schrieb:
Das ist quasi eine absolut ultrasimple Datenbank mit einer Tabelle mit 2 Spalten (unique Index und Value) die vom SSD Controller verwaltet wird. Der Vorteil ist dass der Zugriff auf die Werte über den Controller schneller geht als erst über die CPU auf ein Dateisystem zu mappen dass dann auf eine normale SSD zugreift. Dazu kommt noch das auch der Garbage Collector gleich auf die Key-Value Datenstruktur ausgelegt ist und sich somit die CPU nicht mehr darum kümmern muss die Datenstruktur nach einem Löschen aufzuräumen.

Ist also ein hochspezialisertes Gerät für einen bestimmten Anwendungsfall. Bin aber schon mal gespannt ob man mal Benchmarks zu sehen bekommt wie viel das in der Praxis bringt.

Als "einfacher Endanwender" wird man mit sowas aber nie in Berührung kommen.

Danke, kannst du mir das mit dem Blockspeicher auch leicht erklären?
 
Blockspeicher ist quasi die herkömmliche Technik: man hatte eine riesen Anzahl an Datenblöcken die alle gleich groß sind (meist 512 Byte, manchmal auch 4kB) und die frei Adressiert werden können (entweder die Sektoren einer Festplatte die über die Platter und Tracks verteilt sind oder eben die Speicherzellen im Flash einer SSD). Die restliche Organisation wird per Software in Form eines Dateisystems oben drauf gesetzt. Davon weiß aber der Controller nichts, das wird von der CPU berechnet.
 
Danke, super erklärt jetzt verstehe ich es wenigstens etwas, vielleicht hast du damit nicht nur mir geholfen.

MfG
 
Jesterfox schrieb:
Davon weiß aber der Controller nichts, das wird von der CPU berechnet.
Eben, normale SSDs und HDDs wissen von Partitionen, Verzeichnissen und Dateien nichts, die bekomme nur Befehle in der Art: Lese oder Schreiben ab LBA (logische Block Adresse) x die folgenden y (bis zu 2^16) LBAs
 
Zurück
Oben