In this study, we propose a new benchmark of a key-value store with a semi-sorted workload to address the limitations of the existing benchmarks. We observe the write amplification and latency spike issues, which are mainly from background running compaction operations. We analyze the real workload of RocksDB in Ceph Bluestore by collecting a query trace of up-and-running geo-scale commercial service platform. Based upon the observed workload characteristics, we develop a semi-sorted key generator and embed it with db_bench. This benchmark is tailored towards the workload characteristics of the metadata management of the Ceph Bluestore. The proposed benchmark can effectively reproduce the write stall phenomenon that observed in the commercial settings. The proposed benchmark are designed to efficiently adjust the spatial locality of the semi-sorted workload. It can greatly simplify the process of evaluating a given column family separation strategy and determining the optimal write buffer size.
이 논문에서는 부분 정렬된 워크로드를 가진 키 밸류 스토어의 성능을 평가할 수 있는 벤치마크 기법을 제시한다. 로그 구조 병합 트리 기반 데이터베이스가 컴팩션 연산으로 인해 발생하는 쓰기 증폭과 쓰기 지연 현상을 관찰했다. 세프 클러스터의 스토리지 백엔드인 블루스토어는 메타데이터를 락스디비로 관리하며 이로 인한 입출력 병목 현상이 있다. 스토리지 백엔드 내부 데이터베이스의 성능 진단을 위해 우리는 실제 상업적으로 사용되는 세프 클러스터에서 락스디비의 쿼리 트레이스를 추출했다. 수집한 트레이스로부터 우리는 블루스토어 메타데이터 종류별로 워크로드 특성이 다르다는 것을 관찰했다. 우리는 부분 정렬된 워크로드의 키 지역성을 반영할 수 있는 벤치마크를 제시했다. 블루스토어의 메타데이터별 워크로드 특성을 재현할 수 있는 부분 정렬된 키 생성기를 디비벤치 기반으로 개발했다. 제시된 벤치마크를 통해 세프 블루스토어의 락스디비 계층에서 발생하는 쓰기 지연 효과를 효율적으로 관찰할 수 있다.