Ceph Object Gateway 데이터 레이아웃

Ceph Object Gateway 는 해당 데이터를 메타데이터, 버킷 색인 및 데이터로 구성합니다.

RADOS가 확장된 속성 (xattrs) 및 오브젝트 맵 (OMAP) 으로 풀 및 오브젝트를 인식하는 반면, 개념적으로 Ceph Object Gateway 는 해당 데이터를 다음과 같은 세 가지 유형으로 구성합니다.

메타데이터

메타데이터에는 세 개의 섹션이 있습니다.
user
사용자 정보를 보유합니다.
bucket
버킷 이름과 버킷 인스턴스 ID간의 맵핑을 보유합니다.
bucket.instance
버킷 인스턴스 정보를 보유합니다.
다음 명령을 사용하여 메타데이터 항목을 보십시오.
radosgw-admin metadata get bucket:BUCKET_NAME
radosgw-admin metadata get bucket.instance:BUCKET:BUCKET_ID
radosgw-admin metadata get user:USER
radosgw-admin metadata set user:USER
예를 들면 다음과 같습니다.
[ceph: root@host01 /]# radosgw-admin 메타데이터 목록
[ceph: root@host01 /]# radosgw-admin 메타데이터 목록 버킷
[ceph: root@host01 /]# radosgw-admin 메타데이터 목록 bucket.instance
[ceph: root@host01 /]# radosgw-admin 메타데이터 목록 사용자

모든 메타데이터 항목은 단일 RADOS 오브젝트에 보존됩니다.

중요: radosgw-admin 도구를 사용할 때 도구 및 Ceph 클러스터가 동일한 버전인지 확인하십시오. 일치하지 않는 버전의 사용은 지원되지 않습니다 .
참고: Ceph Object Gateway 오브젝트는 여러 RADOS 오브젝트로 구성될 수 있습니다. 첫 번째 오브젝트 유형은 Manifest, ACL (Access Control List), 컨텐츠 유형, ETag및 사용자 정의 메타데이터와 같은 메타데이터를 포함하는 헤드입니다. 메타데이터는 xattrs에 저장됩니다. 헤드에는 효율성 및 원자성을 위해 최대 512KB의 오브젝트 데이터가 포함될 수도 있습니다. Manifest에서는 각 오브젝트가 RADOS 오브젝트에서 레이아웃되는 방법을 설명합니다.

버킷 색인

버킷 인덱스는 다른 종류의 메타데이터이며 별도로 유지됩니다. 버킷 색인은 RADOS 오브젝트에서 키-값 맵을 보유합니다. 기본적으로 버킷당 하나의 RADOS 오브젝트이지만 여러 RADOS 오브젝트에서 맵을 샤드할 수 있습니다.

맵 자체는 각 RADOS 오브젝트와 연관된 OMAP에 보관됩니다. 각 OMAP의 키는 오브젝트의 이름이며 값은 버킷을 나열할 때 표시되는 메타데이터인 해당 오브젝트의 일부 기본 메타데이터를 보유합니다. 각각의 OMAP는 헤더를 보유하고, 일부 버킷 어카운팅 메타데이터는 객체들의 수, 총 크기 등과 같은 헤더 내에 유지된다.

참고: OMAP는 확장된 속성이 POSIX 파일과 연관되는 방식과 유사한 방식으로 오브젝트와 연관되는 키-값 저장소입니다. 오브젝트의 OMAP는 오브젝트의 스토리지에 실제로 위치하지 않지만 정확한 구현은 보이지 않으며 Ceph Object Gateway에 중요하지 않습니다.

데이터

오브젝트 데이터는 각 Ceph Object Gateway 오브젝트에 대해 하나 이상의 RADOS 오브젝트에 보존됩니다.