RDS(Relational Database Service) 란?
데이터베이스는 크게 "관계형 데이터베이스(RDBMS)"와 "NoSQL" 두 가지로 나눌 수 있다.
관계형 데이터베이스 서비스를 말하며, AWS에서 제공해주는 인스턴스다.
관계형 데이터베이스는 행과 열로 이루어져 있는 2차원 테이블 구조이다.
테이블 구조에 데이터를 넣고,꺼내고,지우고,업데이트 하는 작업을 처리한다.
AWS RDS에서 제공하는 대표적인 데이터베이스
- Microsoft SQL Server
- Oracle
- MySQL
- PostreSQL
- Amazon Aurora (고성능 관계형 데이터베이스) - 프리티어 제공 X
- MariaDB
데이터베이스 관련 용어
- 데이터베이스 : 하나, 혹은 여러 개의 테이블을 생성하고 관리하는 공간
- 테이블(Table) : 행과 열로 구성되어 있는 데이터 저장공간
- 데이터(Row) : 하나의 데이터를 구성하는 기본값
- 필드(Column) : 특정한 속성값
데이터 웨어하우스(Data Warehouse)
데이터 웨어하우스는 데이터를 관리하는 시스템 유형이다.
주로 BI 관련 업무 뿐만 아니라 데이터 분석 작업을 지원한다.
테이블마다 서로 관계를 형성하고 관계 속에서 인사이트를 발굴하여 방대한 데이터를 쿼리를 통해 수행한다.
데이터베이스와 데이터 웨어하우스 차이
- 데이터베이스는 데이터를 담고 있는 테이블을 물리적으로 보관하는 장소를 말한다.
- 데이터 웨어하우스는 하나 혹은 여러개의 소스로부터 데이터를 수집하여 보관하는 규모가 큰 데이터 수집장소를 말한다.
*(소스란? 다른 데이터베이스 일수도 있고, 다른 클라우드 플랫폼 일수도 있다. 데이터를 가지고 오는 원천 데이터 저장장소를 말한다.)
OLTP와 OLAP
OLTP(online transaction processing)
OLTP는 데이터가 실시간으로 데이터베이스에 보관하고 즉시 꺼내고 프로세싱하고자 하는 업무에 사용되는 프로세스 구조이다.
- 예시) 온라인 쇼핑몰에서 실시간으로 물건을 구입할 때 영수증을 발행하면 트랙잭션 데이터가 생성된다.
OLAP(online analytical processing)
다차원 데이터 분석을 할 때 유용한 프로세스이다.
- 빅데이터를 한 번에 불러오고 가공 분석처리할 때 유용하게 설계되어 있는 구조이다.
- 실시간 처리가 아닌 시계열 자료를 불러올 때 주로 사용된다.
RDS 자동백업 기능
자동백업은 특정 시간으로 데이터베이스 상태를 복원할 수 있다. (디폴트 값은 7~35일까지 설정 가능하다.)
- 복원 기능을 사용하기 위해 스냅샷과 트랜잭션 로그(transction log)를 생성한다.
- 자동 백업 정보는 S3버킷에 저장한다. RDS 인스턴스 크기에 따라 무료로 사용할 수 있는 S3 공간이 책정된다.
만약, RDS의 크기가 10GB라면 S3버킷은 최대 10GB까지 무료로 사용 가능하다.
RDS 스냅샷
스탭샷이란 데이터베이스 인스턴스를 통으로 복사한다고 이해하면 된다.
인스턴스에는 스토리지 볼륨정보, 파일크기, 스냅샷이 만들어진 시간 등 수 많은 정보가 담겨 있다. 특정 순간의 상태를 보존하고 싶을 때 스냅샷을 이용할 수 있다.
스냅샷의 장점
원본 RDS 인스턴스를 삭제해도 스냅샷은 존재하기 때문에 스냅샷을 통해 기존 인스턴스를 살릴 수 있다.
RDS 데이터베이스 백업
원본 인스턴스에서 백업을 생성할 경우 새로운 인스턴스가 생성된다.
원본과 백업 인스턴스는 이름만 다른 것이 아니라 엔드포인트 자체가 다르다.
원본 인스턴스는 original이 앞에 붙고, 백업 인스턴스는 restored가 붙기 때문에 이 둘은 서로 다른 객체로 분리된다.