삽질의 현장/- DataBase

[삽잡이::DB] 데이터 모델링 과정

shovelman 2016. 6. 20. 22:33



저는 프로그래밍 세계와 일상 세계는 다르지 않다고 생각합니다.

일상 세계를 프로그래밍 세계로 옮겨 놓을 수 있지요.


현실 세계에 있는 무언가를

분석하여 요구조건을 명세하고 

개념적으로 설계(ER Model)를 할 수 있습니다.


 ER Model이란, Entity 

즉, 개체들간의 Relation이라는 관계 

도식화 한 Model을 의미합니다.

개체들간의 관계! 


이 개체는 '사람'이 될 수 도 있고, '사물'이 될 수도 있고

이 세상에 존재하는 고유하게 식별할 수 있는 무언가를 개체라고 부릅니다!


이 개체들간의 관계를 도식화하면 ER Model이라고 부르는 것이지요.


예를 들어 이런거에요


아~ 이런거구나~!



이렇게 개념적으로 설계를 한 내용으로 모델을 만들면

개념적 스키마라고 부르게 됩니다.


이제 이렇게 설계한 모델을 토대로

논리적인 설계를 함으로써


세상세계에서 컴퓨터세계로 더욱 맞춰져 갑니다~!



와우~


뭔가 개념적 설계가 추상적이라고 한다면,

그보다 조금 더 구체적으로 만들어진 모델이 

바로 논리적 설계를 거친 모델이며,

시스템으로 구축하고자 하는 업무에 대해

Key, 속성, 관계 등을 표현하게 됩니다.



그리고 마지막으로 물리적인 설계를 통해

어떻게 하면 하드웨어에 표현될 것인가를 다루게 됩니다.

즉, 데이터가 어떻게 컴퓨터에 물리적으로 저장될 것인지에 대한 정의를 하게 됩니다.

우리가 이러한 모델링을 설계하는 경우는 극히 드물겠지요!?



이와 같은 설명이 바로 데이터 모델링 과정을 나타내고 있는 것입니다.


사실 언뜻 보면...

크게 보자면 프로그램을 만들기 위해

설계하는 과정이랑 비슷해보이군요


굳~