AWS, S3

2020. 11. 8. 20:43BACKEND/AWS

반응형

안녕하세요 ❗️ 오늘은 AWS의 저장소인 S3에 대해 알아보도록 하겠습니다.

 

*****************  INDEX  *****************

 

🧺 S3❓ 

🌈 Storage Class

🌀 S3 Life Cycle

 

********************************************


🧺  S3❓

S3는 Simple Storage Service의 약자입니다.

 

이름에서 알 수 있듯이, 간단하게 사용할 수 있는 'Storage' 서비스이죠.

다양한 옵션과 환경으로 언제 어디서나 내가 원하는 파일을 접근할 수도, 저장할 수도 있습니다.

 

S3는 Bucket이라는 개념으로 데이터 스토리지를 위한 S3의 기본 컨테이너를 설정합니다.

S3는 각각의 리전 별로 Bucket을 생성할 수 있기 때문에 자신의 지역과 가까운 곳에 Bucket을 생성할 수도 있습니다.

덕분에 더 빠른 액세스 타임과 비용을 최적화할 수 있습니다.

또, 다른 지역에 접근할 때의 제약 조건을 해결할 수도 있죠.

 

Bucket은 네임스페이스를 갖고 있는데요. 접근할 Bucket에 대한 지역마다 구별자 정도로 이해하면 됩니다.

아래의 액세스 포인트의 작동방식은 참고하면 좋을 것 같아서 AWS S3 공식 문서에 있는 내용을 참조해보았습니다 ~.~

 

✔️ 작동 방식

 

 

Amazon S3 액세스 포인트는 S3의 공유 데이터 세트를 사용하여 애플리케이션에 대한 대규모 데이터 액세스 관리를 간소화합니다.
S3 액세스 포인트를 사용하여 버킷당 수백 개의 액세스 포인트를 쉽게 생성할 수 있습니다.
즉, 공유 데이터 세트에 대한 액세스를 프로비저닝하는 새로운 방식을 나타냅니다.
액세스 포인트는 고유한 호스트 이름과 액세스 포인트를 통해 생성된 모든 요청에 대해 특정 권한 및 네트워크 제어를 적용하는 액세스 정책을 사용하여 버킷으로의 사용자 지정된 경로를 제공합니다.

 

 

✔️ S3, 왜 사용할까❓ 

그런데, 왜 굳이 AWS 서비스를 사용해서 파일들을 저장하고 관리하는 것일까요❓ 

S3를 사용하면, 여러가지의 관리와 설정을 AWS가 해주기 때문에 상당히 편한 방법으로 파일을 관리할 수 있습니다.

 

어떤 장점이 있는지 같이 살펴볼까요❓ 

 

 

📌 가용성 + 내구성

 

S3는 데이터 내구성을 99.999999999%라고 표현합니다. 

이 말은 저장된 데이터에 대한 안전성이라고 생각하면 되는데요.

S3는 여러 시스템에 걸쳐 모든 S3 객체의 복사본을 자동으로 생성하고 저장하기 때문에,

하드디스크나 SSD에 저장하는 것보다 관리도 쉽고 안전합니다.

 

또, 연중 최대 99.99%의 객체 가용성을 제공하는데요.

연중에 사용할 수 있는 시간이 이만큼 보장되어있다는 의미입니다.

 

 

📌 비용 효율적인 스토리지 클래스

데이터의 용량, 수, 접근 시도 횟수에 따라 가격 책정을 다르게 할 수 있습니다.

다양한 액세스 수준에 맞춘 요금 제도를 지원하는 S3 스토리지 클래스 덕분인데요. 

이 부분은 아래에서 더 자세하게 알아보도록 하겠습니다.

 

 

🌈  S3 Storage Service

스토리지 서비스는 정말 말 그대로,,, 저장할 서비스들을 나타냅니다.

 

 

이제부터 Intelligent-Tiering, Standard-Infrequent Access, One Zone-Infrequent Access(S3 One Zone-IA), Glacier, Glacier Deep Archive에 대해 어떤 특징이 있는지와 언제 사용하면 좋을지에 대해 알아보도록 하겠습니다.

 

 

✔️ S3 Intelligent-Tiering 

이 스토리지 서비스는 두 개의 액세스 계층에 객체를 저장하여 저장합니다.

한 계층은 빈번한 액세스에 최적화되어 있고, 한 계층은 빈번하지 않는 액세스에 최적화되어있습니다.

액세스에 따라 이 두 계층에 나누어 관리를 해주는데요.

 

