초보자를 위한 데이터 모델링 개념

초보자를 위한 데이터 모델링 개념

소스 노드 : 2623283
데이터 모델링 개념데이터 모델링 개념

데이터 모델링의 개념은 데이터가 시스템을 통해 이동하는 방법에 대한 전체적인 그림을 지원합니다. 데이터 모델링은 데이터 시스템 또는 데이터 시스템의 일부를 설계하는 프로세스로 설명할 수 있습니다. 이러한 모델은 스토리지 시스템에서 데이터베이스, 조직의 전체 데이터 구조에 이르기까지 다양합니다. 데이터 모델은 새로운 시스템을 구현하기 위한 설계 또는 이미 구축된 시스템의 참조 자료로 사용될 수 있습니다. 

"완전한" 데이터 모델은 데이터 시스템 내에서 사용 및 저장되는 데이터 유형, 사용되는 형식, 데이터 파일 간의 관계 및 데이터를 그룹화하고 구성할 수 있는 방법을 전달해야 합니다.

많은 기업이 조직의 특정 요구 사항과 요구 사항을 중심으로 구축된 고유한 개별 데이터 모델(및 그에 따른 고유한 개별 데이터 시스템)을 개발합니다. 이러한 모델은 시스템을 통한 데이터 이동을 시각화하는 데 사용할 수 있습니다. 데이터 모델은 조직을 통한 데이터 흐름의 모든 측면 또는 연구 목적으로 판매 데이터만 표시하는 것과 같은 특정 매개변수를 포괄하려고 시도할 수 있습니다.

잘 설계된 데이터 모델은 다음을 설명합니다. 비즈니스 규칙, 뿐만 아니라 규정 준수 데이터의.

데이터 모델링 프로세스에는 개념적 모델, 논리적 모델 및 물리적 모델의 세 단계가 있습니다. 모델 개발의 각 단계 또는 단계는 특정 목적을 수행합니다. 또한 여러 "유형"의 모델이 있습니다.

시각적 데이터 모델은 건축가의 청사진과 유사하며 데이터 시스템을 개발하거나 변경할 때 지침을 제공하기 위해 연결된 텍스트로 지원될 수 있습니다. 시각적 데이터 모델의 예를 찾을 수 있습니다. 여기에서 지금 확인해 보세요..

데이터 모델링의 이점과 과제

데이터 모델을 개발하면 데이터 시스템을 생성하거나 수정하기 위한 맵과 통신 도구가 제공됩니다. 데이터 모델링 개념은 데이터 시스템 구축을 훨씬 더 쉽게 만듭니다. 새로 구축된 데이터베이스 및/또는 데이터 시스템은 원활한 조직 커뮤니케이션을 지원해야 합니다. 또한 지출 패턴, 송장 및 기타 비즈니스 프로세스에 대한 데이터 수집을 포함하여 실시간 프로젝트를 지원해야 합니다.

데이터 모델링 프로세스를 사용하여 식별할 수 있습니다. 데이터 품질 문제, 중복, 중복 및 누락된 데이터를 포함합니다.

데이터 모델 생성의 한 가지 어려움은 데이터 시스템에 대한 이해 부족입니다. 일반적으로 모델을 구축하면 이러한 문제가 제거됩니다. 또 다른 문제는 한 영역의 작은 변화가 다른 영역에서 상당한 변화를 요구할 수 있다는 것입니다. 또한 데이터 시스템 구조에 너무 집중하여 개별 애플리케이션의 강점과 약점을 무시하기 쉽습니다.

중요한 질문

데이터 모델 개발은 조직의 요구 사항, 요구 사항 및 목표에 대한 정보 수집으로 시작됩니다. 시스템 일부의 모델은 완전히 새로운 시스템을 위한 모델을 개발하는 것보다 더 적은 질문이 필요합니다. 시스템 일부의 모델에 대해 묻는 몇 가지 기본 질문은 다음과 같습니다. 

  • 변경의 목적이나 목표는 무엇입니까?
  • 시스템에서 현재 작업 중인 데이터 유형은 무엇입니까?
  • 어떤 데이터가 필요합니까?
  • 목표를 달성하기 위해 어떤 도구나 소프트웨어가 필요합니까?
  • 도구 또는 소프트웨어가 호환됩니까?

