News Samsung Develops Industry’s First Standards-Based ‘Key Value’ SSD Prototype

Samsung announced it had developed the industry's first Key Value SSD that is compliant with the new open standard for KV SSDs, which can significantly reduce CPU overhead for storage workloads

Samsung Develops Industry’s First Standards-Based ‘Key Value’ SSD Prototype : Read more

interesting approach. Assuming they are using conventional Prime number sized key-value maps, they can be effectively used up to 2/3rd of the prime size before double hits occur. (Per studies by Knuth and others) If it's a 64 bit map, the largest prime would be 9,223,372,036,854,775,807 . Multiply that by .66 and you get a reasonable amount of file entries.
 

bit_user

Polypheme
Ambassador
Assuming they are using conventional Prime number sized key-value maps, they can be effectively used up to 2/3rd of the prime size before double hits occur. (Per studies by Knuth and others) If it's a 64 bit map, the largest prime would be 9,223,372,036,854,775,807 . Multiply that by .66 and you get a reasonable amount of file entries.
Huh? The keys would tend to be from a DB schema - probably not mere hashes of the values or whatever. Whether there are collisions and what those actually mean is domain-dependent. The keys could even be sequential, such as ROW IDs, making them densely-packed.

According to Anandtech:
Those drives support key lengths from 4 to 255 bytes and value lengths up to 2MB

So, that's a key space of anywhere from 32 bits to 2040 bits.
 
  • Like
Reactions: digitalgriffin
Huh? The keys would tend to be from a DB schema - probably not mere hashes of the values or whatever. Whether there are collisions and what those actually mean is domain-dependent. The keys could even be sequential, such as ROW IDs, making them densely-packed.

According to Anandtech:


So, that's a key space of anywhere from 32 bits to 2040 bits.

A variable length key based on a b tree db schema?

Great now I have something else to learn how it works. :p Paper link?
 

bit_user

Polypheme
Ambassador
A variable length key based on a b tree db schema?
I'm not sure I follow, unless you're just being cute.

Great now I have something else to learn how it works. :p Paper link?
You mean this?



Did you read the NVMe specifications or SATA/SAS, for that matter?

That said, there's potentially some value in reading about NVMe's features. Some cool stuff in there, actually:

 
Another list of papers to add to my list. Thanks. (And for the record I wasn't being sarcastic) I know how B Trees work for Databases but didn't know if it was a standard B Tree Parse. I thought they might be using like a RLE hash to get a Left Branch Right Branch Right Branch Mid Branch short cut going which would avoid expensive compares. But I didn't know. It was just a guess. I'll be sure to do some reading.