-
반응형
1 RDBMS
관계형 데이터 베이스 모델로 테이블, 행, 열을 구조화 한 데이터 베이스 모델로 미리 정의되어 있는 데이터를 저장하는데 적합하다.
모든 릴레이션(테이블)의 튜플에는 고유하게 식별 가능한 키인 기본키가 존재하며 외래키를 이용하여 다른 릴레이션과 연관짓는다.
2 NOSQL
관계형 테이블과 다른 방식으로 저장하는 데이터베이스로 주요 방법론으로 키-벨류, 문서, 그래프 등이 있다.
비정형 데이터를 저장하는데 적합하다.
3 차이점
RDBMS NOSQL 데이터 미리 정의되어 있는 데이터 저장 비정형 데이터 저장 확장성 미리 정의되어 있는 데이터만 저장할 수 있어 확장성이 제한됨 필요에 따라 마음껏 확장가능 ACID ACID를 준수하여 데이터의 무결성, 일관성을 준수 ACID를 준수하지 않을 수도 있음 4 특징
4.1 트랜잭션
데이터 베이스가 실행되는 단위
원자성 : 트랜잭션이 원자처럼 더이상 쪼개지지 않는 하나의 단위로 이루어져야 한다
- 전부 수행되거나 아예 수행되지 않아야함
일관성 : 트랙잭션이 실행되기 전과 후 모두 데이터베이스가 유효한 상태에 있어야함
고립성 : 하나의 데이터를 동시에 사용할 수 없게 하는 것
- 데이터가 수정중일땐 다른 트랜잭션이 수행되지 않게 락을 걸어 해결함
지속성 : 트랜잭션이 정상적으로 수행되면 DBMS가 책임지고 데이터베이스에 기록하는 성질
- 즉 불의의 사고(정전, 시스템 오류 등)에도 정상적으로 작동하게 하는 성질
4.2 키
슈퍼키 : 튜플을 고유하게 식별할 수있는 속성의 집합
후보키 : 튜플을 고유하게 식별할 수 있는 속성의 최소집합
기본키 : 튜플을 고유하게 식별 가능한 키(후보키중 선정)
대체키 : 기본키로 선정되지 않은 후보키
외래키 : 다른 릴레이션과 연관지을 수 있는 키로 다른 릴레이션의 기본키를 참조함

4.3 정규화
이상현상이 발생하는 릴레이션을 분해하여 이상현상을 없애는 것
제1 정규형 : 기본키가 존재하며 릴레이션에 속한 속성이 원자값 일 경우
- 원자값 : 논리적으로 더이상 분해될 수 없느 속성값 ex) 1,2,3 학년이 있으면 1, 2, 3학년은 각각이 원자값
제2 정규형 : 제1 정규형이고, 기본키가 아닌 속성이 기본키에 완전 종속인 것
- 학생번호, 강좌이름, 강의실, 성적 릴레이션이 있다고 가정하면 학생번호, 강좌이름이 후보키이고 성적은 완전종속이지만 강의실은 강좌이름만 있어도 존재할 수 있기에 부분종속이다.
제3 정규형 : 제2 정규형이고, 기본키가 아닌 속성이 A -> B -> C 즉 A -> C 의 관계를 만족하지 않는 것(비이행적 종속)
반응형'CS > DB' 카테고리의 다른 글
쿼리의 동작 과정 (0) 2024.11.23 SQL 논리적 실행 순서 (2) 2024.11.15 SQL문 정리 (0) 2023.02.23