자격증

[SQLD] 3. 데이터 모델링의 이해

Rosie_dev 2021. 11. 15. 22:55

데이터 모델링

정보시스템을 구축하기 위한 데이터 관점의 업무 분석 기법.

데이터 모델링의 유의점은 중복, 비유연성, 비일관성이 있다. 데이터 혹은 속성은 중복으로 저장되지 않도록 해 데이터베이스가 여러 장소에서 같은 정보를 저장하는 잘못을 하지 않도록 해야 한다. 데이터 모델을 어떻게 설계했냐에 따라 사소한 변화에도 데이터 모델이 수시로 변경되어 유지보수가 어려워질 수 있다. 따라서 추후 변화에 따라 유연하게 변할 수 있다는 점을 고려해서 설계해야 한다. 그리고 연관된 데이터의 갱신을 피할 수 있도록 데이터 간 관계를 명확히 정의해야 한다.

 

스키마

데이터베이스의 구조와 제약조건에 관한 전반적인 명세를 기술한 것. DBMS이 주어진 설정에 따라 데이터베이스 스키마를 생성하며, 데이터베이스 사용자가 자료를 저장, 조회, 삭제, 변경할 때 DBMS는 자신이 생성한 데이터베이스 스키마를 참조하여 명령을 수행한다.

 

외부스키마: 프로그래머나 사용자의 입장에서 데이터베이스의 모습으로 조직의 일부분을 정의한 것, 사용자의 뷰

개념스키마: 모든 사용자 관점을 통합한 조직 전체 관점의 통합적 표현

내부스키마: 전체 데이터베이스의 물리적 저장 형태를 기술하는 것

 

엔티티

데이터베이스에서 엔티티는 개체를 의미하며, 저장이 되기 위한 어떤 것을 의미한다. 인간의 개념 또는 정보의 세계에서 의미있는 하나의 정보 단위이다. ERD에서 엔티티는 왼쪽 상단에 배치하며, 가장 중요한 엔티티는 그 아래 중앙쪽에 배치하여 선이 꼬이지 않게 효과적으로 배치할 수 있다.

 

엔티티는 반드시 해당 업무에서 관리하고자 하는 정보여야 한다. 그리고 유일한 식별자에 의해 식별이 가능해야 한다. 영속적으로 존재하는 두 개 이상의 인스턴스의 집합이어야 한다. 업무 프로세스에 의해 이용되어야 하며, 반드시 속성이 있어야 한다. 다른 엔티티와 최소 한 개 이상의 관계가 있어야 한다.

 

엔티티 사이의 관계

관계차수: 관계의 기수성을 나타내는 것으로 1:1, 1:M, M:N 와 같이 나타낸다.

관계선택사양: 필수관계, 선택관계

 

업무기술서, 장표에 관계연결을 가능하게 하는 동사(Verb)가 있는지를 확인해야 한다. 

 

속성

업무에서 필요로 하는 인스턴스에서 관리하고자 하는 의미상 더 이상 분리되지 않는 최소의 데이터 단위.

한 개의 속성은 한 개의 속성값을 갖는다. 속성의 명칭은 전체 데이터모델에서 유일성을 확보하는 것이 좋다.

+

한 개의 엔티티(테이블)는 두 개 이상의 인스턴스(행)의 집합이다.

한 개의 엔티티는 두 개 이상의 속성(컬럼)을 갖는다.

엔티티는 2*2의 테이블이다

 

도메인

각 속성을 가질 수 있는 값의 범위가 있는데 이를 그 속성의 도메인이라하며, 엔티티 내에서 속성에 대한 데이터타입과 크기 그리고 제약사항을 지정하는 것이다.

예) 도서명은 100자리 이내의 문자열로 정의하는 것.

 

식별자와 비식별자

식별자는 강한 연결관계를 표현하며, 주식별자의 구성에 포함된다. 실선으로 표현하고, 반드시 부모 엔티티에 종속되는 형태이다. 상속받은 주식별자속성을 타인티티에 이전할 필요가 있다. 즉, 부모엔티티 속성을 자식엔티티에서 받아 손자엔티티까지 계속 흘려보내기 위해서는 식별자관계를 고려한다.

 

반면, 비식별자 관계에서는 자식테이블에서 독립적인 Primary Key의 구조를 가지기 원할 때 비식별자 관계를 고려한다. 

 

 

 

 


데이터 설계

03 개념 모델 & 논리 모델 & 물리 모델

데이터 모델링이란? (관계형 DB 편)

개발자를 꿈꾸는 프로그래머 :: 스키마란? (개념스키마, 내부스키마, 외부스키마)

데이터베이스 스키마 - 위키백과, 우리 모두의 백과사전

스키마란 무엇인가 ??

DBMS - Data Schemas

[DB 이론] #1_엔터티(Entity)와 속성(Attribute)

엔터티(Entity), 속성(Attribute), 인스턴스(Instance)

알라딘: SQL 자격검정 실전문제

 

SQL 자격검정 실전문제

SQL 자격검정 실전문제는 국가공인 SQL 전문가 및 국가공인 SQL 개발자 자격시험 대비 수험서로 SQL 전문가 가이드에서 다루고 있는 데이터 모델링의 이해, SQL기본 및 활용, SQL 고급 활용 및 튜닝 등

www.aladin.co.kr

 

 

 

 

 

댓글