티스토리 뷰
S3, EBS, EFS 모두 Amazon에서 제공하는 파일 저장 공간 서비스이다. 각 서비스를 특징 별로 구분하여 살펴보자.
Keyword
S3
객체 단위 스토리지 / 저렴한 비용 / 어디서나 접근 가능
EBS
블록 단위 스토리지 / 가장 빠름 / 단일 인스턴스에만 부착 가능
EFS
파일 기반 스토리지 / 네트워크를 통한 파일 데이터 공유 / 여러 인스턴스에서 접근 가능
S3 / EBS / EFS 비교표
Amazon S3 | Amazon EBS | Amazon EFS | |
스토리지 유형 | Object Storage | Block Level Storage | Shared File Storage |
Latency (지연/대기 시간) | 낮음 | 가장 낮고 일관됨 | 낮고 일관됨 |
Read/Write 속도 | Read는 빠르지만 Write는 느림 | Read/Write 매우 빠름 | Read/Write 빠름 |
데이터 수정 | 수정 불가 덮어쓰기로 처리 |
수정 가능 | 수정 가능 |
비용 | 비교적 저렴 | 평균 | 비교적 비쌈 |
가용성 | 여러 AZ에 중복 저장 | 단일 AZ에 중복 저장 | 여러 AZ에 중복 저장 |
액세스 | 웹을 통해 어디서나 접근 가능 | 하나의 AZ에 속한 하나의 인스턴스에서만 접근 가능 | 하나~수천 개의 여러 인스턴스에서 접근 가능 |
EC2에 마운트 | 불가 | 가능 | 가능 |
호환성 | 낮음 | 높음 | 높음 |
사용 환경 | - Write once Read many times - 빈번한 업데이트가 요구되지 않는 환경 - 정적 웹사이트 호스팅 지원 |
- 빈번한 Read/Write 환경 - 단일 인스턴스에 고성능 스토리지 서비스가 필요한 경우 |
- 빈번한 Read/Write 환경 |
상세 설명
Amazon S3 (Simple Storage Service)
사실상 용량 제한 없음 (파일 사이즈 고려하지 않아도 됨)
정적 웹 호스팅을 위한 파일이나 로그 파일 등 빈번한 업데이트가 없는 파일을 저렴하게 관리하고 싶을 때 용이
OS나 DB처럼 빠르고 빈번한 R/W 작업이 요구되는 환경에는 적합하지 않음
에러가 많고, 파일 Sync가 맞지 않는 경우도 있음
Amazon EBS (Elastic Block Storage)
EC2에서 사용하도록 설계된 사용하기 쉬운 고성능 블록 스트리지 서비스
EC2에 기본적으로 붙어 있다.
S3나 EFS와 달리 독립형 스토리지가 아니라 EC2와 함께 사용된다.
인스턴스에는 볼륨을 여러 개 연결할 수 있지만, 볼륨에는 하나의 인스턴스만 연결 가능
EC2 인스턴스에 사용할 영구 데이터를 저장할 때 사용 (물리적 디스크 드라이브와 유사한 역할)
빠른 Read/Write 속도
EBS 생성 시, 특정 AZ에 배치되며 그곳에서 자동으로 복제된다. (단일 AZ에 중복 저장)
프로비저닝 된 크기의 볼륨에 데이터를 저장하며, 한 번 늘어난 볼륨을 다시 줄일 수 없다.
Amazon EFS (Elastic File System)
클라우드 서비스, On-Premise 리소스에서 사용할 수 있는 간단하고 확장 가능한 완전 관리형 NFS 파일 시스템
사실상 용량 제한 없음 (파일 사이즈 고려하지 않아도 됨)
다양한 서버에서 하나의 파일 시스템으로 데이터를 공유하고 싶을 때 사용
여러 인스턴스가 EFS에 동시 액세스할 수 있음 (공유 가능)
여러 AZ에 복제되어 EBS보다 더 높은 가용성 자랑 (어느 AZ든 접근하여 마운트 가능)
Site-to-Site VPN 혹은 DX와 연결되어 있으면 On-Premise와 연결 가능
VPC 내 EC2 인스턴스는 직접 액세스 할 수 있다.
Block Level Storage VS. Object Storage
Block Level Storage
여러 블록으로 나뉘어 있는 형태의 스토리지. 파일을 수정하면 해당 블록 몇 개만 일부 변경된다. 모든 블록을 업데이트하지 않아도 된다는 말이다. 때문에 Block Level Storage는 빠른 속도를 자랑한다. Read/Write가 빈번한 환경에 적합하다.
Object Storage
파일이 수정되면 새로운 Object로 인식하여 기존 파일은 지워지고 새로운 파일로 대체된다. 따라서 데이터를 수정하는 경우 비교적 시간이 오래 걸린다. Read/Write가 빈번하지 않은 환경에 적합하다.
'AWS' 카테고리의 다른 글
[AWS] Concierge / CloudFormation / Manage Console (0) | 2023.02.25 |
---|---|
[AWS] CloudFormation이란 (0) | 2023.02.23 |
[AWS] Trusted Advisor란? 검사(평가) 카테고리 (0) | 2023.02.20 |
[AWS] Lambda란? Serverless 컴퓨팅 인프라 구축 (0) | 2023.02.20 |
[AWS] 온프레미스를 클라우드에 연결하는 방법 2가지 (0) | 2023.02.19 |