관리 메뉴

Leo's Garage

[AWS] Storage And Data Base 본문

Study/AWS

[AWS] Storage And Data Base

LeoBehindK 2023. 11. 25. 20:45
728x90
반응형

Storage and DataBase

  • 스토리지 및 데이터 베이스의 기본 개념을 요약할 수 있다.
  • Amazon Elastic Block Store(Amazon EBS)의 이점을 설명할 수 있다.
  • Amazon Simple Storage Solution(Amazon S3)의 이점을 설명할 수 있다.
  • Amazon Elastic File System(Amazon EFS)의 이점을 설명할 수 있다.
  • 다양한 스토리지 솔류션을 요약할 수 있다.
  • Amazon Relational Database Service(RDS)의 이점을 설명할 수 있다.
  • Amazon DynamoDB의 이점을 설명할 수 있다.
  • 다양한 데이터베이스 서비스를 요약할 수 있다.

인스턴스 스토어 및 Amazon Elastic Block Store(Amazon EBS)

인스턴스 스토어 - 블록 수준 스토리지 볼륨은 물리적 하드 드라이브처럼 동작

  • Amazon EC2 인스턴스에 임시 블록 수준 스토리지를 제공, 인스턴스 스토어는 물리적으로 EC2 instance의 호스트 컴퓨터에 연결되어 있고, instance와 수명이 동일한
    디스크 스토리지이다. 인스턴스 종료 시, 인스턴스 스토어의 데이터가 손실된다.

Amazon EBS(Elastic Block Store) - EC2에서 사용할 수 있는 블록 수준 스토리지 볼륨을 제공하는 서비스

  • EC2 인스턴스를 중지, 종료하더라도 연결되 EBS 볼륨의 데이터를 사용할 수 있다.
  • EBS 볼륨을 생성하려면, 구성(볼륨의 크기, 유형)을 정의하고 볼륨을 프로비저닝한다. EBS 볼륨을 생성한 다음, 볼륨을 EC2 인스턴스에 연결할 수 있다.
  • EBS 볼륨은 보존해야 하는 데이터를 위한 것이므로, 백업이 중요하다. Amazon EBS 스냅샷을 생성하여 EBS 볼륨을 증분 백업할 수 있다.

EBS 스냅샷 - 증분 백업이다.

  • 처음 볼륨을 백업하면 모든 데이터가 복사된다. 이후에 백업에서는 가장 최근의 스냅샷 이후 변경된 데이터 블록만 저장된다.
  • 증분 백업은 백업이 실행될 때 마다 스토리지 볼륨의 모든 데이터가 복사되는 전체 백업과는 다르다. 전체 백업에는 가장 최근의 백업 이후 변경되지 않은 데이터도 포함된다.

Amazon Simple Storage Service(Amazon S3)

Object Storage(객체 스토리지) : Data, MetaData, Key

Data : 이미지, 동영상, 텍스트 문서 또는 기타 유형의 파일
MetaData : 데이터의 내용, 사용 방법, 객체 크기
Key : 고유한 식별자

볼륨 스토리지에서 파일 수정 시에는 변경된 부분만 업데이트된다, 하지만 객체 스토리지에서는 파일을 수정하면 전체 개체가 업데이트 된다.

Amazon Simple Storage Service(Amazon S3)

  • 객체 수준 스토리지를 제공하는 서비스, Amazon S3는 데이터를 버킷에 객체로 저장한다.

Amazon S3는 이미지, 동영상, 텍스트 파일 등, 모든 유형의 파일을 업로드할 수 있고, S3를 사용하여 백업 파일, 웹 사이트 용 미디어 파일을 저장할 수 있다. S3는 저장공간을 무제한으로 제공한다. 단 S3에 저장할 수 있는 객체의 최대 파일 크기는 5TB이다.

S3에 파일 업로드 시, 권한을 설정할 수 있으며 파일에 대한 표시 여부나 엑세스 제어도 가능하다.
S3의 버전관리 기능을 사용하여, 시간에 따른 객체 변경사항을 추적할 수도 있다.

Amazon S3 Storage Class

