Adaptive logging for mobile device

Nowadays, due to the increased user requirements of the fast and reliable data management operation for mobile applications, major device vendors use embedded DBMS for their mobile devices such as MP3 players, mobile phones, digital cameras and PDAs. However, database logging is the major bottleneck against the fast response time. There has been a lot of work minimizing logging overhead but no single recovery method provides the best performance to a variety of database workloads. In this paper, we present a novel recovery method called adaptive logging which can switch the logging method from ARIES to shadow paging adaptively at a page level according to the update state of each page on run time. Also, we propose a log compaction method called deferred logging which removes redundant logs by deferring to create log records until the updated data page is flushed or until the transaction commits. Deferred logging is coupled with adaptive logging seamlessly so that it boosts the performance of adaptive logging by reducing the typical overhead of hybrid methods. We have implemented the proposed approaches to our embedded DBMS which was deployed to more than 10 million mobile devices and evaluated them through a real world application on a mobile device. The result shows that our approaches can reduce logging overhead significantly and consequently can improve the response time of both small update transaction and large update transaction effectively.

[1]  Hamid Pirahesh,et al.  ARIES: a transaction recovery method supporting fine-granularity locking and partial rollbacks using write-ahead logging , 1998 .

[2]  Moon Jeung Joe,et al.  LGeDBMS: a small DBMS for embedded system with flash memory , 2006, VLDB.

[3]  Suman Nath,et al.  FlashDB: Dynamic Self-tuning Database for NAND Flash , 2007, 2007 6th International Symposium on Information Processing in Sensor Networks.

[4]  Irving L. Traiger,et al.  A history and evaluation of System R , 1981, CACM.

[5]  Raymond A. Lorie,et al.  Physical integrity in a large segmented database , 1977, TODS.

[6]  Yon Dohn Chung,et al.  Design and implementation of MLC NAND flash-based DBMS for mobile devices , 2009, J. Syst. Softw..

[7]  Eric A. Brewer,et al.  Segment-based recovery: Write ahead logging revisited , 2009, Proc. VLDB Endow..

[8]  Eric A. Brewer,et al.  Stasis: flexible transactional storage , 2006, OSDI '06.

[9]  Tei-Wei Kuo,et al.  An Efficient B-Tree Layer for Flash-Memory Storage Systems , 2003, RTCSA.

[10]  Suman Nath,et al.  FlashDB: Dynamic Self-tuning Database for NAND Flash , 2007, 2007 6th International Symposium on Information Processing in Sensor Networks.

[11]  Masaru Kitsuregawa,et al.  Power-aware Remote Replication for Enterprise-level Disaster Recovery Systems , 2008, USENIX Annual Technical Conference.

[12]  Raghu Ramakrishnan,et al.  Database Management Systems , 1976 .

[13]  Andreas Reuter,et al.  Transaction Processing: Concepts and Techniques , 1992 .

[14]  John McPherson,et al.  Implementing Atomicity in Two Systems: Techniques, Tradeoffs, and Experience , 1993, IEEE Trans. Software Eng..

[15]  Alan Jay Smith,et al.  I/O reference behavior of production database workloads and the TPC benchmarks—an analysis at the logical level , 1999, TODS.