본문 바로가기
Computer Science/Database

[DB] 데이터베이스 모델링

by seaweed_one 2023. 3. 8.
728x90

데이터베이스라는 한정적 자원을 효율적으로 이용하기 위해서는 데이터베이스 모델링이 필요합니다.
해서 오늘은 데이터베이스 모델링에 대하여 간략하게 알아보겠습니다.
 

데이터베이스 모델링?

데이터의 의미를 파악하고 데이터에 관여하는 업무 프로세스를 개념적으로 정의하고 분석하는 과정입니다.
데이터베이스 모델링은 비즈니스적 관점프로그래머 관점으로 바라볼 수 있습니다.
비즈니스적 관점에서는 어떤 데이터를 저장해야 하는가에 초점을 맞춥니다.
반면 프로그래머 관점에서는 어떻게 데이터를 저장해야 하는가에 중점을 두게 됩니다.
 
모델링을 진행할 때는 위의 두 관점을 모두 고려하여 진행하는 것이 중요합니다.
 

데이터 베이스 시스템 구현 과정 

데이터베이스 모델링을 위해서는 데이터베이스 시스템이 어떤 식으로 구현되는지 그 과정을 알 필요가 있습니다.
일반 애플리케이션의 구현 과정을 먼저 생각해 봅시다.
기능요구사항이 들어오면 기능을 분석할 것입니다.
기능 분석을 기반으로 애플리케이션 프로그램을 설계하고 애플리케이션 아키텍처를 구성합니다.
마지막으로 애플리케이션을 구현하면 애플리케이션이 완성됩니다.
 
데이터베이스 시스템도 크게 다르지 않습니다.
사용자 요구사항 분석을 분석하고 개념적 데이터 모델링을 진행합니다.
이 단계까지는 비즈니스적 관점, 즉 어떤 데이터를 저장할 것인지에 대한 고려입니다.
다음으로는 논리적 데이터 모델링을 진행합니다.
여기서부터는 어떻게 데이터를 저장할 것인지에 대한 고민입니다.
논리적 데이터 모델링 단계에서 개념스키마가 도출되고 이는 일반적 애플리케이션에서 프로그램 설계에 도움을 줄 수 있습니다.
마지막으로 물리적 데이터 모델링을 거쳐 내부스키마가 도출됩니다.
 
데이터 모델, 데이터 모델링이라는 단어가 반복해서 나오고 있는데요.
각 과정에 대해 상세히 알아보기 전에 해당 개념에 대해 먼저 알아보고 가겠습니다.
 

데이터 모델과 데이터 모델링 

데이터 모델과 데이터 모델링

데이터의 의미, 데이터 타입, 연산 등을 데이터베이스에 명시하기 위해 사용할 수 있는 개념들의 집합입니다.
데이터를 사용하기 위해선 사용할 데이터를 선별하고 데이터베이스에 체계적으로 구조화하여 저장하고 사용할 방법이 필요합니다.
해서 데이터 모델의 적용이 필요합니다.
 
그럼 데이터 모델링이란 무엇일까요?
현실 세계의 작업이나 사물을 DBMS가 지원하는 데이터 모델의 형태로 표현하는 작업이라고 표현할 수 있습니다.
 

데이터의 모델링 과정 

개념적 데이터 모델링
사람에게 필요한 과정으로 요구사항 해석 오류의 방지를 위한 과정입니다.
실세계의 데이터를 개념적으로 일반화시켜 데이터의 구조, 타입, 속성, 관계 제약조건등을 이끌어냅니다.
 
논리적 데이터 모델링
특정 DBMS의 구현 모델에 맞추어 데이터를 표현하는 과정입니다.
 
물리적 데이터 모델링
디비 파일의 내부저장구조, 파일구성, 인덱스, 접근경로 등을 결정하는 과정입니다.
 
그럼 데이터베이스 모델링의 과정을 알아볼까요?

데이터베이스 모델링 과정 

데이터베이스 모델링은 아래와 같은 과정을 거치게 됩니다.
 
사용자 요구사항 분석
데이터 및 업무를 파악하는 과정입니다.
 
개념적 데이터 모델링
ER 모델을 사용합니다.
 
논리적 데이터 모델링
관계형 모델을 사용합니다.
데이터정의 언어로 기술된 개념 스키마를 생성합니다.
 
물리적 데이터 모델링
물리적 세부사항을 결정하고 이 단계에서 내부스키마가 생성됩니다.
 


각 과정의 자세한 사항은 다음 포스팅에서 알아보겠습니다.
 

728x90

'Computer Science > Database' 카테고리의 다른 글

[DB] ER 모델  (0) 2023.05.31
[DB] 데이터베이스 모델링 과정  (0) 2023.04.04
[DB] 데이터베이스의 언어  (0) 2023.03.07
[DB] DBMS의 구조와 아키텍쳐  (0) 2023.03.07
[DB] 데이터 베이스의 특징  (0) 2023.03.01