2.8. Ceph ObjectStore
ObjectStore
는 OSD의 원시 블록 장치에 하위 수준 인터페이스를 제공합니다. 클라이언트가 데이터를 읽거나 쓸 때 ObjectStore
인터페이스와 상호 작용합니다. Ceph 쓰기 작업은 기본적으로 ACID 트랜잭션입니다. 즉 Atomicity,Consistency,Isolation 및 Durability 를 제공합니다. ObjectStore
는 Atomicity 를 제공하기 위해 트랜잭션
이 all-or-nothing인지 확인합니다. ObjectStore
는 오브젝트 의미도 처리합니다. 스토리지 클러스터에 저장된 오브젝트는 고유 식별자, 오브젝트 데이터 및 메타데이터가 있습니다. 따라서 ObjectStore
는 Ceph 개체 의미 체계가 올바른지 확인하여 일관성
을 제공합니다. 또한 ObjectStore
는 Ceph 쓰기 작업이 순차적으로 이루어지도록 쓰기 작업에서 stepr를 호출하여 ACID 트랜잭션의 Isolation 부분도 제공합니다. 반면 OSD의 복제 또는 서점 코딩 기능은 ACID 트랜잭션의 Durability 구성 요소를 제공합니다.
ObjectStore
는 스토리지 미디어에 대한 하위 수준 인터페이스이므로 성능 통계도 제공합니다.
Ceph는 데이터를 저장하기 위한 몇 가지 공식 방법을 구현합니다.
- bluestore: 오브젝트 데이터를 저장하는 원시 블록 장치를 사용하는 프로덕션 등급 구현입니다.
- Memstore: RAM에서 직접 읽기/쓰기 작업을 테스트하기 위한 개발자 구현입니다.
- K/V Store: Ceph의 키/값 데이터베이스를 사용하는 내부 구현입니다.
일반적으로 관리자는 BlueStore
에만 주소를 지정하므로 다음 섹션에서는 이러한 구현에 대해 자세히 설명합니다.