Nowadays, due to users' increasing requirements of fast and reliable data management for mobile applications, major electronic device vendors use embedded DBMS on their mobile devices such as MP3 players, mobile phones, digital cameras and PDAs. However, in embedded database, data logging is the bottleneck against fast response time. There has been a lot of work on minimizing logging overhead to provide the best online performance to database workloads. However, to the best of our knowledge, there is still no recovery method taken into consideration. In this paper, we propose a novel logging method called LB-logging to support high efficiency in recovery of crashed databases. LB-logging is based on list structures instead of sequential structures in traditional databases. In addition, by making use of the history data versions which are naturally located in flash memory due to the out-of-place update, we take the full advantage of high I/O performance of flash memory to accelerate our recovery algorithm. Experimental results on Oracle Berkeley DB show that our LB-Logging method significantly outperforms the traditional recovery by 2X-15X, and other logging methods for SSD by 1.5X-6X.
展开▼