[AWS] Part3. DB(RDS, DocumentDB, DynamoDB)

MINJI·2024년 10월 28일

☁️ AWS 클라우드

목록 보기
3/14
post-thumbnail

⭐ RDS

1. RDS란?

Relational Database Service, 관리형 데이터베이스 서비스
사용자가 복잡한 데이터베이스 관리 작업 없이 데이터베이스를 쉽게 설정, 운영 및 확장할 수 있도록 도와줍니다

  • DB 인스턴스는 클라우드에서 실행하는 격리된 데이터베이스 환경
  • DB 인스턴스에는 여러 사용자가 만든 데이터베이스가 포함될 수 있으며, 독립 실행형 데이터베이스 인스턴스에 액세스할 때 사용하는 도구 및 애플리케이션을 사용해 액세스할 수 있음
  • AWS 명령줄 도구, Amazon RDS API 작업 또는 AWS Management Console을 사용해 간단히 DB 인스턴스를 만들고 수정할 수 있음
  • 직접 시스템 로그인 불가능
  • RDS는 serverless가 아님

2. RDS 실습

  1. aws 서비스 검색창에 RDS 검색하고 데이터베이스 파트에 데이터베이스 생성 버튼 클릭
  2. 엔진 옵션 MySQL 로 설정
  3. 템플릿은 프리티어 옵션으로 선택, 나중에 개발할때는 개발/테스트 or 프로덕션 옵션으로 하면 될듯
  4. DB 인스턴스 이름 설정, 마스터 사용자 이름 설정, 마스터 암호 설정
  5. 테스트용이니까 일단은 퍼블릭 액세스를 ‘예’ 선택하고 데이터베이스 생성 버튼 클릭
  6. 5분정도 기다리면 상태가 생성중 → 사용 가능으로 바뀌고 DB 생성 완료!

  7. 생성된 DB를 클릭한다
  8. VPC보안 그룹을 클릭한다
  9. 보안 그룹 ID를 눌러 인바운드 규칙을 확인한다. MYSQL(3306)에 대한 규칙이 있는지 확인한다.
  10. 없으면, 인바운드 규칙 편집 버튼을 눌러 MYSQL에 대한 규칙을 저장해준다

  11. 인바운드 규칙에 포트 범위가 3306이 있어야 JDBC에 연결할 수 있는 상태가 된다

⭐ DocumentDB

1. DocumentDB란?

AWS에서 제공하는 관리형 문서 데이터베이스 서비스

  • JSON 형식의 문서로 데이터를 저장
  • MongoDB와 호환성을 제공
  • 수평 확장을 지원하여, 필요에 따라 데이터베이스의 용량을 쉽게 증가시킬 수 있습니다. 읽기 전용 복제본을 추가하여 읽기 작업을 분산시킬 수 있습니다.
  • Multi-AZ 배포를 통해 고가용성을 제공하며, 데이터베이스 인스턴스가 장애가 발생할 경우 자동으로 복구됩니다. 또한, 데이터는 여러 가용 영역에 복제되어 안전하게 저장됩니다.

2. MongoDB란?

오픈 소스 문서 지향 데이터베이스 관리 시스템(DBMS)

  • NoSQL 데이터베이스
  • 데이터 중복이 발생할 수 있지만 접근성과 가시성이 좋다
  • 스키마 설계가 어렵지만, 스키마가 유연해서 Application의 요구사항에 맞게 데이터를 수용할 수 있다.
  • 분산에 대한 솔루션을 자체적으로 지원해서 Scale-out이 쉽다
  • 확장시 Application을 변경하지 않아도 된다

⭐ DynamoDB

1. DynamoDB란?

AWS에서 제공하는 완전 관리형 NoSQL 데이터베이스 서비스

  • 데이터를 Key-Value 기반으로 저장하거나 JSON 문서 형식으로 관리할 수 있어, 유연한 데이터 구조 제공
  • (Auto-Scaling) 수평 확장을 통해 대량의 데이터를 처리할 수 있습니다. 읽기 및 쓰기 요청량이 증가하면 자동으로 처리 용량을 조정합니다.
  • AWS가 데이터베이스 서버 운영, 소프트웨어 패치, 백업 등을 자동으로 관리

0개의 댓글