본문 바로가기
클라우드

AWS S3

by asd135 2024. 10. 29.
728x90

Amazon S3 (Simple Storage Service)

최소의 3개의 가용 영역(단일 AWS 리전에 전원, 네트워킹 및 연결이 이중화되어 있는 개별 데이터 센터
클러스터)에 걸쳐 여러 디바이스에 객체를 중복 저장

 

높은 내구성 : 99.999999999%으로 데이터 손실 최소화(‘Eleven Nine’)
-물리적으로 분리된 3개 이상의 가용영역에 복제해서 저장
가용성: S3 클래스마다 다름

 

S3 use cases

1. 비정형 데이터
사진 및 이미지: JPEG, PNG, GIF 등의 형식.
비디오: MP4, AVI, MOV 등 다양한 비디오 파일.
오디오 파일: MP3, WAV, AAC 등의 오디오 형식.
2. 문서 및 파일
텍스트 파일: TXT, CSV, JSON, XML 등.
문서 파일: PDF, DOCX, PPTX 등.
3. 백업 및 아카이브 데이터
시스템 백업: 서버나 데이터베이스의 백업 파일.
장기 보관 데이터: S3 Glacier와 같은 스토리지 클래스를 사용한 아카이브 데이터.
4. 로그 파일
서버 로그: 웹 서버, 애플리케이션 서버의 로그 파일.
분석 로그: 데이터 분석 및 모니터링을 위한 로그.
5. 데이터베이스 스냅샷
DB 백업: 관계형 데이터베이스의 스냅샷이나 덤프 파일.
6. 머신러닝 데이터
훈련 데이터셋: 머신러닝 모델 훈련에 필요한 대량의 데이터.
모델 아티팩트: 훈련된 모델 파일 및 관련 데이터.
7. IoT 데이터
센서 데이터: IoT 장치에서 수집된 데이터.
8. 웹사이트 호스팅
정적 웹사이트 파일: HTML, CSS, JavaScript 파일을 사용한 정적 웹사이트.
9. 애플리케이션 데이터
애플리케이션 로그: 다양한 애플리케이션에서 생성된 로그 파일.
구성 파일: 소프트웨어의 설정 파일.

 

버킷(Buckets)

객체 저장 컨테이너로써, 최상위 디렉토리와 같은 개념 

버킷의 이름은 DNS 주소를 갖기 때문에 버킷 이름은 유일한 이름으로 설정해야함

 

객체(Objects)

버킷에 저장되는 데이터를 객체라고함

객체는 객체 키 를 가짐(고유 식별자)

 

s3://my-bucket/my_file.txt (파일 이름)

s3://my-bucket/my_folder/my_file.txt (폴더를 포함한 전체)

 

파일 갯수의 제한 없이 무제한으로 저장 가능

객체는 최대 5TB까지 저장 가능 크기가 5GB보다 크면 멀티 파트 업로드 사용

멀티 파트 업로드:병렬적으로 업로드함으로써 처리량 개선(성능 향상) 5TB = 5GB * 1000번


 

S3 Standard

  • 데이터를 검색할 때 요금 및 최소 사용량에 제한 없이 사용한 만큼 비용 지불
  • 최소 3개의 가용 영역에 데이터를 저장

S3 Standard - Infrequent Access 

  • 접속 빈도가 낮지만, 필요할 때 빠르게 접근하고 고가용성 유지해야 하는 데이터

S3 Intelligent Tiering

  • 액세스 패턴이 변동하는 데이터
  • 객체의 액세스 패턴을 자동으로 모니터링하여, 자주 사용되는 데이터(자주 사용 계층)와 비정기적으로 사용되는 데이터(비정기적 사용 계층)로 자동 이동

S3 One Zone-Infrequent Access (IA)

  • 비정기적으로 액세스되는 데이터로, 단일 가용 영역에 저장
  • 단일 가용 영역에 저장하기 때문에 데이터 손실 리스크가 있음

S3 Glacier Flexible Retrieval

  • 거의 접근하지 않는 데이터를 주로 오랫동안 보관하는 목적으로 사용

S3 Glacier Deep Archive

  • 거의 접근하지 않는 데이터를 주로 오랫동안 보관하는 목적으로 사용
  • 데이터 복원 시간이 12시간 이상 걸리며 가장 저렴함

 

EFS(Elastic File System)

  • 공유 파일 시스템
  • 여러 가용 영역에 데이터를 자동으로 복제하여 고가용성을 제공. 
  • AWS는 EC2, Lambda, ECS, EKS 등 다양한 서비스 제공하며, 필요에 따라 서로 연결해 주는 공유 시스템 필요
  • 각 서비스는 지정된 서브넷을 넘어 다닐 수 없음
  • NFS(Network File System) 프로토콜을 사용하여 파일 시스템에 접근, Linux 기반의 EC2 인스턴스에만 연결하여 사용할 수 있다.

EBS(Elastic Block Store)

  • Amazon EC2 인스턴스에서 사용하는 고성능 블록 스토리지 서비스(외장하드(HDD, SDD)개념과 비슷)
  • 여러 가용 영역에 데이터를 자동으로 복제하여 고가용성을 제공.
  • EC2 인스턴스가 종료되어도 데이터가 없어지지 않음

인스턴스 스토어(Instance Store)

 EC2 인스턴스에 임시 블록 스토리지 제공
• 인스턴스 생성 시 자동적으로 생성
• 물리적으로 부착되는 SSD
• 인스턴스 스토어는 EC2 인스턴스 요금에 포함되어 있으며, 별도의 저장 비용 발생x

일시적인 블록 스토리지로 EC2 인스턴스 종료시 데이터가 손실됨

단기적 목적인 버퍼, 캐시, 임시 콘텐츠 등의 자주 변경 되는 정보의 임시 저장에 적합

 

Storage Gateway

하이브리드 클라우드에서 온프레미스 데이터와 클라우드 데이터(S3)의 연결

스토리지 게이트 웨이 유형

  • File Gateway: NFS 및 SMB 프로토콜을 사용하여 파일 기반의 데이터를 S3에 저장

Volume Gateway

  • Cached Volumes:자주 사용하는 데이터는 온프레미스에 캐시되고, 나머지 데이터는 S3에 저장
  • Stored Volumes:모든 데이터를 온프레미스에 저장하고, S3에 백업

Tape Gateway: 가상 테이프를 통해 데이터를 백업하고, 저장된 데이터는 Glacier(장기 보관용 저렴한 스토리지)에 저장