검색 : [ keyword: Write Amplification ] (3)

PSL-DB: 비휘발성 메모리 환경에서 스킵리스트를 이용한 LSM-Tree 최적화

박찬열, 김동의, 남범석

http://doi.org/10.5626/JOK.2020.47.7.635

Intel의 Optane DC Persistent Memory가 출시되면서 DRAM보다 높은 용량을 제공하며, SSD와 HDD보다 높은 성능을 보여주는 비휘발성 메모리가 차세대 스토리지로 각광받고 있다. 본 논문에서는 스킵리스트를 사용하여 비휘발성 메모리가 스토리지로 사용되는 환경에 최적화한 Key-Value 데이터베이스인 Persistent SkipList DataBase (PSL-DB)를 제안한다. PSL-DB는 비휘발성 메모리의 바이트 단위 접근이 가능한 점을 이용하여 기존 LevelDB의 블록 단위 접근을 위한 SSTable 구조 대신, 바이트 단위 쓰기가 가능한 스킵리스트를 활용한다. 그 결과 PSL-DB는 같은 데이터를 중복해서 여러 번 쓰는 쓰기 증폭 문제를 발생시키지 않으며, 읽기 성능을 위해 쓰기 성능을 고의로 제한하지 않아 성능을 크게 향상시킬 수 있다. Intel Optane DC Persistent Memory를 활용한 실험에서 PSL-DB는 같은 Optane DC PM을 사용하는 기존 LevelDB보다 읽기와 쓰기 명령모두 높은 초당 연산량을 보여주었다.

비휘발성 메모리에서 쓰기 증폭 감소를 위한 분산 스토리지 시스템

김정한, 엄영익

http://doi.org/10.5626/JOK.2020.47.2.129

최근 3DXpoint 로 대표되는 비휘발성 메모리가 등장하면서 분산 스토리지 환경에서도 이를 활용하기 위한 연구가 새롭게 주목받고 있다. 이러한 차세대 비휘발성 메모리를 분산 스토리지 시스템에서 효과적으로 활용하기 위해서는 HDD/SSD를 고려하여 개발된 기존 스토리지 시스템 구조의 개선이 필요하다. 무엇보다도 기존 분산 스토리지 시스템 구조는 느린 스토리지 성능을 보완하기 위해서 별도의 저널영역을 사용하는데, 이러한 구조는 DRAM과 유사한 비휘발성 메모리 성능을 고려할 때 효과적이지 않으며 또한 쓰기 증폭 문제를 야기한다. 이에 본 논문에서는 비휘발성 메모리 기반의 분산 스토리지 환경에서의 쓰기 증폭 문제를 개선하는 아키텍처를 제안한다. 본 구조의 검증을 위해서 CEPH 스토리지 시스템 환경에서 실험을 진행하였으며, 이를 통해서 제안하는 DAXNJ 구조가 1M 오브젝트 쓰기에서 쓰기 증폭을 약 61% 줄이고 성능을 15% 개선하는 결과를 확인하였다.

LSM-tree 기반 Key-value 데이터베이스의 재귀적 컴팩션 기법

김종빈, 손서희, 조현수, 정형수

http://doi.org/10.5626/JOK.2019.46.9.946

LSM-tree 기반 Key-value 데이터베이스는 데이터 쓰기 연산의 성능에 최적화 된 구조를 가지며, 일반적으로 컴팩션 연산을 통해 LSM-tree의 형태를 유지하며 데이터를 관리한다. 컴팩션 연산은 저장 장치에 기록된 데이터를 메모리로 읽어들여 정렬한 뒤 결과 데이터를 저장 장치로 다시 쓰는 작업을 반복하며, 이러한 동작 패턴은 몇 가지의 문제점을 발생시킨다. 본 논문에서는 이러한 컴팩션 연산이 유발하는 성능 손실 및 쓰기 증폭 현상에 대하여 분석하고, 이를 개선하기 위한 재귀적 컴팩션 기법을 제안한다. 재귀적 컴팩션 기법은 멀티스레드를 활용하여 동시에 여러 컴팩션을 수행하며 읽기 요청 및 가비지 컬렉션을 적절히 수행하여 컴팩션이 유발하는 문제를 완화시킨다. 위 기법을 LSM-tree based Key-value 데이터베이스 중 하나인 Google의 LevelDB에 적용한 뒤 이에 대한 실험 결과를 분석한다.


Search




Journal of KIISE

  • ISSN : 2383-630X(Print)
  • ISSN : 2383-6296(Electronic)
  • KCI Accredited Journal

사무국

  • Tel. +82-2-588-9240
  • Fax. +82-2-521-1352
  • E-mail. chwoo@kiise.or.kr