Search

USD 의 object storage 모니터링 지표

문서번호 : 11-4359659

Document Information

최초 작성일 : 2026.03.26
최종 수정일 : 2026.03.26
이 문서는 아래 버전을 기준으로 작성되었습니다.
SinglestoreDB : 9.0.16

Goal

이 문서에서는 USD의 object storage와 로컬 디스크 간 데이터 upload 및 download 변화 추이를 관찰하는 방법을 설명합니다.

Solution

Unlimited Storage Database

USD (Unlimited Storage Database)는 데이터를 object storage에 저장하고, 로컬 디스크와 메모리에서 처리하는 구조로, 저장 공간과 처리 공간을 분리한 데이터베이스입니다. 데이터는 object storage에 저장되므로 로컬 디스크 크기에 제약받지 않고, object storage의 가용량(퍼블릭 클라우드 기준 사실상 무제한)까지 확장할 수 있습니다. 또한 데이터 압축과 비동기 업데이트를 통해 비용 효율성을 높이고, PITR(Point-in-Time Recovery)을 지원해 안정성을 확보합니다.
USD는 object storage, 로컬 디스크, 메모리로 구성된 3-tier 구조로 동작합니다. 따라서 일반적인 LSD(Local Storage Database)의 리소스 모니터링 항목뿐만 아니라, object storage와 로컬 디스크 간 데이터 이동에 대한 모니터링도 함께 필요합니다.
USD에서는 로컬 디스크 영역을 일종의 캐시로 사용하며, 이를 내부적으로는 blob cache 또는 Persistent cache라고 지칭합니다.

주요 모니터링 지표

아래 관측 지표는 v9.0.16 을 기준으로 확인된 지표입니다. 하위 버전의 엔진에서는 조회가 불가한 지표가 포함되어있을 수 있으니 참고하시기 바랍니다.
information_schema.MV_BOTTOMLESS_STATUS_EXTENDED
클러스터에 있는 모든 USD 에 대한 세부 정보를 제공하는 view 로 노드가 마지막으로 start 된 후부터 누적된 값이 조회됩니다. (노드를 restart 하면 reset되는 데이터)
컬럼명
설명
BACKGROUND_THREAD_UPLOADS
background 스레드가 수행한 업로드 수
INGEST_THREAD_UPLOADS
ingest 스레드가 수행한 업로드 수
UPLOADED_BYTES
object storage 로 업로드된 데이터 사이즈 (단위: bytes)
UPLOAD_QUEUE_WAIT_SECS
object storage 로 업로드가 지연되는 시간 (단위: secs)
BLOB_CACHE_DOWNLOADED_BYTES
blob 캐시가 object storage 에서 다운로드한 파일 사이즈 (단위: bytes)
BLOB_CACHE_DOWNLOADED_FILES
blob 캐시가 object storage 에서 다운로드한 파일 수
BLOB_CACHE_DOWNLOAD_MB_PER_SEC
blob 캐시가 object storage 에서 파일을 다운로드하는 속도 (단위: mb/sec)
BLOB_CACHE_EVICTED_BYTES
blob 캐시에서 삭제한 파일 사이즈 (단위: bytes)
BLOB_CACHE_EVICTED_FILES
blob 캐시에서 삭제한 파일 수
BLOB_CACHE_EVICTION_MB_PER_SEC
blob 캐시에서 파일을 제거하는 속도 (단위: mb/sec)
IS_BEING_RATE_LIMITED
API request 의 속도 제한 여부
NUM_SLOW_DOWNS
API request 가 속도 제한된 경우 속도 저하 발생 횟수
UPLOAD_QUEUE_WAIT_SECS
object storage 로 업로드가 지연되는 시간(초)
주의 - MV_BOTTOMLESS_STATUS_EXTENDED 조회 시 유의 사항
아래 컬럼은 object storage 에 직접 접근하여 값을 조회합니다. 따라서 네트워크 장애 또는 object storage 접근 불가 상황이 발생할 경우, 해당 컬럼을 포함한 쿼리는 응답이 지연되거나 hang 상태처럼 보일 수 있습니다. 따라서 해당 컬럼들을 포함한 조회 시 주의가 필요합니다. (참고 - MV_BOTTOMLESS_REMOTE_STATS 뷰의 모든 컬럼도 object storage 에 직접 접근하여 값을 조회)
CLEANUP_LSN
LOCAL_LOG_FILES
REMOTE_LOG_CHUNKS
LOG_FILE_LIST
REMOTE_SNAPSHOTS
SNAPSHOT_FILE_LIST
information_schema.MV_BOTTOMLESS_API_EVENTS 엔진에서 발생하는 모든 원격 API 호출에 대한 세부 정보를 제공하는 view로 노드가 마지막으로 start 된 후부터 가장 최근의 115,122개 이벤트만 저장됩니다. (노드를 restart 하면 기존 정보가 사라지는 휘발성 데이터)
컬럼명
설명
EVENT_TYPE
발생하는 API 이벤트 유형 (List / Delete / Upload / Download / Copy)
FILE_TYPE
API 이벤트가 처리하는 파일 유형 (Blob / Snapshot / Log Chunk / Milestone / Datetime to Version / Metadata / Backup Blob / Backup Snapshot)
EVENT_STATE
API 이벤트의 상태 (In Progress / Succeeded / Failed)
START_UNIX_TIMESTAMP
API 이벤트가 시작된 타임스탬프
TIME_TAKEN_SECS
API 이벤트 소요 시간(단위: secs)
COMPRESSED_BYTES
API 이벤트에서 처리되는 압축된 데이터의 크기 (단위: bytes)
UNCOMPRESSED_BYTES
API 이벤트에서 처리되는 압축되지 않은 데이터의 크기 (단위: bytes)
ERROR_CODE
API 이벤트의 오류 코드, 오류가 없으면 NULL
ERROR_MESSAGE
API 이벤트의 오류 메시지

References

History

일자
작성자
비고
2026.03.26
mk.kang
최초 작성