스키마란
- 데이터베이스의 구조와 제약조건에 관해 전반적인 명세를 기술한 것
- 데이터 사전에 저장된다.
- 현실세계의 특정한 부분의 표현으로, 특정 데이터 모델을 이용하여 만들어진다.
- 시간에 따라 불변인 특성
- 데이터의 구조적 특성을 의미
- 인스턴스에 의해 규정된다.
ANSI-SPARC 에서 정의한 스키마 구조의 3단계
- 외부 스키마
현실세계에 존재하는 데이터들을 어떤 형식, 구조, 배치 화면을 통해 사용자에게 보여줄 것인가
같은 데이터베이스에 대해 서로 다른 관점을 정의할 수 있도록 허용
- 개념 스키마
모든 사용자 관점을 통합한 조직 전체 관점의 통합적 표현이자 DB 정의
모든 응용시스템들이나 사용자들이 필요로하는 데이터를 통합한 조직 전체의 DB를 기술한 것으로 DB에 저장되는 데이터와 그들 간의 관계를 표현하는 스키마
- 내부 스키마
데이터베이스의 물리적 저장구조
데이터의 실제 저장방법을 기술, 물리적인 저장장치와 밀접한 계층으로 시스템 프로그래머나 시스템 설계자가 보는 관점을 스키마
-> 데이터 모델링은 통합 관점의 뷰를 가지고 있는 개념 스키마를 만드는 과정이다.
ERD
- 1976 년 피터첸에 의해 Entity-Relationship Model 이라는 표기법이 만들어졌다.
- 일반적으로 ERD를 작성하는 방법은,
- 엔터티 도출
- 엔터티 배치
- 관계 설정
- 관계명 기술
- 관계의 참여도 및 필수 여부 기술
- 관계의 명칭은 관계 표현에 있어서 매우 중요한 부분에 해당된다.
- 새발 표기법은 새발이 있는 쪽이 없는 쪽의 키를 받는다는 의미이다.
엔터티
데이터베이스에 저장할 정보의 주체 혹은 대상
엔터티의 특징
- 반드시 해당 업무에서 필요하고 관리하고자 하는 정보여야 한다.
- 유일한 식별자에 의해 식별이 가능해야 한다.
- 하나의 엔터티는 영속적으로 존재하는 두 개 이상의 인스턴스의 집합이여야 한다.
- 엔터티는 업무 프로세스에 의해 이용되어야 한다.
- 엔터티는 반드시 두 개 이상의 속성이 있어야 한다.
- 엔터티는 다른 엔터티와 최소 한 개 이상의 관계가 있어야 한다.
- 다만 공통코드, 통계성 엔터티의 경우엔 관계를 생략할 수 있다.
엔터티의 종류
- 기본(키) 엔터티
- 업무에 원래 존재하는 정보
- 다른 엔터티로부터 주식별자를 상속받지 않고 자신의 고유한 주식별자를 가진다.
- 타 엔터티의 부모 역할을 하게 된다.
- 중심(메인) 엔터티
- 기본 엔터티로부터 발생, 업무에서 중심적인 역할을 한다.
- 데이터의 양이 많이 발생되고 다른 엔터티와의 관계를 통하여 많은 행위 엔터티를 생성
- 행위 엔터티
- 두 개 이상의 부모 엔터티로부터 발생되고 자주 내용이 바뀌거나 데이터량이 증가
속성
업무에서 필요로 하는 인스턴스에서 관리하고자하는 의미상 더이상 분리되지 않는 최소의 데이터 단위
데이터베이스의 테이블의 각 필드들이 엔터티 속성
- 엔터티에 대한 자세하고 구체적인 정보를 나타낸다.
- 하나의 엔터티는 두 개 이상의 속성을 가진다.
- 하나의 인스턴스에선 각각의 속성은 하나의 속성값을 가져야 한다. (두 개 이상의 속성값은 X)
- 속성도 집합이다.
- 각 속성은 가질 수 있는 값의 범위가 있는데, 이를 도메인이라 한다. 앤터티 내에서 속성에 대한 데이터 타입과 크기, 제약 사항을 지정하는 것이다.
도메인
속성의 값, 타입, 제약사항 등에 대한 값의 범위를 표현
사용자 기호에 따라 속성 타입만 그릴수도 있고 가독성을 위해 생략할 수도 있음
엔티티 분류
- 엔터티는 저장하는 데이터 정보 주제에 따라 종류가 다양
- 고객 정보같은 실제로 물리적인 형태로 있는 정보와 무형적이고 개념적인 정보가 존재
- 엔터티 구분이 잘되어야 데이터베이스 설계에 있어서 각 데이터 주제에 맞게 모델링을 구축할 수 있다.
- 유형 엔터티 : 물리적인 형태 - 고객, 상품, 거래처, ...
- 무형 엔터티 : 개념적으로만 존재하는 엔터티 - 인터넷 장바구니, 주문서
- 문서 엔터티 : 업무 절차상에서 사용되는 문서나 장부, 전표 - 거래명세서, 주문서
- 이력 엔터티 : 업무상 반복적으로 이루어지는 행위나 사건의 내용을 일자별, 시간별로 저장하기 위한 엔터티 - 입고, 출고 이력, 구매 이력 등
- 코드 엔터티 : 무형 엔터티의 일종으로 각종 코드를 관리하기 위한 엔터티 - 국가 코드, 분류 코드 등
'Web Study > DataBase' 카테고리의 다른 글
SQLD - Join 에 대해 (0) | 2023.09.10 |
---|---|
SQLD - Transaction (트랜잭션) (0) | 2023.09.07 |
SQLD - 정규 표현식 (0) | 2023.08.30 |
SQLD - 정규화/반정규화 (0) | 2023.08.23 |
SQLD - 데이터 모델링의 이해 (0) | 2023.08.20 |