Delayed Write Scheme to Enhance Write Performance of Flash Memory Based Embedded Database Systems

플래시 메모리 기반 임베디드 데이터베이스 시스템의 쓰기 성능 향상을 위한 지연쓰기 기법

  • 송하주 (부경대학교 전자컴퓨터정보통신공학부) ;
  • 권오흠 (부경대학교 전자컴퓨터정보통신공학부)
  • Published : 2009.02.28

Abstract

Embedded database systems (EDBMS) based on NAND flash memories are widely adopted for logging data on sensor nodes. Since write and erase operations of a flash memory are time consuming compared to read operations and wear memory cells, it is important to reduce these operations to enhance the EDBMS performance and to extend the memory life. In this paper, we propose a delayed write scheme to archive this goal. Proposed scheme stores updated parts of database pages into delayed write records to reduce the database page writes. By doing that, it decreases write and erase operations on a flash memory. Therefore, the proposed scheme enhances the logging performance of a write-intensive EDBMS on a sensor node and extends the flash memory life.

센서노드(sensor node)에서의 데이터 기록을 위해 NAND 플래시 메모리 기반의 임베디드 데이터베이스 시스템이 널리 사용되고 이다. 플래시 메모리의 쓰기 및 삭제연산은 읽기 연산에 비해 시간이 많이 소모되고 기억 소자를 마모시킨다. 따라서 이러한 연산들을 줄이는 것은 데이터베이스 시스템의 성능 향상과 메모리의 수명 증대 측면에서 중요하다. 본 논문에서는 이를 위해 지연쓰기 기법을 제안한다. 이 기법은 데이터페이스 페이지의 갱신 영역을 별도의 지연쓰기 레코드로 저장하여 데이터베이스 페이지 쓰기를 줄임으로써 플래시 메모리에 대한 쓰기연산과 삭제 연산을 감소시킨다. 따라서 제안하는 기법은 데이터 기록의 비중이 높은 센서노드 데이터베이스 시스템의 성능을 높이고 플래시 메모리의 수명을 늘리게 된다.

Keywords

References

  1. Michael Wu and Willy Zwaenpoel, "eNVy: A Non-Volatile, Main Memory StorageSystem," Proceeding of 6th Symposium on Architectural Support for Programming Languages and Operating System, pp. 86-87, 1994.
  2. Intel Corporation, Understanding the Flash Translation Layer (FTL) Specification, http://developer.intel.oom/.
  3. Intel Corporation, 3 Volt Synchronous Intel StrataFlash Memory, http://www.intel.com/.
  4. Suman Nath and Aman Kansal, "FlashDB: dynamic self-tuning database for NAND flash. Information Processing in Sensor Networks," pp. 410-419, Cambridge, Massachusetts, 2007.
  5. D. Woodhouse, JFFs: The journaling flash file system, http://sources.redhat.com/jffs2/jffs2.pdf.
  6. Wookey, "Yaffs - A file system designed for nand flash," Linux Conference and Tutorials. Leeds, UK, 2004.
  7. M. Rosenblum and J,K. Ousterhout, 'The Design and Implementation of a Structured File System,' ACM Transaction on Computer Systems, Vo1.10, No.1, pp, 26-52, 1992. https://doi.org/10.1145/146941.146943
  8. Chin-Hsien Wu, Li-Pin Chang and Tei-Wei Kuo, "An Efficient B-Tree Layer for Flash-Memory Storage Systems," Real-Time Computing Systems and Applications, pp. 409-430, 2003.
  9. Song Lin, Demetrios Zeinalipour-Yazti, Vana Kalogeraki, Dimitrios Gunopulos, and Walid A. Najjar, "Efficient indexing data structures for flash-based sensor devices," ACM Transactions on Storage, Vol.2, No.4, pp. 468-503, 2006. https://doi.org/10.1145/1210596.1210601
  10. Christophe Bobineau, Luc Bouganirn, Philippe Pucheral, and Patrick Valduriez, "PicoDBMS: Scaling down Database Techniques for the Smart Card," The 26th International Conference on Very Large Databases, pp. 10-20, Cairo, Egypt, 2000.
  11. Michael Owebs, The Definitive Guide to SQLite, Apress, 2006.
  12. J,Kim, J,M. Kim, S.H. Noh, S.L. Min, and Y. Cho, "A Space-Efficient Flash Translation Layer for Compact Flash System," IEEE Transactions on Consumer Electronics, Vo1.48, No.2, pp. 366-375, 2002. https://doi.org/10.1109/TCE.2002.1010143
  13. Sang-Won Lee and Bongki Moon, "Design of flash-based DBMS: an in-page logging approach," Proceedings of the ACM SIGMOD International Conference on Management of Data, pp. 55-66, Beijing, China, 2007.
  14. Jim Gray and Andreas Reuter, Transaction Processing: Concepts and Techniques, Elsevier Science & Technology Books, 1992.