본문 바로가기

DevOps/AWS

[AWS] Amazon RDS

데이터 베이스

  • 여러 사람에 의해 공유되어 사용될 목적으로 통합하여 관리되는 데이터의 집합
  • 정보를 구조화하여 빠르고 효율적인 검색 및 갱신이 가능하도록 구성
  • DBMS를 통하여 관리됨 : 일관성/무결성 보장
  • SQL 통한 표준화된 접근 지원
  • 다중 사용자의 접근 지원

데이터 베이스 트랜잭션의 안전한 수행을 위해 지켜야할 원칙 ACID

  • A : Atomic(원자성) # A가 B에게 돈을 100만원을 출금한다. 그럼 동시에 B도 입금이 되어야 한다
  • C : Consistancy (일관성) # 지켜야할 원칙들은 지켜져야한다. A라는사람의 계좌에 10만원 있는데 50만원을 출금을 한다. 안되야하는데 -40 잔고가 찍히고 50만원이 출금이 된다. 무한정 돈이 빠져 나간다면 일관성을 위반한다. ( 지켜야할 원칙을 지키지 못하였다.
  • I : Isolation (격리성) # 어떠한 작업에 의해서 격리가 있어야함. 서로간의 작업이 서로 영향을 주지 말아야한다. A라는 사람의 계좌에 C와 B가 동시에 입금을 하려고 한다. 진짜 우연히 동시에 보내서 B의 작업이 묻혀버림. 이렇게 되면 안된다.
  • D : Durability (내구성) # 작업에 대한 결과가 온전히 유지가 되어야 한다.

RDBMS

RDBMS 소개

  • Relational Database Management System # 관계형 데이터 베이스
  • 데이터베이스의 데이터 간 사전에 정의된 관계가 있는 데이터 항목의 모음
  • 구성 요소
    • 데이터 테이블 : 열과 행으로 구성 # 컬럼과 레코드
    • 기본 키(Primary Key) : 데이터의 각 행을 구분하기 위한 키
    • 외래 키(Foreign Key) : 여러 테이블에 있는 행들을 상호 연결하기 위한 키
    • SQL(Structured Query Language) : RDBMS의 표준 검색 언어 #
  • 주요 RDBMS
    • Oracle, MySQL (Oracle)
    • SQL Server (Microsoft)
    • PostgreSQL
    • MariaDB

Amazon RDS

AWS에서 클라우드 데이터베이스 서비스 선택

  • Amazon EC2 인스턴스에 직접 DB설치
    • 기존 On-Premise에 사용하던 데이터베이스를 그대로 사용
    • 라이선스에 주의(별도로 클라우드용 라이선스를 운영하는 경우가 있음)
  • AWS에서 제공되는 관리형 데이터베이스 사용
    • Amazon RDS : 관계형 데이터베이스
    • Amazon DynamoDB : NoSQL 기반의 중단 없는 확장성을 제공하는 데이터베이스
    • Amazon RedShift : 대용량 병렬 페타바이트급 데이터웨어하우스 (DataWarehouse) 서비스

Amazon RDS 소개

  • AWS클라우드에서 관계형 데이터베이스 간편하게 설정/운영/확장 가능한 서비스
  • AWS의해 관리
    • 하드웨어 프로비저닝
    • 데이터베이스 설정
    • 패치/백업
    • 장애대응/재해복구
  • Amazon RDS에서 지원하는 DBMS제품
    • Amazon Aurora : MySQL 및 PostgreSQL 호환
    • MySQL
    • PostgreSQL
    • MariaDB
    • Oracle Database
    • SQL Server

Amazon RDS 특징

  • 지원하는 데이터베이스 중 선택하여 구성할 수 있는 관계형 데이터베이스
  • 관리 용이 : 직접 인프라 구성 수행 없이 DB 구성 가능
  • 백업 및 복원 : 자동 설정을 통한 백업 및 복구 지원. 스냅샷을 통한 DB생성
  • 가용성 및 내구성 : 안정성이 뛰어난 인프라 제공(멀티 AZ)
  • 다양한 성능 지원 :SSD 스토리지 지원. 스토리지 옵션을 통해 I/O 성능 조정
  • 보안 : RDS 암호화 옵션을 통한 암호화 기능 제공
  • AWS Database Migration Service : 동종 또는 이종 dbms간 데이터마이그레이션
  • Free Tier 제공
    • MySQL, PostgreSQL, MariaDB, Oracle BYOL, SQL Server 지원
    • RDS 인스턴스 단일 AZ, db.t2.micro 인스턴스 750시간
    • 12개월 이후 종료