1. 관계형 데이터베이스
ㅇ RDB
- 간결하고 수학적인 표현으로 가장 보편적으로 사용되는 데이터베이스 모델
ㅇ 기원
- 1950년대 테드 코드(Edgar F.Codd,1923~2003) 박사의 논문
(A Relational Model of Data for Large Shared Data Banks)에서 유래
ㅇ 관계형 이전의 데이터베이스모델 : 계층형, 네트워크형
2. 관계형 데이터베이스의 특징
ㅇ 테이블 집합을 통한 표현
- 테이블이라는 단순한 개념 및 견고한 수학적 토대를 갖고 있음 ☞ 관계대수 참조
. 프로그래머가 이해하기가 수월하고 실제 데이타베이스시스템을 구현하는데 용이
.. 테이블들의 모임으로 구성되며, 각 테이블은 고유한 이름을 갖음
- 실제 데이터베이스 구조가 사용자에게는 완전히 감추어져 있음
. 계층형 데이터베이스, 네트워크형 데이터베이스와 구별되는 차이점
ㅇ 타 데이타베이스 모델(계층형,네트워크형)에 비해 수정 용이 ☞ 데이터베이스모델 참조
- 다른 유형의 데이타베이스 구조를 관계 데이타베이스로 변환하는 일이 비교적 수월
. 일련의 포인터를 따라가기 보다는 탐색 시간이 덜 필요
ㅇ 엑세스 제어 구현 용이
- 엑세스할 때 상당한 조심을 요하는 데이터는 별도로 관계를 정의하여 두고,
- 그 관계를 엑세스할 수 있는 권한을 두거나 또는 엑세스 기법을 따로 두어 제어 가능
ㅇ 간결성(clarity)와 가시성(visibility)이 좋음
- 포인터를 사용하여 복잡하게 연관되어 있는 데이타 요소들에 대한 탐색 보다는
표 형식의 데이타 요소를 탐색하는 편이 훨씬 수월
ㅇ 다루기 쉬운 언어 지원 ☞ SQL 참조
- 데이타베이스에 대한 자료요구는 대부분의 RDBMS 제품들이 지원하는 SQL 구문으로 작성됨
. ANSI 규정에 따르고 있는 SQL 구문은 표준화된 포멧을 사용하므로,
. 동일 어플리케이션들이 이기종 RDBMS에서 운용될 수 있어 이식성을 제공
3. 관계형 데이터베이스의 용어
※ ☞ 관계형 데이터베이스 용어 참조
- 관계(Relation) => 테이블(Table)이나 뷰(View)
. 2차원의 테이블 (스프레드 시트와 유사)
. 관계성 정보의 결과로 나타난 것이, 테이블 또는 뷰임
. 각 테이블은, 튜플들의 집합으로 구성됨
- 튜플(Tuple) => 행(Row,行)
. 릴레이션(테이블)의 각 행 (레코드 라고도 함)
. 각 튜플은, 여러 속성들을 갖음
- 속성(Attribute) => 열(Column,列)
. 릴레이션(테이블)에서 이름을 갖는 하나의 열
. 각 속성의 데이터타입은, 튜플들에서 모두 동일함
- 카디날리티(Cardinality) => 행들의 수
- 차수(Degree) => 열들의 수
4. 관계형 데이터베이스의 관리 시스템
※ ☞ 관계형 데이터베이스 관리 시스템 (RDBMS) 참조
- 관계형 데이타베이스를 관리하는 시스템