만약, 30일 동안 액세스를 하지 않는 객체(데이터)가 있다면 빈번하지 않은 액세스 계층으로 이동하여 관리합니다. 

액세스를 하게 되면 객체는 자동으로 빈번한 액세스 계층으로 옮겨지게 되죠. 

 

이 서비스를 사용하면, 자주 사용하면 자주 사용하는데로 아니면 자주 사용하지 않은 데로 요금이 청구되기 때문에 효율적인 객체 관리에 최적화되어있다고 생각할 수 있습니다.

 

 

✔️ S3 Standard-IA

S3 Standard-IA에서 IA는 Infrequent Access을 의미합니다.

자주 액세스하지 않는 데이터에 대한 스토리지 서비스를 의미하죠.

S3 Standard는 자주 액세스 하지는 않지만, 필요할 때 빠르게 액세스해야 하는 데이터에 적합한 스토리지 서비스입니다.

장기 스토리지나 백업 및 재해 복구 파일용 데이터 스토어에 이상적입니다.

 

 

✔️ S3 One Zone-IA

One Zone-IA는 자주 액세스 하지는 않지만 필요할 때 빠르게 액세스해야하는 데이터에 적합합니다.

단일 AZ에 데이터를 저장하여 Standard-IA보다 요금이 20% 적게 듭니다.

자주 액세스를 하진 않고 저렴한 옵션을 생각하면서, 가용성이나 복원력이 필요없는 고객에게 적합합니다.

 

 

✔️ S3 Glacier

데이터 보관을 위한 안전하고 내구력 있으며 저렴한 스토리지 클래스입니다.

Glacier는 빙하라는 의미를 담고 있는데요.

빙하처럼 꽁꽁 얼리는 데이터를 말합니다.

장기적으로 보관은 해야하지만, 액세스는 거의 하지 않는 데이터에 적합합니다.

예를 들어 회사에서 액세스는 거의 하지 않지만, 의무적으로 7년간 보관해야하는 증빙 서류에 대한 저장을 들 수 있습니다.

 

 

✔️ S3 Glacier Deep Archive

1년에 한두 번 정도 액세스하는 데이터의 장기 보존을 위한 안전하고 안정적인 객체 스토리지를 제공합니다.

회사의 중요한 데이터 자산을 오프라인에서 보호해야 하는 경우 또는 회사 정책, 계약 또는 규정 준수 요건에 따라 데이터를 장기적으로 보존해야 하는 경우에 적합합니다.

 

 

S3 Glacier와 S3 Glacier Deep Archive은 어떤 차이가 있을까요❓ 

 

  S3 Glacier S3 Glacier Deep Archive
긴급 검색 1~5분 -
표준 검색 3~5시간 12시간 이내
대량 검색 5~12시간 48시간 이내

 

위와 같이 검색 성능에 큰 차이가 있지만, 그만큼 Glacier Deep Archive는 가격이 정 - 말 저렴하다고 합니다.

 

 

 

🌀 S3 Life Cycle

S3 스토리지 서비스를 단 하나만 쭉 - 사용하는 것은 아닙니다.

비용을 고려하여 주기나 특정 기간에 맞춰 서비스의 종류를 변경할 수 있습니다.

 

하나의 스토리지 클래스에서 다른 스토리지 클래스로 자동 전환하거나 일정 기간 후에 자동으로 전환하거나 일정 기간 후에 자동으로 데이터를 삭제하여 스토리지 비용을 줄일 수 있는데, 이 개념을 S3 Life Cycle이라고 합니다.

 

참고로, 이 때 액세스를 하는 빈도에 따라 데이터의 수명을 구분지을 수 있습니다.

 

Hot data : 자주 액세스되는 데이터

Warm data : 액세스 빈도가 덜 빈번한 데이터

Cold data : 장기 백업 또는 아카이브 데이터

 

Life Cycle은 버킷에 첨부를 할 수 있고, 버킷에 모든 객체 또는 접두어로 지정된 객체에 적용할 수 있다는 큰 장점이 있습니다.

 

 

 

자, 이렇게 오늘은 S3이 무엇인지와 어떤 서비스들이 있는지를 알아보았습니다 🌝

반응형

'BACKEND > AWS' 카테고리의 다른 글

AWS EKS - Web Application (1)  (0) 2022.07.17
AWS CodeDeploy VS AWS Elastic Beanstalk  (0) 2021.02.07
AWS, IAM  (5) 2020.11.01
AWS Elastic Load Balancing  (0) 2020.10.25
AWS CloudWatch & CloudTrail  (0) 2020.10.18

Backend Software Engineer

Gyeongsun Park