데이터 모델은 조직의 요구 사항을 중심으로 구축되어야 하며 새 모델을 개발하거나 기존 모델을 조정하는 데 중요한 요소입니다. 데이터베이스 또는 완전히 새로운 시스템을 설계할 때 묻는 질문에는 종종 훨씬 더 광범위한 답변이 필요합니다. 다음 질문에 답할 때 XNUMX개년 사업 계획을 통합하는 것이 가장 좋습니다. 

  • 비즈니스 목표(연구, 판매, 앱 개발, 회계 서비스)는 무엇입니까? 이를 통해 비즈니스를 지원하는 최상의 소프트웨어 유형이 결정됩니다(연구용 NoSQL 또는 그래픽, 기본 영업 또는 회계용 SQL, 앱 개발용 다양한 클라우드 또는 여러 클라우드 서비스에 대한 액세스).
  • 조직에 가장 적합하고 비용 효율적인 소프트웨어 유형은 무엇입니까?
  • 얼마나 많은 사람들이 동시에 시스템에 액세스하게 됩니까?
  • 얼마나 많은 부서가 있고, 각 부서에는 몇 명의 사람들이 있습니까?
  • 부서마다 다른 종류의 소프트웨어가 필요합니까?
  • 고려해야 할 특별한 필요 사항이 있습니까? 
  • 얼마나 많은 데이터를 저장해야 합니까?
  • 확장성이 문제인가?
  • 데이터베이스가 다음에 연결됩니까? 비즈니스 인텔리전스 도구?
  • 온라인 분석 쿼리(OLAP), 트랜잭션 처리(OLTP) 또는 둘 다 필요합니까?
  • 데이터베이스가 현재 기술 스택과 통합됩니까?
  • 데이터 형식을 변환해야 합니까?
  • 선호하는 프로그래밍 언어는 무엇입니까?
  • 기계 학습 소프트웨어와 통합됩니까?

데이터 모델링의 XNUMX단계

데이터 모델링이 중요해짐 1960s 동안, 관리 정보 시스템이 처음 대중화되었을 때. (60년대 이전에는 실제 데이터 저장 방식이 거의 없었습니다. 당시 컴퓨터는 기본적으로 거대한 계산기였습니다.) 

데이터 모델링 개념 측면에서 완전히 개발된 데이터 모델은 개념적 모델, 논리적 모델 및 물리적 모델의 세 단계로 구축되는 경우가 많습니다. 이 디자인 프로세스는 데이터 시스템과 데이터가 시스템을 통해 흐르는 방식에 대한 명확한 이해를 제공합니다. 이 프로세스는 또한 스토리지 절차가 작동하는 방식을 보여주고 시스템의 모든 데이터 개체가 표시되도록 하는 데 도움이 됩니다. (데이터가 전자적으로 저장된 정보라면 데이터 객체는 파일이나 데이터 테이블과 같이 전자적으로 저장된 개별 정보 모음입니다.)

개념적 데이터 모델 일반적으로 시스템의 가장 기본적인 구성 요소와 데이터가 시스템을 통해 이동하는 방식을 설명하는 데 사용됩니다. 그만큼 개념적 데이터 모델 정보가 한 부서를 거쳐 다음 부서로 이동하는 방식을 전달합니다. 광범위한 개체(실제로 존재하는 사물의 표현)와 해당 관계(두 개 이상의 개체 간에 존재하는 연관성)를 보여줍니다. 자세한 정보는 일반적으로 생략됩니다.

논리적 데이터 모델 일반적으로 모델 내 데이터 객체의 레이아웃과 구조에 초점을 맞추고 이들 간의 관계를 설정합니다. 또한 물리적 모델을 구축하기 위한 기반을 제공합니다. 그만큼 논리적 데이터 모델 개념적 모델에 유용한 정보를 추가합니다.

물리적 데이터 모델 본질적으로 구현 전 모델 매우 상세하고 종종 데이터베이스 설계에 중점을 둡니다. 데이터베이스 개발에 필요한 세부 정보를 보여줍니다(그러나 시스템의 새로운 부분을 구현하는 데 사용할 수도 있음). 이 데이터 모델링 개념을 사용하면 데이터베이스 제약 조건, 열 키, 트리거 및 기타 데이터 관리 기능을 전달하여 데이터 구조를 훨씬 쉽게 시각화할 수 있습니다. 이 모델은 또한 액세스 프로필, 권한 부여, 기본 및 외래 키 등을 전달합니다.

