SHARE interface in flash storage for relational and NoSQL databases
G Oh, C Seo, R Mayuram, YS Kee… - Proceedings of the 2016 …, 2016 - dl.acm.org
Proceedings of the 2016 International Conference on Management of Data, 2016•dl.acm.org
Database consistency and recoverability require guaranteeing write atomicity for one or
more pages. However, contemporary database systems consider write operations non-
atomic. Thus, many database storage engines have traditionally relied on either journaling
or copy-on-write approaches for atomic propagation of updated pages to the storage. This
reliance achieves write atomicity at the cost of various write amplifications such as
redundant writes, tree-wandering, and compaction. This write amplification results in …
more pages. However, contemporary database systems consider write operations non-
atomic. Thus, many database storage engines have traditionally relied on either journaling
or copy-on-write approaches for atomic propagation of updated pages to the storage. This
reliance achieves write atomicity at the cost of various write amplifications such as
redundant writes, tree-wandering, and compaction. This write amplification results in …
Database consistency and recoverability require guaranteeing write atomicity for one or more pages. However, contemporary database systems consider write operations non-atomic. Thus, many database storage engines have traditionally relied on either journaling or copy-on-write approaches for atomic propagation of updated pages to the storage. This reliance achieves write atomicity at the cost of various write amplifications such as redundant writes, tree-wandering, and compaction. This write amplification results in reduced performance and, for flash storage, accelerates device wear-out. In this paper, we propose a flash storage interface, SHARE. Being able to explicitly remap the address mapping inside flash storage using SHARE interface enables host-side database storage engines to achieve write atomicity without causing write amplification. We have implemented SHARE on a real SSD board, OpenSSD, and modified MySQL/InnoDB and Couchbase NoSQL storage engines to make them compatible with the extended SHARE interface. Our experimental results show that this SHARE-based MySQL/InnoDB and Couchbase configurations can significantly boost database performance. In particular, the inevitable and costly Couchbase compaction process can complete without copying any data pages.
ACM Digital Library