Database

RDBMS 개념 정리

devMarco 2018. 6. 18. 12:23

1. RDBMS(관계형 데이터베이스 관리 시스템)란 무엇인가?


RDBMS는 데이터 베이스 모델 중 하나인, 관계형 모델에 기반한
데이터베이스 관리 시스템이다.

2. 데이터 베이스 모델이란?

데이터베이스의 구조, 형식을 말한다.

계층형 모델, 네트워크형 모델, 관계형 모델 등이 있다.


3. 관계형 모델이란?

테이블 형태로 만든 데이터베이스 모델.

관계형 모델의 핵심은 '테이블'이다.
관계형 모델을 '테이블' 모델이라고 얘기해도 좋다.

여러 개의 테이블을 만들어 데이터를 저장하고,
정해진 SQL 문으로 데이터들을 다루게 된다.


키워드 : 테이블, 컬럼과 로우, 키와 밸류, 정규화

관계, 조인, 
테이블-테이블이 관계로 연결된다.


4. 관계형 모델에서의 관계는 어떤 의미지?

인간 관계, 상관 관계... 관계가 머리 속에 멤돈다.

데이터베이스에서의 '관계'는 이런 의미의 관계가 아니며,
영문 위키에는 DB에서의 relation이 따로 정의돼 있다.

데이터베이스에서의 관계는 (짧게 말하자면) 테이블이라고 할 수 있다.

테이블에서 로우는 데이터를 나타내며(엔티티), 컬럼은 속성값이 된다.

아래 테이블(관계)를 살펴보자.
ID (Integer)Name (String)Address (String)
102Yonezawa AkinoriNaha, Okinawa
202Murata MakotoSendai, Miyagi
104Sakamura KenKumamoto, Kumamoto
152Matsumoto YukihiroOkinawa, Okinawa
이 테이블(관계)는 두 가지 문장으로 표현할 수 있다.

  1. 3개의 컬럼(ID, Name, Address)과 4개의 로우를 가진 테이블이다. 
  2. 3개의 속성(ID, name, address)과 4개의 튜플을 가진 관계다.

두 문장은 같은 의미의 문장이다. 
일반적으로 개발할 때에는 1번의 워딩을 많이 사용해서 더 친숙했다.



5. 데이터 베이스 관리 시스템(DBMS)이란?

데이터베이스를 생성, 삭제, 수정, 추출할 수 있는 시스템


6. 어떤 RDBMS 제품들이 있는가?

db 랭킹 사이트 - 인기순위 보여줌. 상업 / 오픈소스 별 랭킹도 확인 가능.

블로그 레벨 분석 참고자료


mySQL

mariaDB

postgreSQL

Ms SQL server

MS Access
SQLite

IBM DB2

Oracle DB

Sybase

Teradata?

  • RDBMS는 제품도 많지만, RDBMS 성능 측정을 위한 벤치마크 툴도 수없이 많았다.
어떤 제품을 어떻게 벤치마크할지 신중히 검토할 것.

위키에만 수십 개의 RDBMS 제품 존재

RDBMS와 noSQL



궁금한 키워드 정리

MVCC? 쿼리 캐시? 쿼리 플랜 캐시?

DB 튜닝은 어떻게 하지?

제품마다 어떤 설계 차이가 있을까?