데이터 모델링이란?

데이터 모델링은 데이터 흐름을 도식화하는 과정입니다.

데이터 모델링 개요

데이터 모델링은 데이터 흐름을 도식화하는 과정입니다. 신규 또는 대체 데이터베이스 구조를 생성할 때 설계자는 데이터가 어떻게 데이터베이스로 유입되고 빠져나오는지에 관한 다이어그램으로 시작합니다. 이런 흐름에 관한 다이어그램은 데이터 형식, 구조, 데이터베이스 처리 기능의 특징을 정의하는 데 사용되어 데이터 흐름 요구사항을 효율적으로 지원합니다. 데이터베이스가 구축 및 배포된 이후 데이터 모델은 데이터베이스가 존재하는 이유와 데이터 흐름이 설계되는 방식에 대한 문서화 및 당위성 그 자체가 됩니다.

 

이러한 프로세스의 결과로 발생한 데이터 모델은 데이터베이스 내에서 데이터 요소 간의 관계 프레임워크와 데이터 사용 가이드를 제공합니다. 데이터 모델은 소프트웨어 개발 및 분석의 기본 요소입니다. 따라서 다양한 시스템 전반에서 데이터베이스 콘텐츠를 일관되게 정의하고 구성하기 위한 표준화된 방법을 제공하여 각기 다른 애플리케이션이 동일한 데이터를 공유할 수 있도록 합니다.

데이터 모델링은 왜 중요할까요?

포괄적이고 최적화된 데이터 모델은 간결하고 논리적인 데이터베이스를 생성하도록 지원해 중복을 제거하고 스토리지 요구사항을 완화하며 효율적인 검색을 지원합니다. 또한 모든 시스템에 효율적인 운영에 필수적이며 규정 및 규제사항 준수를 가능하게 하는 '단일 데이터 소스'를 제공합니다. 데이터 모델링은 디지털 기업의 두 가지 핵심 기능에 있어서 중요한 단계를 담당합니다.

IT 전문가가 수행하는 소프트웨어 개발 프로젝트(신규 또는 맞춤화)

어떤 소프트웨어 프로젝트를 설계, 구축하기 전에 최종 제품의 형태와 기능에 대한 비전을 반드시 문서화해야 합니다. 이러한 비전의 상당 부분은 원하는 기능을 관리하는 비즈니스 규칙 세트입니다. 그리고 나머지 부분은 데이터 흐름(또는 데이터 모델)과 이를 지원하는 데이터베이스 설계와 같은 데이터 관련 설명입니다.

데이터 모델링은 이 비전을 기록해 소프트웨어 설계자를 위한 로드맵을 제공합니다. 데이터베이스와 데이터 흐름이 완전히 정의되어 문서화되고 이러한 사양에 따라 시스템이 개발되면 해당 시스템은 (모든 절차가 제대로 준수되었다고 가정했을 때) 데이터의 정확성을 유지하는 데 필요할 것으로 예상되는 기능을 제공해야 합니다.

사용자를 위한 기본 의사결정 툴인 분석 및 시각화 또는 비즈니스 인텔리전스

 

끊임없이 증가하는 데이터 양과 사용자 수로 인해 기업은 원시 데이터를 의사결정을 위해 실행 가능한 정보로 전환할 방법이 필요해졌습니다. 여기에 데이터 분석 요구 또한 크게 증가했습니다. 데이터 시각화는 데이터를 그래픽으로 제시함으로써 사용자가 데이터에 더욱 쉽게 액세스할 수 있도록 합니다.

 

오늘날의 데이터 모델은 원시 데이터를 역동적 시각화로 변환할 수 있는 유용한 정보로 변환합니다. 데이터 모델링은 데이터 정리, 측정값 및 차원 정의, 계층구조 구축, 단위 및 통화 설정, 수식 추가를 통한 데이터 품질 향상 등 분석을 위해 데이터를 준비합니다.

