DOI QR코드

DOI QR Code

Performance Evaluation and Optimization of NoSQL Databases with High-Performance Flash SSDs

고성능 플래시 SSD 환경에서 NoSQL 데이터베이스의 성능 평가 및 최적화

  • 한혁 (동덕여자대학교 컴퓨터학과)
  • Received : 2017.03.06
  • Accepted : 2017.06.27
  • Published : 2017.07.28

Abstract

Recently, demands for high-performance flash-based storage devices (i.e., flash SSD) have rapidly grown in social network services, cloud computing, super-computing, and enterprise storage systems. The industry and academic communities made the NVMe specification for high-performance storage devices, and NVMe-based flash SSDs can be now obtained in the market. In this article, we evaluate performance of NoSQL databases that social network services and cloud computing services heavily adopt by using NVMe-based flash SSDs. To this end, we use NVMe SSD that Samsung Electronics recently developed, and the SSD used in this study has performance up to 3.5GB/s for sequential read/write operations. We use WiredTiger for NoSQL databases, and it is a default storage engine for MongoDB. Our experimental results show that log processing in NoSQL databases is a major overhead when high-performance NVMe-based flash SSDs are used. Furthermore, we optimize components of log processing and optimized WiredTiger show up to 15 times better performance than original WiredTiger.

최근 사회 관계망 서비스, 클라우드 컴퓨팅, 슈퍼컴퓨팅, 기업용 스토리지 시스템 등의 분야에서 고성능 플래시 메모리 기반 저장 장치(플래시 SSD)에 대한 수요가 크게 증가하고 있다. 이러한 환경에서 최근 산업계 및 학계에서는 고성능 플래시 SSD를 위한 NVMe 규약을 만들었고, NVMe 규약을 따르는 고성능 플래시 SSD는 현재 시장에서 구할 수 있다. 본 논문에서는 NVMe 플래시 SSD를 이용하여 클라우드 컴퓨팅, 사회 관계망 서비스 등에서 많이 활용되고 있는 NoSQL 데이터베이스의 성능을 평가하고 분석하고자 한다. 성능 평가에 사용된 저장 장치는 삼성전자가 최근에 개발한 NVMe 기반 플래시 SSD이며 이 장치의 연속 읽기/쓰기 성능은 3.5GB/s 이다. NoSQL 데이터베이스는 MongoDB의 기본 스토리지 엔진으로 채택된 WiredTiger를 사용하였다. 실험 결과는 고성능 NVMe 플래시 SSD 환경에서 NoSQL 데이터베이스의 로그 처리 부분이 성능상의 가장 큰 오버헤드임을 보여준다. 이 결과를 바탕으로 로그 처리 부분을 최적화하였고 최적화된 WiredTiger는 기존 대비 최대 15배의 성능 향상을 보여준다.

Keywords

References

  1. IBM system storage ds8000 easy tier. http://www.ibm.com/systems/storage/flash/720-820.
  2. Netapp. http://www.netapp.com/us/products/storage-systems/flash-accel.
  3. Flasharray, meet the new 3rd-generation flasharray. http://www.purestorage.com/flash-array.
  4. A. Huffman, "NVM Express Overview & Ecosystem Update," In Proceedings of Flash Memory Summit 2013.
  5. MongoDB Inc., http://www.mongodb.com
  6. MongoDB Inc., http://www.wiredtiger.com
  7. Ryan Johnson, Ippokratis Pandis, Radu Stoica, Manos Athanassoulis, and Anastasia Ailamaki., "Aether: a scalable approach to logging," Proc. VLDB Endow, Vol.3, Issue.1-2, 2010(9).
  8. A. Mathur, M. Cao, S. Bhattacharya, A. Dilger, A. Tomas, and L. Vivier, "The new ext4 filesystem: Current status and future plans," In Proceedings of the Linux Symposium, 2007.
  9. Brian F. Cooper, Adam Silberstein, Erwin Tam, Raghu Ramakrishnan, and Russell Sears, "Benchmarking cloud serving systems with YCSB," In Proceedings of the 1st ACM symposium on Cloud computing (SoCC10).
  10. Hyojun Kim, Sangeetha Seshadri, Clement L. Dickey, and Lawrence Chiu, "Evaluating phase change memory for enterprise storage systems: a study of caching and tiering approaches," In Proceedings of the 12th USENIX conference on File and Storage Technologies (FAST'14).
  11. Sang-Won Lee, Bongki Moon, Chanik Park, Jae-Myung Kim, and Sang-Woo Kim, "A case for flash memory ssd in enterprise database applications," In Proceedings of the 2008 ACM SIGMOD international conference on Management of data (SIGMOD '08).
  12. Sangwhan Moon, Jaehwan Lee, Xiling Sun, and Yang-Suk Kee, "Optimizing the Hadoop MapReduce Framework with high-performance storage devices," Journal of Supercomputing, Vol.71, No.9, 2015(9).
  13. Yongseok Son, Hara Kang, Hyuck Han, and Heon Young Yeom, "An empirical evaluation and analysis of the performance of NVM express solid state drive," Cluster Computing, Vol.19, No.3, 2016(9).
  14. Jeong-Uk Kang, Jeeseok Hyun, Hyunjoo Maeng, and Sangyeun Cho, "The multi-streamed solid-state drive," In Proceedings of the 6th USENIX conference on Hot Topics in Storage and File Systems (HotStorage'14).
  15. Lanyue Lu, Thanumalayan Sankaranarayana Pillai, Hariharan Gopalakrishnan, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau, "WiscKey: Separating Keys from Values in SSD-Conscious Storage," ACM Transations on Storage, Vol.13, No.1, Article.5.
  16. Yanqin Jin, Hung-Wei Tseng, Yannis Papakonstantinou, and Steven Swanson, "KAML: A Flexible, High-Performance Key-Value SSD," In Proceedings of the 23rd IEEE Symposium on High Performance Computer Architecture (HPCA2017).