관계형 데이터베이스와 관계형 데이터 모델
관계형 데이터베이스는 2차원 표 형식으로 데이터를 저장하고 관리하는 데이터베이스 시스템입니다. 데이터를 직관적이고 체계적으로 정리하여 효율적인 데이터 관리와 접근을 가능하게 합니다.
1. 관계형 데이터베이스의 개념
-
정의:
- 데이터를 표(Table) 형태로 표현하고, 개체(Entity)와 관계(Relationship)를 릴레이션(Relation)이라는 표로 나타냄.
- 표 내부의 행(Row)은 데이터를 나타내고, 열(Column)은 속성을 나타냄.
-
특징:
- 데이터를 중복 없이 관리하며, 관계를 명확히 정의.
- 데이터의 수정, 삽입, 삭제가 용이.
- 표 간 관계를 통해 데이터의 연결성을 표현.
-
역사:
- 1970년 IBM의 에드가 F. 코드(Edgar F. Codd)에 의해 제안됨.
2. 관계형 데이터베이스의 구조
(1) 릴레이션(Relation)
- 데이터를 표현하는 표.
- 릴레이션의 구조는 릴레이션 스키마와 릴레이션 인스턴스로 구성됨.
- 릴레이션 스키마(Relation Schema):
- 릴레이션의 구조를 정의한 것으로, 속성과 속성 간 관계를 설명.
- 예: 학생 릴레이션 스키마 → (학번, 이름, 학년, 신장, 학과).
- 릴레이션 인스턴스(Relation Instance):
(2) 속성(Attribute)
- 릴레이션의 열(Column).
- 데이터의 특성을 나타내는 가장 작은 논리적 단위.
- 예: 학번, 이름, 학년 등.
(3) 튜플(Tuple)
- 릴레이션의 행(Row).
- 하나의 데이터 레코드를 나타냄.
- 예: 특정 학생의 학번, 이름, 학년 등이 포함된 데이터.
(4) 도메인(Domain)
- 속성이 가질 수 있는 값들의 집합.
- 예: 성별 속성의 도메인 → {남, 여}.
(5) 주요 용어
용어 | 설명 |
---|
튜플(Tuple) | 릴레이션의 각 행 (한 데이터 레코드). |
카디널리티(Cardinality) | 튜플의 개수 (행의 개수). |
차수(Degree) | 속성의 개수 (열의 개수). |
3. 관계형 데이터 모델의 특징
- 단순한 구조:
- 데이터를 2차원 표 형태로 나타냄.
- 사용자가 데이터를 쉽게 이해하고 관리할 수 있음.
- 데이터 무결성:
- 데이터를 중복 없이 저장하여 일관성과 무결성을 보장.
- 표준 언어 사용:
- 관계형 데이터 모델은 SQL을 사용하여 데이터를 정의, 조작, 제어.
- 관계 표현의 자유로움:
- 1:1, 1:N, N:M 관계를 모두 표현 가능.
4. 관계형 데이터 모델의 구성 요소
(1) 테이블(Table)
- 데이터가 저장되는 기본 단위.
- 하나의 테이블은 하나의 릴레이션에 해당.
(2) 키(Key)
- 데이터를 고유하게 식별하기 위한 속성.
- 기본키(Primary Key): 튜플을 유일하게 식별하는 속성.
- 외래키(Foreign Key): 다른 테이블과의 관계를 나타내는 속성.
(3) 관계
- 테이블 간의 연결성을 나타냄.
- 관계는 키를 통해 정의됨.
5. 관계형 데이터베이스의 장단점
장점:
- 간결하고 직관적인 데이터 표현:
- 표준화된 언어(SQL):
- 데이터를 정의, 조회, 수정, 삭제하는 데 사용.
- 데이터 변환 용이:
- 무결성 유지:
- 데이터 중복을 방지하고 관계를 명확히 정의하여 데이터의 정확성과 일관성을 유지.
단점:
- 성능 저하:
- 대량의 데이터를 처리할 때 성능이 느려질 수 있음.
- 복잡한 설계:
- 테이블 간의 관계를 정의하고 유지하는 데 많은 시간이 소요.
6. 시험 대비 핵심
- 주요 용어:
- 튜플, 속성, 도메인, 릴레이션 스키마, 릴레이션 인스턴스.
- 카디널리티(튜플의 개수), 차수(속성의 개수).
- ER 모델과 관계형 데이터 모델 비교:
- ER 모델: 개념적 설계 단계에서 사용.
- 관계형 데이터 모델: 논리적 설계 단계에서 사용.
- 관계형 데이터베이스의 장점과 단점:
- 장점: 직관성, 표준 SQL 사용.
- 단점: 성능 이슈.
7. 학습 요약
- 관계형 데이터베이스는 데이터를 표로 관리하며, SQL을 사용하여 데이터를 처리.
- 주요 개념과 용어(튜플, 속성, 도메인 등)를 확실히 이해.
- 관계형 데이터 모델은 현재 가장 널리 사용되는 데이터베이스 모델로, 이를 충분히 이해하면 데이터베이스 설계와 관리에서 큰 이점을 얻을 수 있음.
다음 시간에는 관계형 데이터베이스의 구체적인 설계 및 SQL 기본 문법에 대해 살펴보겠습니다.