데이터 모델링에는 어떤 유형이 있나요?

관계형, 차원, 개체-관계(E-R)가 3가지 주요 모델 유형입니다. 또한 계층, 네트워크, 객체 지향, 다중값을 비롯하여 일반적으로 사용되지 않는 그 외 다른 모델 유형도 존재합니다. 모델 유형은 데이터가 논리적으로 저장되는 방법, 즉 저장, 구성, 검색 방식을 의미하는 논리적 구조를 정의합니다.

  1. 관계형: 비교적 오래된 접근 방식이기는 하지만 가장 흔한 데이터베이스 모델로 오늘날까지도 꾸준히 사용되고 있는 관계형 데이터 모델은 데이터를 고정 형식 레코드로 저장해 행과 열이 있는 테이블에 정리합니다. 이와 같이 가장 기본적인 데이터 모델 유형에는 측정값과 차원이라는 두 가지 요소가 존재합니다. 측정값은 합계나 평균과 같은 수학적 계산에 사용되는 수량 및 수익과 같은 숫자값입니다. 차원은 텍스트나 숫자가 될 수 있습니다. 계산에는 사용되지 않으며 설명이나 위치가 포함됩니다. 원시 데이터는 측정값이나 차원으로 정의됩니다. 관계형 데이터베이스 디자인에 사용되는 다른 용어로는 "관계"(열과 행이 있는 테이블), "속성"(열), "튜플"(행), "도메인"(열에 허용되는 값 세트)이 있습니다. 관계형 데이터베이스를 정의하는 추가적인 용어와 구조적인 요구사항이 있지만, 가장 중요한 요소는 관련 구조 내에서 정의되는 관계입니다. 공통 데이터 요소(또는 키)는 테이블과 데이터 세트를 함께 연결합니다. 테이블은 일대일, 일대다, 다대다 등 상위 및 하위 관계와 같이 명시적으로 연결될 수 있습니다.
  2. 차원: 덜 경직되고 구조화된 차원 접근 방법은 비즈니스 사용 또는 컨텍스트와 더 관련이 있는 컨텍스트 데이터 구조를 선호합니다. 이 데이터베이스 구조는 온라인 쿼리와 데이터 웨어하우징 툴에 최적화되어 있습니다. 트랜잭션 수량과 같은 중요 데이터 요소는 "팩트"라고 불리며, 제품 ID, 단가 또는 거래일과 같은 "차원"이라는 참조 정보가 수반됩니다. 팩트 테이블은 차원 모델의 기본 테이블입니다. 검색은 특정 유형의 활동에 대한 데이터가 함께 저장되어 있어 빠르고 효율적일 수 있지만, 관계 링크 부족으로 인해 분석 검색 및 데이터 사용이 복잡해질 수 있습니다. 데이터 구조가 데이터를 만들어내고 사용하는 비즈니스 기능과 연결되어 있기 때문에 다른 시스템(예를 들어, 데이터 웨어하우스)에서 생성된 데이터를 결합하는 것은 문제가 될 수 있습니다.
  3. 개체-관계(E-R): E-R 모델은 활동이나 기능 즉 "개체"를 나타내는 다양한 형태의 상자와 연관성이나 종속성, 즉 "관계"를 나타내는 선을 포함하는 그래픽 형태의 비즈니스 데이터 구조를 나타냅니다. 그래서 E-R 모델은 각 행이 객체를 나타내며 해당 행의 필드가 속성을 포함하는 관계형 데이터베이스를 생성하기 위해 사용됩니다. 모든 관계형 데이터베이스에서와 마찬가지로 "키" 데이터 요소는 테이블을 연결하는 데 사용됩니다.

데이터 추상화의 3가지 수준은 무엇일까요?

데이터 모델의 유형은 매우 다양하며, 가능한 레이아웃에도 다양한 유형이 있습니다. 데이터 처리 커뮤니티는 3가지 모델링을 식별해 모델을 개발하는 과정에서 사고의 수준을 나타냅니다.

