이번 포스팅에서는 관계 데이터베이스에서 사용되는 용어들에 대해서 알아보겠습니다.
관계 데이터베이스는 데이터 간의 관계를 테이블 구조로 나타내는 데이터베이스로서 개체를 표현하는 데 있어 속성과 속성 간의 연관 관계를 파악하여 테이블의 형태로 표현합니다. 또한 개체와 개체 사이의 연관 관계도 테이블 형태로 표현할 수 있습니다.
아래 그림을 통해서 관계 데이터베이스를 구성하는 각 부분들을 확인해 보겠습니다.
- 속성(Attribute) : 어떤 개체 정보의 특성이나 특징에 대한 이름을 의미하여 프로그래밍 시 변수에 해당하는 개념으로 파일 시스템에서 레코드 필드에 해당하는 개념입니다.
- 도메인(Domain) : 한 속성(Attribute)의 의미로 들어오는 실제 값(원자값)들의 집합을 의미하며 변수를 선언하게 되면 그 선언 Type에 해당하는 개념입니다. 만약 프로젝트 릴레이션에서 <관리번호> 속성에 대한 타입을 2Byte 정수형으로 선언했다면 <관리번호> 속성의 대한 도메인은 -32768 ~ 32767 사이의 값이 됩니다.
- 튜플(Tuple) : 릴레이션 스키마에 따라 각 속성으로 실제 값이 입력되었을 때 하나의 행 값에 해당하는 개념으로 파일 시스템에서 레코드 개념에 해당합니다.
- 릴레이션(Relation) : 데이터 간의 관계를 나타내는 표(Table) 자체를 릴레이션이라 하는데 한 개 이상의 속성들의 집합을 표현됩니다. 위 그림에서 Relation Schema와 릴레이션 인스턴스를 합친 표 자체를 의미합니다.
- 릴레이션 인스턴스 : 릴레이션 외연(Extension) 또는 릴레이션 어커런스(Occurrence)라고도 하며 어느 한 시점에서 릴레이션 스키마에 따라 실제 데이터로 입력된 튜플들의 집합을 의미합니다.
- 차수(Degree) : 하나의 릴레이션에서 정의된 속성(Attribute)의 개수, 즉 필드의 수를 나타내는 용어로 설계의 변경이 이루어지지 않는 한 항상 정적인 상태를 유지하게 됩니다.
- 카디널리티(Cardinality) : 기수라고도 하며 하나의 릴레이션에 형성된 튜플의 개수, 즉 레코드의 수를 의미합니다. 데이터 조작 연산에 의해 항상 변화하므로 동적인 상태에 있습니다.
- 널(Null) : Empty 또는 모르는 값, 정의되어 있지 않은 값을 의미하며 '0'이나 공백의 의미와는 다른 개념입니다.
위 용어 중 릴레이션에 대한 특징은 아래의 표를 참고해 주세요.
특 성 | 내 용 |
튜플의 유일성 | 하나의 릴레이션으로 입력되는 튜플은 중복된 튜플이 존재하지 않는다는 개념 |
튜플간의 무순서 | 릴레이션을 입력되는 모든 튜플은 순서가 정해져 입력되는 것이 아니라 상황에 따라 순서없이 입력된다는 개념 |
속성값의 원자화 | 릴레이션에서 하나의 속성을 입력되는 도메인 값은 하나의 튜플에서 분해 될 수 없는 형태로 입력되어야 한다는 개념 |
속성 간의 무순서 | 하나의 릴레이션에서 속성 간의 논리적인 순서는 관계가 없다는 개념 |
속성 이름의 유일성 | 하나의 릴레이션에서 속성 이름은 유일해야 한다는 개념 |
이상으로 관계 데이터베이스에서 자주 사용하는 용어들에 대해 살펴보았습니다.
다음 포스팅에서는 관계 데이터베이스의 키 제약사항과 무결성 제약사항에 대해 알아보겠습니다.
감사합니다.
'데이타베이스' 카테고리의 다른 글
트랜잭션(Transaction) 정리 (2) | 2020.07.03 |
---|---|
관계 데이터베이스의 키 제약사항과 무결성 (0) | 2020.07.02 |
데이터 모델링[2]-논리적 데이터 모델 (2) | 2020.06.30 |
데이터 모델링[1] E-R 다이어그램 정리 (0) | 2020.06.29 |
데이터 모델링[0]-엔티티(entity) (0) | 2020.06.26 |
댓글