현실 세계의 복잡한 정보와 관계를 컴퓨터 세계에서 처리할 수 있도록 변환하는 과정
데이터베이스를 설계하기 위해 데이터를 구조화하고 체계적으로 조작화하는 과정
추상화

1) 데이터 관점
2) 프로세스 관점
3) 데이터와 프로세스의 상관 관점
데이터베이스의 전체적인 구조와 데이터 흐름을 시각적으로 표현하는 과정이다.
주로 비즈니스 요구사항을 이해하고, 데이터 간의 관계를 정의하는 데 초점을 맞췄다.
의사소통을 돕고, 전체적인 데이터 흐름과 구조에 대한 이해를 높이는 목적
예) 개체-관계 모델(ERM)
목적:
데이터의 주요개체와 그들 간의 관계를 명확히 하여, 이해관계자 간의 의사소통을 원활하게 하고, 데이터의 의미를 명확히 한다.
복잡한 시스템을 단순화하여 각 개체의 역할과 관계를 직관적으로 파악할 수 있도록 도움을 줌.
특징:
비기술적 언어
기술적인 세부사항보다는 비즈니스 관점에서 데이터 모델을 중시한다.
개체-관계-모델(ERM)
개체, 속성, 관계를 중심으로 구성되며, UML(Unified Modeling Language) 다이어그램 등으로 표현할 수 있다.
고수준의 추상화
데이터의 세부사항보다는 전반적인 구조에 집중한다.


Peter Chen



까마귀발, IE




개념적 모델을 바탕으로 데이터의 구조를 보다 구체적으로 정의하는 단계. 데이터의 형식, 관계 제약조건 등을 명확히 하여 데이터베이스 설계의 기초를 마련함.
개념적 모델을 좀 더 구체화 하여, 데이터의 논리적 구조와 관계를 정의
데이터의 타입, 기본 키, 외래 키, 인덱스 등을 명세
예) 관계형 데이터 모델
목적:
데이터의 논리적 구조를 정의하고, 데이터 간의 관계를 명확히 하여 데이터베이스의 효율성을 높이는것.
데이터베이스 관리 시스템(DBMS)에 독립적인 형태로 설계함.
특징:
구체적인 데이터 타입 정의
각 속성의 데이터타입과 길이 등을 명세
키 정의
기본 키와 외래 키를 명확히 하여 데이터의 무결성을 유지
정규화
데이터 중복을 줄이기 위해 정규화 과정을 거침.
이 과정에서 제1정규형, 제2정규형, 제3규형 등을 적용하여 데이터 구조를 최적화함



논리적 모델을 바탕으로 실제 데이터베이스 시스템에 적합하도록 최적화하는 과정
데이터의 저장방식, 엑세스 방법, 인덱스 설정 등을 포함하여 효율적인 데이터베이스 구현을 목표로 함
논리적 모델을 실제 데이터베이스 구현에 맞게 최적화
데이터의 저장, 엑세스 방식에 대한 세부 사항을 정리
목적:
데이터베이스 성능을 극대화함.
데이터의 저장 및 검색 효율성을 높임.
실제 DBMS의 특성을 고려하여 설계함.
특징:
데이터 저장 방식
데이터의 실제 구조를 정의함(테이블, 컬럼, 인덱스)
인덱스
데이터 검색 성능을 높이기 위해 인덱스를 설정함
(이메일과 전화번호에 인덱스 추가)
파티셔닝
대량의 데이터를 효율적으로 관리하기 위해 파티셔닝을 고려함
(학년별로 학생 데이터를 나누어서 저장)
DBMS에 의존적
특정 데이터베이스 관리 시스템의 기능과 제약을 반영하여 설계함
(Oracle, MySQL, PostgreSQL 등 각 DBMS의 특성을 고려하여 최적의 구조를 결정함)