데이터 모델링 뜻? 데이터베이스와 3가지 특징 이해

데이터 모델링 뜻과 개념 설명
데이터 모델링 뜻과 개념 설명

데이터 모델링 뜻과 개념에 대해서 이야기해봅시다.




데이터 모델링 뜻과 개념 알기

데이터 모델링 뜻(Data Modeling)은 데이터를 저장하는 정보 시스템을 구축하기 위해서 데이터 관점에서의 비즈니스와 업무를 분석하는 기법을 의미합니다. 데이터 모델링은 현실 세계의 데이터를 약속된 표기법으로 표현하는 과정입니다. 또한 데이터 모델링은 데이터베이스(Data Base)를 구축하기 위해서 분석과 설계를 진행하는 과정이기도 합니다.

데이터 모델링은 비즈니스와 업무 정보를 구성하는 기초가 되는 데이터들과 정보들을 일정한 표기법으로 표현하는 체계적인 방법입니다. 데이터 모델링을 거쳐서 데이터 베이스를 생성하고 개발 및 데이터 관리를 진행하게 됩니다.

데이터 베이스(DB, DataBase)는 데이터를 논리적이고 체계적으로 시스템에 저장하기 위해서 논리적으로 연관된 하나 이상의 데이터 모음으로 구성된 집합입니다.

데이터베이스 모델링은 복잡한 현실 세계를 추상화하고 단순화하고 명확하기 위해서 일정한 표기법에 의해서 데이터 저장 체계와 구조를 표현하고 설계하는 기법입니다.




데이터 모델링 뜻과 개념 설명

데이터 모델링 뜻(Data Modeling)데이터베이스(DataBase) 상에서 데이터가 논리적이고 체계적으로 조직될 수 있도록 논리적 데이터 구조로 변환하는 과정을 의미합니다. 데이터베이스 모델링은 현실 세계를 단순화하여 표현하는 기법이기도 합니다.

데이터 베이스(DB, DataBase)는 현실 세계에 있는 수 많은 데이터들 중에서 기업이나 조직에서 운영에 필요한 데이터 만을 정의하고 선별하여 시스템에 체계적으로 저장하는 것인데 현실 세계에 존재하는 데이터들을 데이터베이스로 옮기는 변호나 과정을 데이터 모델링이라고 부릅니다.

모델링(Modeling)은 현실 세계를 반영한 모델을 단순화하여 표현하는 것이며 모델링은 현실 세계를 반영해야 하고 단순화하여 표현해야 하며 관리하고자 하는 데이터를 모델로 설계해야 합니다.

데이터 모델링은 시스템을 구현하기 위해서만 진행하는 작업이라기 보다 시스템 구현을 포함하면서 비즈니스에 대한 업무 분석과 업무를 형상화하는 작업도 함께 포괄하는 작업입니다. 즉 시스템 구현 만을 위해서 진행하는 사전 단계의 작업만이 아닙니다. 데이터 모델링은 현실 세계를 일정한 형식에 맞춰서 표현하는 추성화의 의미를 가지고 있으면서 복잡한 현실 세계를 제한된 언어나 표기법으로 보다 이해하기 쉽게 단순화하는 과정을 말합니다. 데이터 모델링에서는 애매모호한 것은 없고 누구나 이해하기 쉽고 정확한 팩트를 가지고 현상을 표현합니다.

데이터 베이스는 데이터 모델을 가지고 있으면서 데이터를 저장해야 합니다. 모델링은 현실 세계에서 필요한 데이터를 저장하는 데이터베이스를 만들기 위한 분석과 설계의 중요한 과정입니다.

데이터모델링의 특징은 3가지가 있습니다.

[데이터모델링의 3가지 특징]

구분내용
1추상화(Abstraction)
2단순화(Simplification)
3명확화(Clarity)

추상화(Abstraction)는 복잡한 현실 세계를 일정한 형식으로 개념화 하여 간략하게 표현하는 것을 말합니다. 단순화(Simplification)는 복잡한 현실 세계를 정해진 표기법으로 단순하고 이해하기 쉽게 표현하는 것을 말합니다. 명확화(Clarity)는 현실 세계의 불분명함을 배제하고 없애며 보다 명확하게 이해하고 해석할 수 있도록 표현하는 것을 말합니다.

