3강. 관계형 데이터베이스
추천글 : 【데이터베이스】 데이터베이스 목차
a. 정규화
1. 개요 [목차]
⑴ 관계형 데이터베이스(RDBMS) : 표를 통해 구현된 데이터베이스
⑵ 릴레이션(relation) : 관계 데이터 모델에서 표 자체
⑶ 속성(attribute) : 릴레이션을 구성하는 각 열
⑷ 튜플(tuple) : 릴레이션을 구성하는 한 행
⑸ 도메인(domain) : 하나의 속성이 가질 수 있는 값의 범위
⑹ 릴레이션 스키마(relation schema) : 릴레이션 스킴 또는 릴레이션 내포(intension)라고도 함
① 릴레이션 이름과 속성 이름의 집합 : 구조를 지칭하기도 함
⑺ 릴레이션 인스턴스(relation instance) : 릴레이션에서 어느 시점까지 입력된 튜플들의 집합
⑻ 차수(degree) : 릴레이션을 구성하는 속성의 수
⑼ 카디널리티(cardinality) : 릴레이션을 구성하는 튜플의 수
⑽ 관계(relationship) : 외래키를 통해 참조하는 릴레이션과 참조되는 릴레이션의 연결
① A와 B가 1 : 1 관계 : A의 기본키를 B에 외래키로 추가하거나 B의 기본키를 A에 외래키로 추가
② A와 B가 1 : N 관계 : A의 기본키를 B에 외래키로 추가하여 표현
③ A와 B가 N : M 관계 : A와 B의 기본키를 모두 포함하는 별도 릴레이션(교차 릴레이션 or 교차 엔티티) 생성
⑾ 인덱스
① 클러스터 인덱스(cluster index) : 레코드의 물리적 순서가 인덱스의 엔트리 순서와 일치하게 유지되도록 구성하는 인덱스
② 결합 인덱스 : 한 릴레이션 내에 존재하는 여러 칼럼들을 묶어 하나의 인덱스로 만든 것
③ 분포도 : 선택성(selectivity)이라고도 하며, 결합 인덱스는 빠른 검색 속도를 위해 선택성이 낮은 컬럼을 선행 컬럼으로 설정
2. 릴레이션 [목차]
⑴ 릴레이션의 튜플들은 모두 상이함
⑵ 릴레이션의 튜플들의 순서에는 의미가 없음
⑶ 릴레이션의 속성들 간의 순서는 의미가 없음
⑷ 릴레이션의 속성은 원자값으로 구성되며 분해가 불가능함
① 예 : 성적 속성에 국어, 영어, 수학 하부 속성이 있을 때 이는 릴레이션으로서 부적합
② 예 : 성적 속성 대신 국어, 영어, 수학의 3개 속성이 있을 때 이는 릴레이션으로서 적합
3. 관계 연산 [목차]
⑴ 관계 대수
① 카티션 프로덕트(Cartesian Product)
○ 피연산자 R과 S의 조인의 결과, 차수는 R과 S 릴레이션의 차수의 합과 같고, 카디널리티는 R의 카디널리티와 S의 카디널리티의 곱과 같음
② 조인(Join) : 두 개의 테이블을 하나의 테이블로 만드는 연산
○ 동일 조인(Equi Join) : 등호 연산자('=')만을 사용
○ 자연 조인(Natural Join) : 동일 조인 중 중복되는 속성을 제거한 것
○ 외부 조인(Outer Join) : 조건에 맞지 않는 튜플도 결과에 표현
○ 세타 조인(Theta Join) : 세타 연산자(≠, <, ≤, >, ≥)를 사용
○ R과 S의 연산 결과, 차수는 R과 S의 차수의 합과 같고, 카디널리티는 R과 같음
⑵ 무결성
① 개체 무결성(Entity Integrity) : 기본 릴레이션의 기본키를 구성하는 어떤 속성도 NULL일 수 없다는 규정
② NULL 무결성(NULL Integrity) : 릴레이션의 특정 속성 값이 NULL이 될 수 없도록 하는 규정
③ 고유 무결성(Unique Integrity) : 릴레이션의 기본키값들이 서로 달라야 한다는 규정
④ 키 무결성(Key Integrity) : 하나의 릴레이션에는 적어도 하나의 키가 존재해야 한다는 규정
⑤ 참조 무결성(Referential Integrity) : 외래키 값은 NULL이거나 참조 릴레이션의 기본키 값과 동일해야 한다는 규정
○ 즉, 참조할 수 없는 값은 외래키 값으로 올 수 없다는 규정
○ 트리거(Trigger) : 하나의 릴레이션에 변경이 있는 경우 그것을 참조하는 릴레이션의 내용도 자동으로 변경되는 것
⑥ 도메인 무결성(Domain Integrity) : 특정 속성의 값이 그 속성이 정의된 도메인에 속한 값이어야 한다는 규정
⑦ 관계 무결성(Relationship Integrity)
4. 종류 [목차]
⑴ NoSQL
① 전통적인 RDBMS와 다른 DBMS
② 고정된 테이블 스키마가 필요하지 않음
③ 조인 연산을 사용할 수 없음
④ 수평적 확장이 가능
⑤ ACID 요건을 완화하거나 제약하는 특징
⑥ 유형
○ key-value store
○ column family data store
○ document store
○ graph store
입력: 2017.10.02 20:32
'▶ 자연과학 > ▷ 데이터베이스∙빅데이터분석기사' 카테고리의 다른 글
【데이터베이스】 11강. 빅데이터분석기사 (0) | 2017.10.02 |
---|---|
【데이터베이스】 3-1강. 정규화 (0) | 2017.10.02 |
【데이터베이스】 2강. 데이터베이스 기본 (0) | 2017.10.02 |
【데이터베이스】 12-1강. SQL example (0) | 2017.08.19 |
2016. 09. 13. [Seminar] 차세대 비휘발성 메모리를 활용한 데이터베이스 성능향상 기법 (0) | 2016.09.14 |
최근댓글