다양한 유형의 데이터 모델

다음은 다양한 유형의 데이터 모델에 대한 몇 가지 예입니다.

계층적 모델 상당히 오래되었고 1960년대와 70년대에 상당히 인기가 있었습니다. 데이터를 트리와 같은 구조로 구성합니다. 오늘날에는 파일링 시스템과 지리 정보를 저장하는 데 주로 사용됩니다. 에서 계층적 모델, 데이터는 데이터 파일과 일대다 관계로 구성됩니다.

네트워크 모델 계층적 모델과 유사하며 연결된 레코드와의 다양한 관계 생성을 허용합니다. 그만큼 네트워크 모델 사람들이 관련 레코드 집합을 사용하여 모델을 구성할 수 있습니다. 각 레코드는 여러 파일 및 데이터 개체와 연결되어 복잡한 관계를 촉진하고 제시합니다.

엔티티 관계 모델 데이터 파일과 엔터티 및 해당 관계를 그래픽으로 표현한 것입니다. 실제 시나리오를 만들려고 시도합니다. 데이터 시스템 모델로서, 엔티티 관계 모델 엔터티 집합, 관계 집합, 특성 및 제약 조건을 개발합니다. 관계형 데이터베이스 설계에 자주 사용됩니다.

그래프 데이터 모델 데이터 세트 내의 어떤 항목이 노드로 지정되어야 하고, 어떤 항목이 링크로 지정되어야 하며, 어떤 항목을 삭제해야 하는지 결정해야 합니다. 그래프 데이터 모델 데이터의 엔터티, 속성 및 관계에 대한 레이아웃을 제공합니다. 이 프로세스는 반복적이고 시행착오에 의존하며 지루할 수 있지만 올바르게 수행할 가치가 있습니다.  

객체 지향 데이터베이스 모델 방법 및 기능과 관련된 데이터 개체에 중점을 둡니다. 그것은 테이블을 통합하지만 반드시 테이블로 제한되지는 않습니다. 데이터와 해당 관계는 단일 엔터티(데이터 개체)로 함께 저장됩니다. 데이터 개체는 실제 엔터티를 나타냅니다. 그만큼 객체 지향 데이터베이스 모델 다양한 형식을 처리하고 연구에 사용됩니다.

관계형 모델SQL이라고도 하는 는 현재 가장 널리 사용되는 데이터 모델입니다. 데이터를 저장하고 관계를 전달하기 위해 XNUMX차원 테이블을 사용합니다. 특정 유형의 모든 데이터는 테이블의 일부로 행에 저장됩니다. 테이블은 관계를 나타내며 테이블을 조인하면 저장된 데이터 간의 관계가 설정됩니다. 관계형 데이터베이스 모델 다양한 목적을 위해 방대한 양의 소프트웨어가 지원하는 성숙한 모델입니다.

NoSQL 데이터 모델 행과 열을 사용하지 않으며 어떤 종류의 집합 구조도 실제로 사용하지 않습니다. 개발 및 디자인 일반적으로 물리적 데이터 모델을 만드는 데 중점을 둡니다. 특정 단점과 문제가 있는 확장성은 중요한 문제입니다. 

개체 관계형 데이터베이스 모델 객체 지향 데이터베이스 모델과 관계형 데이터베이스 모델을 결합합니다. 객체 지향 모델과 같은 방식으로 객체, 클래스, 상속 등을 저장하지만 관계형 데이터베이스 모델과 같은 테이블 구조도 지원합니다. 이 디자인 디자이너가 해당 기능을 테이블 구조에 통합할 수 있습니다.

데이터 모델링 개념의 중요성

데이터 모델은 청사진과 비슷하지만 데이터베이스 또는 데이터 시스템의 관계, 엔터티 및 특성을 정의합니다. 효율적인 물리적 데이터베이스 및 데이터 시스템을 개발하려면 체계적이고 잘 설계된 데이터 모델이 필요합니다. 효율적인 데이터 검색을 지원하면서 스토리지 문제 및 중복 문제를 제거하려면 데이터 모델링 개념을 잘 이해해야 합니다. 

데이터 모델링은 어려울 수 있으며 각 유형의 모델에는 고유한 이점과 단점이 있음을 인식하는 것이 중요합니다. 

Shutterstock.com의 라이센스에 따라 사용 된 이미지

타임 스탬프 :

더보기 데이터 버 시티