There's an interesting paper at https://www.usenix.org/system/files/conference/atc15/atc15-paper-lee-wongun.pdf
I don't know enough to evaluate it, but if I'm understanding correctly: -- They have modified sqlite so as to work directly with the EXT4 filesystem to prevent redundant journaling (i.e., otherwise, both sqlite and ext4 will journal all data changes) -- They claim sqlite writes account for a significant portion of mobile device data writes. -- They claim huge reductions in data writes in some configurations -- e.g. down to as low as one sixth of unmodified systems. -- They call their new sqlite mode "WALDIO" for WAL Direct-I/O. -- They make several changes to obtain the claimed efficiency, such as preallocation and initialization of db sectors, modifiying and aligning headers, commands to EXT4, etc. -- One mode does require that power not be removed abruptly from the eMMC controller (but they still claim durability even in the face of a kernel panic) -- The flash system should not ignore the DISCARD command nor return the old data if a read is later attempted. -- Their prototype is on a Samsung Galaxy S5 -- I don't notice where their code is available. I guess it's proprietary (?) *Abstract * This work is dedicated to resolve the Journaling of Journal Anomaly in Android IO stack. We orchestrate SQLite and EXT4 filesystem so that SQLite?s file-backed journaling activity can dispense with the expensive filesystem intervention, the journaling, without compromising the file integrity under unexpected filesystem failure. In storing the logs, we exploit the direct IO to suppress the filesystem interference. This work consists of three key ingredients: (i) Preallocation with Explicit Journaling, (ii) Header Embedding, and (iii) Group Synchronization. Preallocation with Explicit Journaling eliminates the filesystem journaling properly protecting the file metadata against the unexpected system crash. We redesign the SQLite B-tree structure with Header Embedding to make it direct IO compatible and block IO friendly. With Group Synch, we minimize the synchronization overhead of direct IO and make the SQLite operation NAND Flash friendly. Combining the three technical ingredients, we develop a new journal mode in SQLite, the WALDIO. We implement it on the commercially available smartphone. WALDIO mode achieves 5.1? performance (insert/sec) against WAL mode which is the fastest journaling mode in SQLite. It yields 2.7? performance (inserts/sec) against the LS-MVBT, the fastest SQLite journaling mode known to public. WALDIO mode achieves 7.4? performance (insert/sec) against WAL mode when it is relieved from the overhead of explicitly synchronizing individual log-commit operations. WALDIO mode reduces the IO volume to 1/6 compared against the WAL mode.