데이터베이스(DB)란?
- 데이터의 집합 및 저장소
- 데이터 기반의 혁신, Big Data
- 체계적으로 구조화된 데이터의 집합
데이터베이스관리시스템(DataBaseManagementSystem)
- 데이터베이스를 운영하고 관리하는 소프트웨어
- (ex. MySQL, 오라클(Oracle), SQL 서버, MariaDB 등 )
데이터베이스관리시스템(DataBaseManagementSystem)의 종류
DBMS | 제작사 | 작동 운영체제 | 기타 |
MySQL | Oracle | Unix, Linux, Windows, Mac | 오픈 소스(무료), 상용 |
MariaDB | MariaDB | Unix, Linux, Windows | 오픈 소스(무료), MySQL 초기 개발자들이 독립해서 만듦 |
PostgreSQL | PostgreSQL | Unix, Linux, Windows, Mac | 오픈 소스(무료) |
Oracle | Oracle | Unix, Linux, Windows | 상용 시장 점유율 1위 |
SQL Server | Microsoft | Windows | 주로 중/대형 급 시장에서 사용 |
DB2 | IBM | Unix, Linux, Windows | 메인 프레임 시장 점유율 1위 |
Access | Microsoft | Windows | PC용 |
SQLite | SQLite | Android, iOS | 모바일 전용, 오픈 소스(무료) |
DBMS의 분류
계층형 DBMS
- 트리 형태의 계층 구조
- 변경이 힘들고 비 효율적
망형 DBMS
- 계층형 DBMS 개선
- 모든 구조를 이해해야 함
관계형 DBMS (Relational DBMS – RDBMS)
- 테이블(table)이라는 최소 단위로 구성되며, 이 테이블은 하나 이상의 열(column)과 행(row)으로 이루어 짐
SQL : DBMS 언어
SQL (Structured Query Language)
- 관계형 데이터베이스에서 사용되는 언어
네이버 클라우드 플랫폼의 데이터베이스 개요
관리형 클라우드 DBMS의 이해
관리형 클라우드 DBMS (Cloud SQL)
- 데이터베이스 관리 시스템(Database Management System)의 클라우드 기반 서비스
비관리형(Non-Managed)
- 사용자가 직접 DBMS 관리
- 인프라 운영, OS 설치 및 운영, 데이터베이스 솔루션 설치 및 운영까지 모두 담당
완전관리형(Fully-Managed)
- CSP(클라우드 벤더)사가 모두 관리
- CSP에서 제공하는 RDS 솔루션을 이용하는 경우
- 장비 운영, OS 설치 및 운영, 데이터베이스 솔루션 설치 및 운영까지 CSP에서 모두 담당
완전관리형(Fully-Managed) DBMS운영의 장점
- 시간과 비용을 절약
- 쉬운 구축과 운영
- 장애 시 자동 Fail-over(이중화)를 통해 서비스 중지 시간 최소화 가능
- DB의 읽기 요청이 많아 읽기 전용 DB를 마련했을 때 높은 효율성을 가짐
- DB백업과 디스크 용량 증설 등이 자동으로 진행되어 관리 포인트가 줄어듬
- DB전문가가 없는 경우에도 운영 가능
Cloud DB for MySQL
자동 Fail-Over 지원 및 사용자 환경에 맞는 구성 가능
- 최대 32vCPU에 256GB 메모리 지원, 6TB 자동 디스크 확장
- 자동 Fail-Over를 지원하며 최대 10대까지 복제 Slave ( Read Only ) 확장 가능
- Private Load Balancer를 이용해서 Read 부하 분산 가능
- 자동 백업 주기를 설정할 수 있으며, 최대 30일 백업 파일 보관
- 원하는 시간을 선택하여 DB 자동 복원
- 성능 모니터링 및 알람 기능 제공
- Multi-Zone 구성을 통해 가용성 유지
- Cloud DB for MySQL은 Standard 타입과 High-memory타입으로 제공(Classic)
- VPC 환경에서는 High CPU, Standard, High-memory 타입 제공
- 데이터 스토리지는 HDD,SSD 중 선택 가능
- 데이터 스토리지는 데이터베이스 데이터(테이블, 인덱스, 로그 등)의 데이터를 저장하는 스토리지
- 기본 10GB부터 10GB 단위로 최대 6000GB까지 자동 증가
- 고가용성이 지원되는 스펙과 Stand alone 형태로 생성 가능
- Public domain 부여를 통해 외부에서 접근 가능
- Secure zone 내 생성 가능 - Classic
- Secure zone에 생성된 Cloud DB for MySQL 서버는 Public domain을 제공하지 않음
Master DB Failover
- 콘솔에서 수동(Manual)으로 Failover를 실행 할 수 있습니다.
- 서비스 오픈 전에 Master DB 장애로 Failover가 발생하는 상황을 재현하여 Application에 영향이 없는지 사전에 점검을 할 수 있습니다.
DB Process 모니터링
- DB Server 연결하여 수행 중인 Query를 확인할 수 있습니다.
- Slow Query로그 외에도 특정 시점에 어떤 Query가 수행 중인지 확인할 수 있어 DB 상태를 점검하는데 도움을 받을 수 있습니다.
Stand Alone 백업
- Stand Alone 서버도 DB 백업을 사용 할 수 있습니다.
- 데이터가 삭제되어도 백업 보관일 설정 내에서 백업으로 데이터를 복구 할 수 있습니다.
- Stand Alone 일 경우 Slave 서버 생성 불가능, 고가용성 경우에만 Slave 서버 생성 가능
멀티존 지원
- Master DB 서버 2대를 서로 다른 Zone에 생성하여 높은 가용성 제공
- Master DB 서버는 같은 속성의 Subnet에 위치
- Public Subnet과 Private Subnet에 구성하는 것의 차이
- Public Subnet에 구성하는 경우 Public 도메인을 구성할 수 있으나 Private Subnet은 구성 불가
Cloud DB for MS-SQL
- 네이버 서비스에서 검증된 최적화된 설정을 통해 안정적으로 운영되며, 장애가 발생하면 자동으로 복구
- 설치 후 즉시 MSSQL과 OS 모니터링을 이용 가능
- MSSQL의 동작 상황을 그래프를 통해 손쉽게 확인 가능
- 1분 단위의 쿼리 레벨 성능 분석을 지원하여 서비스 성능과 안정성을 향상
- 안정적인 서비스 제공을 위해 장애 발생 시 자동 Fail-over 기능 제공 (Principal DB와 Mirror DB 총 2대 생성)
- Master, Standby와 같은 개
- 자동 백업(최대 30일)
- Standard 타입과 High-memory 타입을 제공(Classic)
- VPC 환경에서는 High CPU, Standard, High-memory 타입 제공
- 데이터스토리지는 HDD,SSD 에서 선택
- 데이터스토리지는 Cloud DB 생성 이후, 변경 불가능
- 데이터스토리지는 10GB부터 2TB까지 10GB씩 자동 확장
- 고가용성이 지원되는 타입과 Stand-alone 타입 선택 가능
- Stand-alone 타입으로 생성하였다가 고가용성 지원 타입으로 변경 가능
- 1분 단위의 쿼리 레벨 성능 분석 제공
- 자동 Fail-over 지원
- 기본적으로 Principal DB와 Mirror DB를 생성하여 Principal DB 서버 장애 시 Mirror DB로 자동 Fail-over
- Slave DB는 5대까지 추가 가능
Cloud DB for Redis
Redis 란?
- Remote Dictionary Server를 나타내는 Redis는 오픈 소스 기반의 NoSQL 데이터베이스 시스템
- 다양한 데이터 구조를 지원하고 메모리 내에서 데이터를 저장하여 빠른 속도와 성능을 제공하는 비관계형 데이터베이스
Redis의 성능
- 모든 Redis 데이터는 메모리에 상주하므로 데이터 액세스의 대기 시간을 낮추고 높은 처리량 보유
- 기존 데이터베이스와 달리 디스크로의 이동이 필요하지 않기 때문에 엔진 대기 시간이 줄어듬.
- 인 메모리 데이터 스토어는 더 많은 작업을 처리하고 더 빠른 응답 시간을 지원할 수 있습니다.
자동 복구를 통해 안정적으로 운영되는 완전 관리형 클라우드 인메모리 캐시 서비스
- Redis Cluster 제공
- VPC 내 Private Subnet에 구성
- 샤드 최소 3개 ~ 최대 10개, Shard 당 Slave node 구성은 최대 4개
- Config Group을 통해 설정 적용
- 고가용성 구성 지원
- CPU는 기본 4core만 제공
- 자동 Fail-over 기능을 독자적으로 개발하여 제공함으로써 장애발생 시에도 안정적인 서비스 제공
- 설치 후 Redis와 OS모니터링을 이용할 수 있으며 장애 또는 이벤트 발생 시 사용자의 메일, SMS로 장애 알람
- 자동 백업(최대 7일) 및 백업 데이터로 새로운 Redis 서비스 생성 가능
- 기본 포트 : TCP 6379
Cloud DB for MongoDB
NoSQL의 대표적인 MongoDB를 쉽고 간편하게 사용할 수 있는 완전관리형 서비스 (VPC Only)
- MongoDB 데이터베이스를 Sharding 과 Replica Set 방식으로 선택하여 손쉽게 구축하고 운영할 수 있는 상품
- 2TB 자동 디스크 확장
- 설치 과정 중 Sharding Cluster 와 Replica Set 방식 선택이 가능
- 최대 7대까지 Replica Set 확장 가능, 읽기 부하분산 기능 제공
- 설치 후 장애 또는 이벤트 발생 시 사용자의 메일, SMS로 장애 알람
'배운 내용 > 클라우드 교육' 카테고리의 다른 글
네이버 클라우드 실습2 - 서버 접속하기(MobaXterm) (0) | 2023.10.12 |
---|---|
네이버 클라우드 실습1 - 서버 만들기 (0) | 2023.10.12 |
10월11일(수) Storage (0) | 2023.10.11 |
10월10일(화) Compute&Network (2) | 2023.10.11 |
10월6일(금) 클라우드를 위한 기초 이론 (2) (1) | 2023.10.10 |