데이터 모델링은 비즈니스와 업무 정보를 구성하는 기초 데이터와 정보들을 일정한 표기법으로 표현하며 정보 시스템 구축의 대상이 되는 비즈니스와 업무 내용들을 정확하게 분석한 후 진행하게 됩니다. 분석된 내용을 바탕으로 실제 데이터 베이스를 생성하는데 데이터 모델링은 데이터 베이스 만을 구축하기 위한 용도로만 사용하는 것이라기 보다 데이터 모델링을 하는 작업 자체로도 업무를 설명하고 분석할 수 있는 매우 의미 있는 진행이기도 합니다. 데이터 모델링을 통해서 업무의 흐름을 설명하고 분석할 수 있습니다.

데이터모델링에서는 3가지 관점이 있습니다.

[데이터모델링의 3가지 관점]

구분내용
1데이터 관점
2프로세스 관점
3데이터와 프로세스의 상관 관점

데이터 모델링의 데이터 관점은 데이터 위주의 모델링을 의미합니다. 비즈니스와 업무에서 어떤 데이터들이 있는지, 그리고 그 데이터들 간에는 어떤 관계들이 있는지를 모델링 하는 것입니다.

데이터 모델링의 프로세스 관점은 프로세스 위주의 모델링입니다. 보다 상위의 프로세스 관점에서 해당 업무가 실제로 처리하고 있는 비즈니스와 업무는 무엇이 있는지, 그리고 처리해야 할 업무들은 어떤 것들이 있는지를 모델링 하는 관점입니다.

데이터 모델링의 데이터와 프로세스 상관 관점은 데이터와 프로세스의 관계를 위주로 하는 모델링입니다. 비즈니스와 업무 프로세스의 흐름에 따라서 데이터가 어떤 영향을 받게 되는지를 모델링 합니다. 데이터 테이블을 구성할 때 이력 테이블을 구성하기는 하지만 데이터 모델링의 관점에서는 히스토리 관점은 없습니다. 데이터 관점은 What, 프로세스 관점을 How, 데이터와 프로세스의 상관 관점을 Interaction이라고 할 수 있겠습니다.

데이터모델링의 유의 사항에는 3가지가 있습니다. 데이터 모델링의 유의 사항 3가지는 데이터의 신뢰도와 정확성 등과 관련된 데이터의 품질을 확보하고 보장하기 위해서 유의해야 하는 사항들입니다.

[데이터모델링의 유의 사항 3가지]

구분내용
1중복(Duplication)
2비유연성(Inflexibility)
3비일관성(Inconsistency)

중복(Duplication)은 같은 데이터가 여러 엔티티(Entity)에 중복으로 저장되지 말아야 하는 것입니다. 데이터 모델은 같은 데이터를 사용하는 사람과 시간, 그리고 장소를 파악하는데 중요합니다. 데이터는 여러 장소의 데이터 베이스에 같은 정보를 저장하지 않도록 하여 중복성을 최소화 해야 합니다.

비유연성(Inflexibility)는 데이터 모델의 설계에 따라서 비즈니스나 애플리케이션의 작은 변경에도 데이터 모델이 수시로 변경되는 상황이 발생할 수 있는데 이러한 점들을 고려하여 데이터 모델과 프로세스를 분리하는 방법으로 변화에 대응할 수 있는 유연성을 확보해야 합니다. 데이터의 정의를 할 때 데이터의 사용 프로세스와 분리하여 유연성을 높여야 합니다. 사소한 업무 변화에도 데이터 모델이 수시로 변경되도록 만들면 안되는 것입니다. 만약 사소한 업무 변화에도 데이터 모델이 수시로 변경되도록 만들면 유지 보수에 큰 어려움을 겪게 됩니다.

비일관성(Inconsistency)은 데이터의 중복이 없는 경우에도 비일관성이 발생할 수 있기 때문에 이러한 점을 유의해야 한다는 것입니다. 다른 데이터와 연관성을 고려하지 않는다면 일부 데이터만 변경되는 문제가 발생할 수 있는 것입니다. 이러한 문제가 발생하지 않도록 데이터 모델링을 할 때 반드시 데이터 간의 연관 관계를 명확하게 정의하고 설계해야 합니다.

데이터 간의 상호 연관 관계를 명확하게 정의하고 설계하여 일관성 있게 데이터가 저장되고 유지되도록 해야 합니다. 만약 데이터 모델링을 할 때 사용자가 처리하는 프로세스나 이와 관련된 프로그램과 테이블의 연계성을 높이는 것은 데이터 모델이 업무 변경에 취약하게 만드는 것이므로 지양해야 합니다.