본문 바로가기

T아카데미/데이터베이스

21강. SQL Advanced 8

[ 목차 ]

1. 대형 데이터베이스의 필요성

2. VLDB (Very Large DBMS)

3. 스케일업

4. 스케일아웃

5. Not Only SQL

6. NOSQL의 분류

7. 스키마리스

 

1. 대형 데이터베이스의 필요성

1) 계속 늘어나는 데이터 -> 한 대의 DBMS 서버로는 처리능력의 한계

2) 성능 업그레이드 필요

3) HDD - > SSD -> 인 메모리 머신

 

2. VLDB (Very Large DBMS)

1) 샤딩 : DBMS 내용을 분할(DB/테이블)해 여러 곳에 저장하는 것으로, 쓰기 성능이 향상

2) 복제 : 동일한 DBMS를 여러 개 유지(마스터/슬레이브)하는 것으로, 읽기 성능 향상

 

3. 스케일업

1) 보통 말하는 업그레이드를 포함

2) CPU 클럭속도 증가, 코어 수 증가, 메모리 증가

3) 보통 성능증가에 비해 가격증가가 더 빠르기 때문에 비용이 부담

4) 병렬컴퓨팅/전용 네트워크

5) Tiglely-Coupled System

 

4. 스케일아웃

1) 동일한 서버/DBMS를 병렬로 구축

2) 분산컴퓨팅

3) Loosely Coupled System -> 상대적으로 저렴

4) 노드 수 추가하여 계속 성능 향상 가능하나 효율을 상대적으로 떨어짐

 

5. Not Only SQL

1) 일반 RDBMS가 주로 읽기/검색성능에 최적화

2) 쓰기성능이 중요한 응용의 경우 좋은 성능을 보이는 경우가 많음

3) 로그 머신, SNS메신저 등

4) 기존 RDBMS를 완전히 대체하는 것이라기 보다 보완제의 역할

5) 특정 기술을 말하는 것이 아닌 일련의 제품군을 지칭(MongoDB, Apache, Redis

 

6. NOSQL의 분류

1) CAP 이론을 이용한 분류

  1] C 일관성 : 어떤 노드를 접근하더라도 데이터 값이 동일

  2] A 가용성 : 노드 일부가 Fail 되더라도 서비스가 중단되지 않음

  3] P 파티션 내성 : 노드간 통신에 장애가 생겨도 문제가 없음

  4] 어떤 시스템도 3가지 모두를 만족시킬 수 없음

  5] CA : 일반 RDBMS, CP : Hbae, MongoDB, Redis, AP : Cassandra

2) 저장형태에 따른 분류

  1] 키/벨류 : 키값을 주면 벨류를 리턴하는 형태로 JSON과 유사한 형태, Redis

  2] 정렬된 키/벨류 : 키값으로 정렬되는 형태, Hadoop, Cassandra, HBase

  3] 도큐먼트 형태 : 벨류값이 JSHON/XML문서인 형태, MongoDB

 

7. 스키마리스

1) 스키마 기반이 아니기에 필요하면 새로운 칼럼을 추가 가능

2) 전체적으로 동일한 구조가 아닐 수 있음

3) RDBMS : 정규형 데이터

4) NoSQL : 반정규형 데이터

5) 검색엔진 : 비정규형 데이터

'T아카데미 > 데이터베이스' 카테고리의 다른 글

데이터베이스 이수증  (0) 2020.03.27
20강. SQL Advanced 7  (0) 2020.03.27
19강. SQL Advanced 6  (0) 2020.03.27
18강. SQL Advanced 5  (0) 2020.03.27
17강. SQL Advanced 4  (0) 2020.03.25