개념적 데이터 모델

 

"빅 픽처" 모델로도 불리며 전반적인 구조와 콘텐츠를 나타내지만 데이터 계획의 세부사항은 표시하지 않습니다. 데이터 모델링의 전형적인 시작점으로, 다양한 데이터세트와 조직 전체의 데이터 흐름을 식별합니다. 개념 모델은 논리 및 물리 모델 개발에 대한 상위 레벨의 청사진이며 데이터 아키텍처 문서화의 중요한 부분이기도 합니다.

 

논리적 데이터 모델

 

두 번째 세부 레벨은 논리적 데이터 모델입니다. 데이터 흐름과 데이터베이스 콘텐츠를 설명하는 "데이터 모델"의 일반 정의와 가장 밀접하게 관련되어 있습니다. 논리적 모델은 개념 모델의 전반적인 구조에 세부사항을 추가하지만 다양한 데이터베이스 기술과 제품에 적용할 수 있는 만큼 데이터베이스 자체에 대한 명세는 포함하지 않습니다. (프로젝트가 단일 애플리케이션이나 그 외 제한된 시스템과 연관되어 있는 경우 개념 모델은 존재하지 않을 수도 있습니다.)

 

물리적 데이터 모델

 

물리적 데이터베이스 모델은 논리적 모델을 어떻게 실현할 지에 대한 구체적인 사항을 설명합니다. 기술 전문가가 물리적 데이터베이스 모델을 사용하게 될 애플리케이션을 지원하기 위해 하드웨어와 소프트웨어에 실제 데이터베이스 구조를 생성할 수 있을 만큼 충분한 세부 정보를 포함해야 합니다. 따라서 물리적 데이터 모델은 지정된 데이터베이스 소프트웨어 시스템에 한정됩니다. 각기 다른 데이터베이스 시스템이 사용될 경우에 단일 논리적 모델에서 여러 개의 물리적 모델이 파생될 수 있습니다.

데이터 모델링 프로세스 및 기법

데이터 모델링은 기본적으로 전체적인 비전을 구축하는 개념 모델에서 시작해 논리 모델로 진행하며 최종적으로 물리 모델에 포함된 세부 설계로 이어지는 하향식 프로세스입니다.

 

개념 모델의 구축은 대부분 아이디어를 프로그램 개발자의 흐름도와 유사한 그래픽 형태로 전환하는 과정입니다.

 

최신 데이터 모델링 툴은 논리적, 물리적 데이터 모델과 데이터베이스를 정의하고 구축할 수 있도록 지원합니다. 일반적인 데이터 모델링 기법과 단계는 다음과 같습니다.

  • 객체를 결정하고 객체 관계 다이어그램(ERD)을 생성합니다. 객체는 "비즈니스가 관심을 가지고 있는 데이터 요소"로 설명할 수 있습니다. 예를 들어, "고객"은 객체가 될 수 있습니다. "판매" 또한 객체가 될 수 있습니다. ERD에서 이와 같이 서로 다른 객체가 비즈니스에서 서로 어떤 관계를 가지고 있는지, 두 객체 간에 존재하는 상위 레벨 연결은 무엇인지 문서화합니다.

  • 팩트, 측정값, 차원을 정의합니다. 팩트는 데이터의 한 부분으로 제품 판매와 같은 특정 발생이나 트랜잭션을 보여줍니다. 측정값은 수량, 수익, 비용과 같이 정량적입니다. 차원은 설명, 위치, 날짜와 같이 정성적 측정값입니다.

  • 그래픽 툴이나 SQL 쿼리를 통해 데이터 뷰 링크를 생성합니다. SQL에 익숙하지 않은 경우, 그래픽 툴은 가장 직관적인 옵션으로 모델에 드래그 앤 드롭 요소를 지원하여 연결을 시각적으로 구축할 수 있도록 합니다. 뷰를 생성하는 동안 테이블과 그 외 다른 뷰를 단일 출력으로 결합할 수 있는 옵션이 있습니다. 그래픽 뷰에서 소스를 선택하고 이를 이미 출력과 연결된 소스 위로 끌어오면 이러한 테이블의 결합에 참여하거나 생성할 수 있는 옵션을 갖게 됩니다.

