데이터 모델링
데이터 모델링(data modeling) : 현실 세계의 데이터를 컴퓨터 세계의 데이터베이스로 옮기는 변환 과정
추상화(abstraction) : 데이터 모델링 과정에서 개체로부터 중요한 개념을 분리하는 프로세스
데이터 모델링 단계
개념적 데이터 모델링
현실 세계의 중요 데이터를 추출하여 (사람이 이해할 수 있는 형태의) 개념적 구조로 표현하는 과정
사람이 인식하는 것과 유사하게 데이터 구조를 명시한다.
논리적 데이터 모델링
개념 세계의 데이터를 데이터베이스에 저장하는 논리적 구조로 표현하는 과정
사람이 이해하는 개념이면서 동시에 컴퓨터 내에서 데이터가 조직되는 방식과도 가깝다.
물리적 데이터 모델링
컴퓨터(저장장치)가 인식하는 것과 가까운 개념이며, 데이터베이스에 데이터가 어떻게 저장되는지를 기술한다.
데이터 모델(data model)
데이터 모델링을 쉽게 할 수 있도록 도와주는 도구(또는 데이터 모델링의 결과물 그 자체)를 말한다.
일반적으로 데이터 모델은 데이터 구조(data structure), 연산(operation), 제약조건(constraint)으로 이루어져 있다.
'데이터 구조'는 현실 세계의 데이터를 개념 세계로 변환할 때 어떤 요소로 이루어져 있는지를 표현하는 개념적 구조이며, '연산'은 데이터 구조에 따라 개념 세계나 컴퓨터 세계에서 실제로 표현된 값을 처리하는 작업이다. 마지막으로, '제약조건'은 데이터 무결성 유지 및 연산 과정에서의 허용 등을 정의한다.
개념적 데이터 모델 : 개체-관계 모델
개체-관계 모델(ER모델)은 개체(Entity)와 관계(Relationship)로 현실 세계를 개념적으로 표현하는 대표적인 개념적 데이터 모델 중 하나이다. 아래와 같이 도형 다이어그램을 통해 표현할 수 있다. ( [데이터베이스] 4. ER모델 )
논리적 데이터 모델 : 관계 데이터 모델
관계 데이터 모델은 하나의 개체에 관한 데이터를 릴레이션(Relation) 하나에 담아 데이터베이스에 저장하는 논리적 데이터 모델 중 하나이다. 릴레이션이란, 관계 데이터 모델에서 행과 열로 구성된 테이블을 말한다. ( [데이터베이스] 3. 관계 데이터 모델, 키(key) )
데이터베이스 개발 5단계
데이터베이스 시스템 개발 5단계는 아래와 같다.
요구사항 명세서로 데이터베이스의 용도를 기술한 후, 개념적 데이터 모델을 통해 DBMS에 독립적인 개념적 구조를 설계한다. 이를 바탕으로, DBMS에 적합한 논리적 스키마(글에서는 '릴레이션 스키마')를 작성한다. 이어서 물리적 설계와 구현 단계를 거쳐 데이터베이스 시스템 개발 5단계가 마무리된다.