S3에서는 사용한 만큼만 비용을 지불하는데, 이때 비지니스 및 비용 요구 사항에 맞춰서 다양한 스토리지 클래스 중에서 선택이 가능하다. 고려할 점은 두 가지이다.

  • 데이터를 검색할 빈도
  • 필요한 데이터 가용성
  1. S3 Standard
    • 자주 엑세스하는 데이터용으로 설계
    • 최소 3개의 가용 영역에 데이터를 저장
    S3 Standard는 객체에 대한 고가용성을 제공, 웹사이트, 콘텐츠 배포, 데이터 분석 등 광범위한 사례에 적합
    S3 Standard는 자주 엑세스하지 않는 데이터 및 보관 스토리지를 위한 다른 스토리지 클래스보다 비용이 비싸다.
  2. S3 Standard-Infrequent Access(S3 Standard-IA)
    • 자주 엑세스하지 않는 데이터에 이상적
    • S3 Standard와 비슷하지만 스토리지 가격은 더 저렴하고 검색 가격은 더 높음
    S3 Standard-IA는 자주 접근하지는 않지만 필요에 따라 고가용성이 요구되는 데이터에 적합
    마찬가지로 최소 3개의 가용영역에 데이터를 저장한다.
    S3 Standard와 동일한 수준의 가용성을 제공하지만 스토리지 가격은 더 저렴하고, 검색 가격이 더 높다.
  3. S3 One Zone-Infrequent Access(S3 One Zone-IA)
    • 단일 가용 영역에 데이터를 저장
    • S3 Standard-IA보다 낮은 스토리지 가격단일 가용 영역에 데이터를 저장한다. 따라서 스토리지 비용을 절감하고 가용 영역에 장애가 발생하더라도 데이터를 손쉽게 재현할 수 있는 경우에 적합하다.
  4. S3 Intelligent-Tiering
    • 엑세스 패턴을 알 수 없거나 자주 변화하는 데이터에 이상적
    • 객체 당 소량의 월별 모니터링 및 자동화 요금을 부과
    S3 Intelligent-Tiering에서는 객체 엑세스 패턴을 모니터링한다.
    30일 연속 객체에 엑세스 하지 않으면 S3 Standard-IA로 이동한다.
    이 객체에 사용자가 접근하면 해당 객체를 S3 Standard로 이동한다.
  5. S3 Glacier
    • 데이터 보관용으로 설계된 저비용 스토리지
    • 객체를 몇 분에서 몇 시간 이내에 검색데이터 보관에 이상적인 저비용 스토리지 클래스이다. 고객 레코드나 이전 사진 및 비디오를 저장할 수 있다.
  6. S3 Glacier Deep Archive
    • 보관에 이상적인 가장 저렴한 객체 스토리지 클래스
    • 객체를 12시간 이내에 검색S3 Glacier와 이 클래스 중에 결정할 때 고려해야 할 사항은 보관된 객체를 얾마나 빨리 검색해야 하냐에 달려있다. S3 Glacier에 저장된 객체는 몇 분에서 몇 시간 이내에 검색할 수 있다. 하지만 이 클래스는 12시간 이내에 검색할 수 있다.

Amazon EBS와 Amazon S3 비교

EBS

  • 최대 16TB
  • EC2 intance 종료 후에도 생존
  • 기본적으로 SSD
  • HDD 옵션

S3

  • 무제한 스토리지
  • 최대 5TB의 개별 객체
  • 한 번 쓰기 / 여러 번 읽기 (WORM)
  • 99.999999999% 내구성

ex. 사진 어플리케이션의 경우 : 수백개의 동물 사진을 업로드 및 인덱싱하고 수천명의 유저가 동시 접근이 되어야 하는 경우
-> S3 사용 : 웹 지원, 리전 별 분산, 비용 절감 효과 제공, 서버리스

ex. 80GB의 오류를 수정해야할 동영상 파일이 있는 경우
-> 객체의 경우, 파일 중 수정이 필요할 때, 전체 업데이트가 필요하고 블록 스토리지는 변경된 부분만 업데이트하는 증분 업데이트가 가능하다. 따라서 이 경우에는 EBS를 적용하는 것이 유리하다.

Amazon Elastic File System(Amazon EFS)

파일 스토리지에서는 여러 클라이언트(예: 사용자, 어플리케이션, 서버 등)가 공유 파일 폴더에 저장된 데이터를 엑세스할 수 있다. 이 접근 방식에는 스토리지 서버가 블록 스토리지를 로컬 파일 시스템과 함께 사용하여 파일을 구성한다. 클라이언트는 파일 경로를 통해 데이터에 접근한다.

블록 스토리지와 객체 스토리지에 대해 비교하면, 파일 스토리지는 많은 수의 서비스 및 리소스가 동시에 데이터에 엑세스해야 하는 사례에 이상적이다.