최신 분석 솔루션은 그래픽 드래그 앤 드롭 디스플레이를 사용해 데이터 소스를 선택, 필터링, 연결하는 데 도움을 줄 수 있습니다. 고급 툴은 일반적으로 IT 분야에 종사하는 데이터 전문가에게 제공되지만, 사용자들 역시 데이터 인사이트를 바탕으로 스토리텔링을 전달하기 위해 데이터 모델을 시각적으로 생성하고 테이블, 차트, 맵, 그 외 객체를 구성해 자체적인 스토리를 생성할 수 있습니다.

데이터 모델링 사례

비즈니스, 엔터테인먼트, 개인 또는 그 외 애플리케이션의 경우, 데이터 모델링은 시스템을 설계하고 시스템을 활성화하는 데 필요한 인프라를 정의하는 데 반드시 필요한 초기 단계입니다. 여기에는 모든 종류의 트랜잭션 시스템, 데이터 처리 애플리케이션 세트 또는 제품군 또는 데이터를 수집, 생성, 사용하는 그 외 모든 시스템이 포함됩니다.

 

데이터 모델링은 데이터 웨어하우징에 반드시 필요합니다. 데이터 웨어하우스는 다양한 소스에서 가져온 데이터, 즉 각기 다른 형식을 지닌 유사하거나 관련성 높은 데이터에 대한 저장소 역할을 하기 때문입니다. 처음에는 웨어하우스 형식과 구조를 매핑해 웨어하우스 설계 요건과 맞게 유입되는 각 데이터 세트를 관리하는 방법을 결정함으로써 데이터가 분석과 데이터 마이닝에 유용하게 사용될 수 있도록 합니다. 다음으로, 데이터 모델은 분석 툴, 경영진 정보 시스템(대시보드), 데이터 마이닝, 모든 데이터 시스템과 애플리케이션과의 통합을 위한 중요 인에이블러의 역할을 합니다.

 

어떤 시스템이든 초기 설계 단계에서 데이터 모델링은 반드시 선행되어야 하며, 그래야만 그 외 다른 단계에서 모든 프로그램, 기능, 툴의 기반을 구축할 수 있습니다. 데이터 모델은 공용어처럼 모델에서 설명하는 데이터를 이해하고 수용함으로써 여러 시스템이 소통할 수 있습니다. 따라서 데이터 모델은 오늘날과 같은 빅데이터, 머신러닝, 인공지능, 클라우드 연결, IoT, 엣지 컴퓨팅과 같은 분산된 시스템 세계에서 무엇보다 중요합니다.

데이터 모델링의 진화

사실 데이터 모델링은 데이터 처리, 데이터 스토리지, 컴퓨터 프로그래밍만큼 오랜 시간 존재해왔지만, 용어 자체는 데이터베이스 관리 시스템이 발전하기 시작한 1960년대를 기점으로 흔히 쓰이게 되었습니다. 따라서 새로운 구조를 계획하고 설계한다는 개념은 새롭거나 혁신적인 것이 아닙니다. 데이터 모델링은 더 많은 데이터, 데이터베이스, 다양한 데이터가 출현하면서 더욱 구조화되고 공식화되었습니다.

 

