DB Schema / ERD

이주형·2022년 11월 21일
0

backend

목록 보기
20/53

스키마(Schema)란?

스키마는 DB의 구조와 제약 조건에 관한 전반적인 명세를 정의한 메타데이터의 집합입니다.
메타데이터(meta data) : 데이터에 대한 데이터로, 어떤 목적을 가지고 만들어진 데이터로 정의됨.

개체의 특성을 나타내는 속성(Attribute)과, 속성들의 집합으로 이루어진 개체(Entity), 개체 사이에 존재하는 관계(Relation)에 대한 정의와 이들이 유지해야 할 제약 조건을 기술한 것입니다.

스키마의 특징

•스키마는 특정 데이터 모델을 이용해서 만들어집니다.
•스키마는 시간에 따라 불변인 특성을 가집니다.
•스키마는 데이터의 구조적 특성을 의미하며, 인스턴스에 의해 규정됩니다.

스키마 3층 구조

외부스키마: 프로그래머나 사용자의 입장에서 데이터베이스의 모습으로 조직의 일부분을 정의한것
개념스키마: 모든 응용 시스템과 사용자들의 필요로하는 데이터를 통합한 조직 전체의 데이터 베이스 구조를 논리적으로 정의한것.
내부스키마:전체 데이터베이스의 물리적 저장형태를 기술하는것

ERD(Entity Relationship Diagram)

한국말로 직역하자면 개체-관계 모델이다. 쉽게 생각하면, 테이블간의 관계를 설명해주는 다이어그램이라고 볼 수 있으며, 이를 통해 프로젝트에서 사용되는 DB 의 구조를 한눈에 파악할 수 있다. 즉, API를 효율적으로 뽑아내기 위한 모델 구조도라고 생각하면 된다.

ERD 관계 표기 방식

ERD에는 여러 기호들로 관계를 표현할 수 있다.

One
일대일 혹은 일대다 관계입니다.

Many
다대다 관계입니다.

One(and only one)
위의 조건과 동일하게 일대일 관계이나, 하나의 row끼리만 연결된 데이터

Zero or one
일대일 혹은 일대다 관계를 가지고 있으나, 필수 조건이 아님을 의미

One or Many
일대일 혹은 다대다 관계를 가지고 있음을 의미

Zero or Many
참조하는 테이블과의 관계가 불명확한 경우. 장바구니처럼 row 생성값이 없을수도, 하나일수도, 여러개일 수도 있는 경우

참조

https://itworldyo.tistory.com/44
https://coding-factory.tistory.com/216

0개의 댓글