Amazon Elastic File System(EFS)는 AWS 클라우드 서비스 및 온프레미스 리소스와 함께 사용되는 확장 가능한 파일 시스템이다. 파일을 추가 혹은 제거하면 EFS가 자동으로 확장하거나 축소된다. 어플리케이션을 중단하지 않고 온디맨드로 페타바이트 규모로 확장도 가능하다.

EBS vs EFS

EBS

- 단일 가용 영역에 데이터를 저장한다.
- EC2 intance에 EBS 볼륨을 연결하려면, 동일한 가용 영역에 상주해야 한다.

EFS

- EFS는 리전 별 서비스이고, 여러 가용 영역에 걸쳐 데이터를 저장한다.
- 중복 스토리지를 사용하면, 파일 시스템이 위치한 리전의 모든 가용 여역에서 동시에 데이터에 엑세스할 수 있다.
- 온프레미스 서버는 AWS Direct Connect를 사용하여 EFS에 엑세스할 수 있다.

Amazon Relational Database Service(Amazon RDS)

관계형 데이터베이스: 데이터가 다른 데이터 부분과 관련된 방식으로 저장된다.
정형 쿼리 언어(SQL)을 사용하여 데이터를 저장하고 쿼리한다.
이런 접근 방식은 데이터를 쉽게 이해할 수 있고, 일관되며 확장 가능한 방식으로 저장할 수 있게 한다.

Amazon Relational Database Service(Amazon RDS)는 AWS 클라우드에서 관계형 데이터베이스를 실행할 수 있는 서비스이다.

  • 하드웨어 프로비저닝, 데이터베이스 설정, 패치 적용 백업 등을 자동화하는 관리형 서비스이다.
  • 관리 작업 수행 시간을 줄이고, 데이터를 사용하여 어플리케이션을 혁신하는데 시간을 더 투자할 수 있다.
  • RDS를 다른 서비스와 통합하면 Lambda를 사용하여, 서버리스 어플리케이션에 데이터베이스를 쿼리하는 등, 비지니스 운영 요구사항을 충족할 수 있다.
  • RDS는 다양한 보안 옵션을 제공한다. RDS 데이터베이스 엔진이 저장 시 암호화(데이터가 저장되는 동안 데이터를 보호) 및 전송 중 암호화(데이터를 전송 및 수신하는 동안 데이터를 보호)를 제공한다.

Amazon RDS 데이터베이스 엔진

Amazon RDS는 메모리, 성능 또는 입/출력에 최적화된 6개의 데이터베이스 엔진에서 사용 할 수 있다. 지원되는 데이터베이스 엔진은 다음과 같다.

  • Amazon Aurora
  • PostgreSQL
  • MySQL
  • MariaDB
  • Oracle Database
  • Microsoft SQL Server

Amazon Aurora

해당 서비스는 엔터프라이즈급 관계형 데이터베이스이다. 이 데이터베이스는 MySQL 및 PostgreSQL 관계형 데이터베이스와 호환된다. 표준 MySQL 데이터베이스보다 최대 5배 빠르며 표준 PostgreSQL 데이터베이스보다 최대 3배 빠르다.

해당 서비스는 데이터베이스 리소스의 안정성 및 가용성을 유지하면서도 불필요한 I/O 작업을 줄여 데이터베이스 비용을 절감한다.

워크로드에 고가용성이 필요한 경우, Amazon Aurora를 고려하자. 이 데이터베이스는 6개의 데이터 복사본을 3개의 가용 영역에 복제하고 S3에 데이터를 백업한다.

Amazon DynamoDB

비관계형 데이터베이스: 테이블을 생성하고, 이 테이블은 데이터를 저장하고 쿼리할 수 있는 장소이다.

비관계형 데이터베이스는 행과 열이 아닌 구조를 사용하여 데이터를 구성하기 때문에 'NoSQL 데이터베이스'라고도 한다. 이 데이터베이스의 구조적 접근 방식 중 한 유형은 key-value pair이다.

key- value 데이터베이스에서는 언제든지 테이블의 항목에 속성을 추가하거나 제거할 수 있다.

Amazon DynamoDB는 key-value DB 서비스이다. 모든 규모에서 한 자릿수 밀리초 성능을 제공한다.

  • DynamoDB는 서버를 사용하지 않으므로, 서버를 프로비저닝, 패치 적용 또는 관리할 필요가 없다.
  • 또한 소프트웨어를 설치, 유지 관리, 운영할 필요도 없다.
  • 데이터베이스 크기가 축소 또는 확장되면 용량 변화에 맞춰 자동으로 크리를 조정하면서 동시에 일관된 성능을 유지한다.
  • 이러한 특징때문에 크기 변경 시에도 고성능이 필요한 사용 사례에 적합하다.

