I was reading this great article on sstables

http://www.igvita.com/2012/02/06/sstable-and-log-structured-storage-leveldb/

And the only thing it is not touching upon is how it is doing lookups when 
compression is enabled.  Is cassandra using the snappy framing concept so it 
can random access into the file as well?  I mean, some of the STCS files are 
HUGE while all my LCS files are 10MB.  Under the covers how is that working?  
(If I were to guess snappy framing is used and on a read, it either keeps 
halving the file and reading just pieces or has some index info as to which 
frame the the key is in)…I would guess on LCS that the whole file is one frame 
always due to the small size and the whole file is uncompressed to read the one 
key from that file.

Though I would love to read a blog on this somewhere about how this works in 
detail.  (all the writes/updates/deletes make complete sense but no one seems 
to write about reads in the face of compression).

Thanks,
Dean

Reply via email to