상세 컨텐츠

본문 제목

MinIO 오브젝트 스토리지 에센셜 강의 자료 정리

> Tech

by Ryusstory 2025. 9. 11.

본문

이 포스트는 MinIO Object Storage Essentials 세션의 영상 4개에서 제공된 내용을 기반으로 하여, 블록 스토리지, 파일 스토리지, 객체 스토리지의 기본 개념과 특징을 정리한 것이다.
해당 세션들은 MinIO에서 제공한 자료이므로, 객체 스토리지 관점에 조금 더 초점이 맞춰져 있을 수 있다.(많이)

스토리지 종류별 기본 개념 정리

블록 스토리지

블록스토리지는 데이터를 고정된 크기의 블록 단위로 나누어서 저장한다.
하나의 파일은 여러 블록에 나뉘어서 저장되며, 블록들은 시스템 성능 최적화를 위해 물리적으로 떨어진 위치에 배치될 수 있다.
이 방식은 높은 일관성과 구조화를 제공하며, 메타데이터는 매우 제한적이다. iSCSI, Fiber, SATA, SAS 등의 프로토콜을 사용한다.
일반적으로 블록 스토리지는 HDD, SSD, NVMe 등 물리적 장치와 직접 연결되거나 SAN을 통해 구현된다.
파일 스토리지나 객체 스토리지의 기반 계층이 된다.

블록 스토리지 사용 사례

  • 물리적/VM 디스크: 서버의 부트 볼륨이나 추가적인 로컬 스토리지로 사용함
  • 공유 볼륨: 하나의 볼륨을 여러 서버에서 읽기 전용으로 공유.
  • 백업: 여러 고용량, 저비용 디스크를 모아서 백업 타겟으로 사용.
  • 고속 로컬 스토리지(SSD/NVMe): 플래시 최적화된 데이터베이스, 스크래치 리스크, 미디어 렌더링에 사용

파일 스토리지

파일 스토리지는 우리에게 익숙한 폴더/파일 구조를 제공한다. 파일 시스템(NTFS, XFS, EXT4 등)이 블록 스토리지 위에서 동작하며, 사용자는 파일과 디렉토리 단위로 데이터를 관리한다.
잠금(lock) 기능으로 여러 사용자의 동시 작업을 제한한다.
생성 날짜, 수정 날짜, 파일 크기 등의 제한적인 메타데이터를 지원한다.
SMB, NFS와 같은 프로토콜을 사용해서 네트워크 접근이 가능하다.

파일 스토리지 사용 사례

  • 기업 파일 공유: 대규모 파일 공유 시스템으로 여러 사용자가 PDF, 워드 등 중요한 정보를 저장할 수 있다.
  • 미디어 스토리지: 이미지, 비디오 등 대량 미디어를 저장. PC나 서버에서 쉽게 접근할 수 있음.
  • 웹 콘텐츠 관리: 프론트엔드 웹 서버에 전송할 정적 파일의 공유 공간으로 사용.

객체 스토리지

객체 스토리지는 데이터를 객체 단위로 저장하며, 각 객체는 데이터, 메타데이터, 고유ID를 포함한다.
객체는 분산된 샤드 형태로 저장되며, 요청시 재조립된다.
무제한에 가까운 메타데이터 확장이 가능해 고급 검색이 가능하고, 버전 관리를 통해 데이터 무결성을 제공한다.
REST API를 통해 접근하기 때문에 클라우드 환경과 잘 맞는다.
대표적으로 aws s3, google cloud storage, minio 등이 있으며, 무제한 확장성과 글로벌 복제 기능 덕분에 최근에는 파일스토리지가 담당하던 영역까지 점차 확대 적용되고 있다.

오브젝트 스토리지 사용 사례

  • 문서/파일 공유: 전통적인 파일 공유 시스템처럼 사용(드랍박스 같은 앱). 파일 스토리지보다 효율성과 확장성이 뛰어나 기업 파일 공유 시스템에 대한 대안이다.
  • 웹사이트: HTTP 액세스를 지원하므로, 정적 웹사이트를 완전히 호스팅 할 수 있음.
  • 백업/테이프 대체: 높은 확장성이라는 특징 덕분에 기존의 백업 및 아카이브 방법의 대안으로 사용됨.
  • 데이터 분석/AI/ML: 메타데이터 기능을 활용한 대규모 데이터 분석에 이상적임.

성능 고려사항

성능의 공통 요인

스토리지의 성능은 크게 세 가지의 요인에 의해 결정된다.

  • 물리적 한계 : SDD, HDD 등 하드웨어 매체의 속도
  • 네트워크 속도 : 원격 스토리지의 경우, 네트워크 속도(이더넷, 파이버 채널 등)에 의한 제약
  • 시스템 자원 : CPU, RAM 같은 서버 자원 및 프로토콜 오버헤드

스토리지 유형별 성능관련 특징

  • 블록 스토리지: 원시(raw) 스토리지 위에 파일 시스템(NTFS, XFS, ZFS, ext4 등)을 적용해야 하며, 이는 저널링, 압축 등 기능이 추가되면서 일부 오버헤드가 발생한다.
  • 파일 스토리지: NFS, SMB 등의 프로토콜 오버헤드와 메타데이터 한계로 인해 대규모 비정형 데이터 검색에는 비효율적임
  • 객체 스토리지: REST API 오버헤드는 낮으며, 메타데이터를 활용한 대규모 데이터 검색에 강점. CPU/RAM 보다는 네트워크/디스크 속도가 성능을 좌우함.

비용 고려사항

비용의 공통 요인

스토리지 비용은 다음 요소들을 종합적으로 고려해야 한다.

  • 프로토콜 속도 (TCP, SMB, NFS 등)
  • 스토리지 매체와 중복성 보장 방식 (RAID, EC 등을 위한 추가 요구조건)
  • 서버 자원 (CPU, RAM, RAID 카드 등 스토리지를 지원하기 위한 요구사항)
  • 시스템 관리 오버헤드

스토리지 유형별 비용 관련 특징

  • 블록 스토리지: 블록 스토리지는 고성능 하드웨어와 RAID 구성이 필요해 비용이 높고, 확장성 한계와 관리 비용 부담이 있다.
  • 파일 스토리지: 블록 스토리지 기반으로 인해 확장성이 제한되고, 관리 비용이 추가됨
  • 객체 스토리지: 범용 하드웨어와 Erasure Coding을 활용해 RAID없이 중복성 제공. 표준 REST API기반으로 확장이 용이하고 글로벌 배치가 저렴함

정리

유형 개념/특징 성능 비용 주요 사용 사례
블록 스토리지 데이터를 블록 단위로 저장, 낮은 추상화, 제한적 메타데이터 고성능, 파일시스템 적용 시 일부 오버헤드 발생 고성능 하드웨어·RAID 필요, 비용 높고 확장성/관리 한계 서버 디스크, 데이터베이스, VM, 고속 로컬 스토리지
파일 스토리지 폴더/파일 구조 제공, 제한적 메타데이터 프로토콜 오버헤드, 대규모 검색 비효율 블록 기반 한계로 확장성 낮고 관리비용 존재 기업 파일 공유, 미디어 저장, 웹 콘텐츠 관리
객체 스토리지 객체(데이터+메타데이터+ID) 단위 저장, REST API 기반, 무제한 확장성 네트워크/디스크 속도 영향, 메타데이터 활용으로 검색·확장성 우수 범용 하드웨어 + Erasure Coding, 글로벌 확장 저렴 클라우드 저장소, 백업/아카이브, 정적 웹, 데이터 분석/AI

관련글 더보기