메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

PolyStore: Exploiting Combined Capabilities of Heterogeneous Storage

noriwiki


Yujie Ren, David Domingo, Jian Zhang, Paul John, Rekha Pitchumani, Sanidhya Kashyap, Sudarsun Kannan
USENIX FAST 2025

개요

Heterogeneous system이 점차 대두하는 가운데, 현재 존재하는 Caching, Tiering, Application directed방식은 한계를 보이고 있다. 이를 타계하기 위하여, 본 연구에서는 transparent하게 여러 Heterogeous 디바이스들을 사용하는 fine-grained한 레이어를 유저레벨에 구현하여서, Application이 다양한 Storage를 효과적으로 사용할 수 구현한 PolyStore란 시스템을 제시하였다.

Motivation & Importance

Heterogeneous system은 크게 Caching, Tiering, Application-direct로 구분할 수 있다. 각각 장단점이 있지만, 크게 다음과 같은 단점이 있다.

  • Caching: Application이 Heterogenous시스템의 모든 Combined된 최고의 성능을 발휘하지 못한다.
  • Tiering: Multithread IO Application이 Tiering시스템은 맨위에 있는 Single device에 Contention을 일으킨다.
  • Application directed: Transparent하지 못하다.

Main Idea & Challenge

Main Idea

Attending combined bandwidth of heterogeneous storage.
  • Heterogeneous-aware runtime to support fine-grained data indexing and file system operations.
  • Dynamic bandwidth-aware data placement across HSDs.
Achieving heterogeneity-aware DRAM caching.
  • Heterogenity-aware DRAM caching with abstracted HSD storage layer.
Providing unified durability, crash consistency, and sharing guarantees.
  • Coordinated persistence and recovery.
  • Secure metadata update delegation to the OS.

Challenge

Design

  • Poly-index: Range-tree를 이용한 Scalable data indexing을 담당한다.
  • Poly-placement: Application이 I/O를 다양한 storage에 뿌려주는 역활을 담당한다.
  • Poly-cache: 다양한 Storage에 특성화된 Cache eviction policy를 가지고 있는 레이어로, 스토리지의 특성에 맞춘 최적의 Cache policy를 제공한다.
  • Poly-persist: HSD들의 Atomicity와 Durability에 최적화된 Consistency policy를 적용시키는 레이어를 제공한다.
  • Thin OS Layer: 여러개의 Process들의 요청의 Isolation을 보장하며, VFS Layer와 연결한다.
Fine-grained Data Placement
Poly-index는 Red black tree를 사용한 Range tree로 작성하여서, 각 노드가 2MB의 크기의 청크에 해당하는 파일시스템을 당담하게 하였다. 이를 통해서 Fine-grained한 데이터 Placement를 가능하게 하였다. 또한 Poly-index는 User-level Poly-cache로 가는 Pointer도 가지고 있어서, Buffer cache를 Fine-grained하게 관리할 수 있도록 하였다.