Amazon RDS vs Dynamo DB

Amazon RDS

  • 자동 고가용성, 복구 제공
  • 고객이 데이터 소유
  • 고객이 스키마 소유
  • 고객이 네트워크 제어

Dynamo DB

  • 키 값
  • 대규모 처리량 기능
  • 페타바이트 크기 확장 가능
  • 세분화된 API 확장 가능

Ex. 판매 공급망 관리의 약점을 분석할 때는 - RDS가 적절하다.

Ex. 1 외에 모든 예제는 Dynamo DB가 적절하다. 왜냐면 대부분 데이터를 룩업 데이터처럼 사용하는 경우가 많다. 이것을 관계형 디비에 넣를 수도 있지만 관리가 어렵고 사용 시 오버헤드가 발생할 수도 있다.

Amazon Redshift

이 서비스는 빅데이터 분석에 사용할 수 있는 데이터 웨어하우징 서비스이다. 이 서비스는 여러 원본에서 데이터를 수집하여 데이터 간의 관계 및 추세를 파악하는데 도움이 되는 기능을 제공한다

AWS Database Migration Service

AWS DMS(Database Migration Service) - 관계형 데이터베이스, 비관계형 데이터베이스 및 기타 유형의 데이터 저장소를 마이그레이션할 수 있는 서비스이다.

AWS DMS를 사용하면 원본 데이터베이스와 대상 데이터베이스 간에 데이터를 이동할 수 있다.
유형이 동일할 필요는 없고, 마이그레이션하는 동안에 원본이 계속 동작하므로 앱을 가동 중지하는 시간을 줄일 수 있다.

온프레미스에서 EC2 인스턴스 또는 RDS에 저장된 MySQL 데이터베이스가 있다고 가정하자. MySQL이 원본이라면, AWS DMS를 사용하여 Amazon Aurora DB와 같은 대상 DB로 마이그레이션할 수 있다.

AWS DMS의 다른 사용 사례

  • 개발 및 테스트 데이터 마이그레이션: 프로덕션 사용자에게 영향을 주지 않고, 개발자가 프로덕션 데이터에 어플리케이션을 테스트할 수 있도록 지원
  • 데이터베이스 통합: 여러 데이터베이스를 단일 데이터베이스로 결합
  • 연속 복제: 일회성 마이그레이션 수행이 아니라 데이터의 진행 중 복제본을 다른 대상 원본으로 전송

추가 데이터베이스 서비스

Amazon DocumentDB : MongoDB 워크로드를 지원하는 문서 데이터베이스 서비스

Amazon Neptune : 그래프 데이터베이스 서비스이며 이를 이용하여 추천 엔진, 사기 탐지, 지식 그래프와 같이 고도로 연결된 데이터 세트로 작동하는 어플리케이션을 빌드하고 실행할 수 있다.

Amazon Quantum Ledger Database(Amazon QLDB) : 어플리케이션 데이터에 발생한 모든 변경사항의 전체 기록을 검토할 수 있다.

Amazon Managed Blockchain : 오픈소스 프레임워크를 사용하여 블록체인 네트워크를 생성하고 관리하는데 사용할 수 있는 서비스, 블록체인은 여러 당사자가 중앙 기관없이 거래를 실행하고 데이터를 공유할 수 있는 분산형 원징 시스템이다.

Amazon ElastiCache : 자주 사용되는 요청의 읽기 시간을 향상시키기 위해 데이터베이스 위에 캐싱 계층을 추가하는 서비스. 이 서비스는 두 가지 데이터 저장소 Redis 및 Memcached를 지원한다.

Amazon DynamoDB Accelerator : DynamoDB용 인 메모리 캐시이다. 응답시간을 한 자리수 밀리초에서 마이크로초까지 향상 시킬 수 있다.

모듈 5 요약

  • Amazon EC2 instance store 및 Amazon EBS
  • Amazon S3
  • Amazon EFS
  • 관계형 데이터베이스 및 Amazon RDS
  • 비관계형 데이터베이스 및 DynamoDB
  • Amazon Redshif
  • AWS DMS
  • 추가 데이터베이스 서비스 및 가속기
728x90
반응형

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

[AWS] Monitoring and Analysis  (1) 2023.11.25
[AWS] Security  (1) 2023.11.25
[AWS] Networking  (1) 2023.11.25
[AWS] Global Infra And Stability  (1) 2023.11.25
[AWS] Cloud Computing  (0) 2023.11.25
Comments