Re:Immutability, MVCC, and garbage collection (2013)
by eloff on Sunday February 01, 2015 @12:08PM
(#8980683)
While I have your attention, assuming SSD with typical 128k erase blocks, do you do anything special to avoid write amplification at the disk level when reusing pages? My understanding is that those are in-place updates from the filesystem's POV, so writing over 32k of old pages will cause 128-256k actual writes. One could avoid this somewhat with trim support, fallocate + hole punch (not portable) but you have to think carefully about alignments and grouping free pages into contiguous erase block multiples. That never struck me as being very practical. Have you thought about that problem before or tried anything there?
[ Parent
| on HN ]
Re:Immutability, MVCC, and garbage collection (2013)
by hyc_symas on Sunday February 01, 2015 @12:43PM
(#8980829)
Thought about it - yes. Tried anything - no. We have no idea what an SSD's FTL is doing under the covers, and no way to find out thru a SATA/SCSI command interface. Trim and hole punching are no advantage - it's not safe to do them before a page may be safely reused, as soon as a page can be safely reused, we'll probably be writing new data into it.