Key-sequence data sets on indelible storage
IBM Journal of Research and Development
Access methods for multiversion data
SIGMOD '89 Proceedings of the 1989 ACM SIGMOD international conference on Management of data
ACM Transactions on Database Systems (TODS)
An Efficient Multiversion Access Structure
IEEE Transactions on Knowledge and Data Engineering
Hashing Methods for Temporal Data
IEEE Transactions on Knowledge and Data Engineering
An asymptotically optimal multiversion B-tree
The VLDB Journal — The International Journal on Very Large Data Bases
Metadata Efficiency in Versioning File Systems
FAST '03 Proceedings of the 2nd USENIX Conference on File and Storage Technologies
Transactions on the multiversion B+-tree
Proceedings of the 12th International Conference on Extending Database Technology: Advances in Database Technology
ICDE '09 Proceedings of the 2009 IEEE International Conference on Data Engineering
Consistent and durable data structures for non-volatile byte-addressable memory
FAST'11 Proceedings of the 9th USENIX conference on File and stroage technologies
A survey of B-tree logging and recovery techniques
ACM Transactions on Database Systems (TODS)
Reducing SSD read latency via NAND flash program and erase suspension
FAST'12 Proceedings of the 10th USENIX conference on File and Storage Technologies
Revisiting storage for smartphones
FAST'12 Proceedings of the 10th USENIX conference on File and Storage Technologies
Minuet: a scalable distributed multiversion B-tree
Proceedings of the VLDB Endowment
Smart layers and dumb result: IO characterization of an android-based smartphone
Proceedings of the tenth ACM international conference on Embedded software
I/O stack optimization for smartphones
USENIX ATC'13 Proceedings of the 2013 USENIX conference on Annual Technical Conference
Hi-index | 0.00 |
Misaligned interaction between SQLite and EXT4 of the Android I/O stack yields excessive random writes. In this work, we developed multi-version B-tree with lazy split (LS-MVBT) to effectively address the Journaling of Journal anomaly in Android I/O. LS-MVBT is carefully crafted to minimize the write traffic caused by fsync() call of SQLite. The contribution of LS-MVBT consists of two key elements: (i) Multi-version B-tree effectively reduces "the number of fsync() calls" via weaving the crash recovery information within the database itself instead of maintaining a separate file, and (ii) it significantly reduces "the number of dirty pages to be synchronized in a single fsync() call" via optimizing the multi-version B-tree for Android I/O. The optimization of multi-version B-tree consists of three elements: lazy split, metadata embedding, and disabling sibling redistribution. We implemented LS-MVBT in Samsung Galaxy S4 with Android 4.3 Jelly Bean. The results are impressive. For SQLite, the LS-MVBT exhibits 70% (704 insertions/sec vs. 416 insertions/sec), and 1,220% performance improvement against WAL mode and TRUNCATE mode (704 insertions/sec vs. 55 insertions/sec), respectively.