오늘날 기술 전문가들은 기존 시스템의 기능을 뛰어넘는 용량과 속도로 비정형 데이터(텍스트, 오디오, 비디오, 원시 센서 출력)를 비롯한 새로운 데이터 소스(IoT 센서, 위치 인식 장치, 클릭스트림, 소셜 미디어)를 다루고 있기 때문에 데이터 모델링은 그 어느 때보다도 중요합니다. 따라서 현재 새로운 시스템, 혁신적인 데이터베이스 구조 및 기법, 새로운 데이터 모델에 대한 지속적인 요구로 인해 이와 같은 새로운 개발 노력이 이어지고 있습니다.

데이터 모델링, 다음 단계는?

정보 연결과 센서, 음성, 비디오, 전자메일을 비롯한 다양한 소스로부터의 대량의 데이터는 IT 전문가를 위한 모델링 프로젝트의 범위를 확장하고 있습니다. 물론 인터넷 역시 이러한 발전을 가능하게 하는 인에이블러 가운데 하나입니다. 클라우드는 끊임없이 연결성이 확장되어 가는 세계에서 현재와 미래의 요구사항을 충족할 만큼 충분히 크고 확장 가능하며 민첩한 유일무이한 컴퓨팅 인프라이기 때문에 솔루션의 주된 부분이라고 할 수 있습니다.

 

데이터베이스 설계 옵션 또한 변화하고 있습니다. 10년 전만 하더라도 주요 데이터베이스 구조는 기존의 디스크 저장 기술을 사용하는 행 중심의 관계형 데이터베이스였습니다. 전형적인 ERP의 총계정원장이나 재고 관리를 위한 데이터는 업데이트와 모델링이 필요한 수십여 개의 테이블에 저장되었습니다. 오늘날, 최신 ERP 솔루션은 테이블의 수는 확연히 줄이고 속도와 효율성은 높인 열(칼럼) 방식 설계를 사용해 활성 데이터를 저장합니다.

 

현업 전문가를 위해 현재 사용할 수 있는 새로운 셀프 서비스 툴이 지속적으로 개선될 전망입니다. 그리고 새로운 툴이 도입되어 데이터 모델링과 시각화를 더욱 간편하고 협업적으로 바꿉니다.

요약

세심히 계획된 완벽한 데이터 모델은 제대로 작동하는 정확하고 유용한 보안 데이터베이스의 개발에 핵심입니다. 개념 모델부터 시작해 데이터 모델의 모든 구성 요소와 기능을 배치하세요. 다음으로 이러한 계획을 논리적 데이터 모델로 구체화하세요. 논리적 데이터 모델은 데이터 흐름을 설명하며 필요한 데이터 유형의 정의가 무엇인지 명시하고 이 데이터를 어떻게 획득, 처리, 저장, 분배할 것인지 명시적으로 보여줍니다. 또한 데이터베이스 제품별로 데이터베이스와 애플리케이션 소프트웨어의 생성을 안내하는 세부 설계 문서인 물리적 데이터 모델을 이끌어냅니다.

 

우수한 데이터 모델링과 데이터베이스 설계는 데이터 웨어하우스 및 분석 툴과 원활하게 호환되며 비즈니스 파트너와 여러 애플리케이션 세트에서 데이터 교환을 지원하는 안정적인 기능성 보안 애플리케이션 시스템 및 데이터베이스의 개발에 반드시 필요합니다. 세심히 계획된 데이터 모델은 데이터 무결성을 보장해 귀사의 데이터가 지닌 가치와 신뢰도를 더욱 높입니다.

placeholder

최신 데이터 모델링 툴 살펴보기

데이터와 비즈니스 컨텍스트를 연결하고 비즈니스 사용자가 인사이트를 얻을 수 있도록 지원하세요.

placeholder

다른 곳에서 찾을 수 없는 아이디어

받은 편지함으로 바로 전달되는 비즈니스 인텔리전스에 가입하세요.

twitter pixeltwitter pixeltwitter pixeltwitter pixeltwitter pixeltwitter pixeltwitter pixeltwitter pixeltwitter pixeltwitter pixeltwitter pixeltwitter pixel