DOI QR코드

DOI QR Code

A Column-Aware Index Management Using Flash Memory for Read-Intensive Databases

  • Received : 2014.03.14
  • Accepted : 2014.10.03
  • Published : 2015.09.30

Abstract

Most traditional database systems exploit a record-oriented model where the attributes of a record are placed contiguously in a hard disk to achieve high performance writes. However, for read-mostly data warehouse systems, the column-oriented database has become a proper model because of its superior read performance. Today, flash memory is largely recognized as the preferred storage media for high-speed database systems. In this paper, we introduce a column-oriented database model based on flash memory and then propose a new column-aware flash indexing scheme for the high-speed column-oriented data warehouse systems. Our index management scheme, which uses an enhanced $B^+$-Tree, achieves superior search performance by indexing an embedded segment and packing an unused space in internal and leaf nodes. Based on the performance results of two test databases, we concluded that the column-aware flash index management outperforms the traditional scheme in the respect of the mixed operation throughput and its response time.

Keywords

References

  1. D. J. Abadi, P. A. Boncz, and S. Harizopoulos, "Column-oriented database systems," Proceedings of the VLDB Endowment, vol. 2, no. 2, pp. 1664-1665, 2009.
  2. R. MacNicol and B. French, "Sybase IQ multiplex-designed for analytics," in Proceedings of the 30th International Conference on Very Large Data Bases (VLDB'04), Toronto, Canada, 2004, pp. 1227-1230.
  3. M. Stonebraker, D. J. Abadi, A. Batkin, X. Chen, M. Cherniack, M. Ferreira, et al., "C-store: a column-oriented DBMS," in Proceedings of the 31st International Conference on Very Large Data Bases (VLDB'05), Trondheim, Norway, 2005, pp. 553-564.
  4. S. Byun, "Column-aware polarization scheme for high-speed database systems," Journal of Korean Society Internet Information, vol. 13, no. 3, pp. 83-91, 2012.
  5. Y. H. Chang, J. W. Hsieh, and T. W. Kuo, "Endurance enhancement of flash-memory storage systems: an efficient static wear leveling design," in Proceedings of the 44th annual Design Automation Conference, San Diego, CA, 2007, pp. 212-217.
  6. S. Byun, "Enhanced index management for accelerating hybrid storage systems," Journal of Convergence Information Technology, vol. 4, no. 2, pp. 164-169, 2009.
  7. D. J. Abadi, S. R. Madden, and N. Hachem, "Column-stores vs. row-stores: how different are they really?," in Proceedings of the 2008 ACM SIGMOD International Conference on Management of Data, Vancouver, Canada, 2008, pp. 967-980.
  8. S. K. Cha, J. H. Park, and B. D. Park, "Xmas: an extensible main-memory storage system," in Proceedings of the 6th International Conference on Information and Knowledge Management, Las Vegas, NV, 1997, pp. 356-362.
  9. R. Elmasri and S. Navathe, Fundamentals of Database System, 6th ed. Upper Saddle River, NJ: Pearson Education, 2010.
  10. C. H. Wu, L. P. Chang, and T. W. Kuo, "An efficient R-tree implementation over flash-memory storage systems," in Proceedings of the 11th ACM International Symposium on Advances in Geographic Information Systems, New Orleans, LA, 2003, pp. 17-24.
  11. H. Lu, Y. Y. Ng, and Z. Tian, "T-tree or b-tree: main memory database index structure revisited," in Proceedings of the 11th Australasian Database Conference (ADC2000), Canberra, Australia, 2000, pp. 65-73.
  12. C. Lee, K. Ahn, and B. Hong, "A study of performance decision factor for moving object database in main memory index," in Proceedings of the Korea Information Processing Society 2003 Spring Conference, Seoul, Korea, 2003, pp. 1575-1578.
  13. B-Tree, "Software design using C++," 2009; http://cis.stvincent.edu/carlsond/swdesign/btree/btree.html.
  14. D. Roberts, T. Kgil, and T. Mudge, "Integrating NAND flash devices onto servers," Communications of the ACM, vol. 52, no. 4, pp. 98-103, 2009. https://doi.org/10.1145/1498765.1498791
  15. Wikipedia, "B-tree," 2013; http://en.wikipedia.org/wiki/B-tree.
  16. M. Oberhumer, "LZO," 2013; http://www.oberhumer.com/opensource/lzo/.
  17. Y. Li, B. He, R. J. Yang, Q. Luo, and K. Yi, "Tree indexing on solid state drives," Proceedings of the VLDB Endowment, vol. 3, no. 1-2, pp. 1195-1206, 2010.
  18. C. H. Wu, L. P. Chang, and T. W. Kuo, "An efficient B-tree layer for flash-memory storage systems," in Proceedings of 9th International Conference on Real-Time and Embedded Computing Systems and Applications (RTCSA2003), Tainan City, Taiwan, 2003, pp. 409-430.
  19. Mesquite Software, "CSIM20 user's guide," http://www.mesquite.com/documentation/documents/CSIM20_User_Guide-C++.pdf.