본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
ch 3. 데이터베이스 모델링 - 데이터베이스 모델링 개념
데이터베이스 모델링 개념과 데이터 아키텍트의 역할
데이터베이스 모델링은 정보 시스템 구축에 필요한 데이터의 존재 및 업무 정보를 분석하고 설계하는 방법이다. 이는 조직의 정보 수집 및 관리 시스템에 대한 시각적 청사진을 생성하는 프로세스이다. 데이터 모델링은 비즈니스가 수집하는 데이터, 데이터 세트 간의 관계, 그리고 데이터 저장 및 분석 방식을 정의한다.
1. 데이터 모델링의 필요성
데이터 모델링은 시스템 개발의 성공을 위한 필수적인 단계이다.
- 일관성 및 의사소통: 조직 내 데이터 문서화 및 시스템 설계의 일관성을 확보하고, 업무 담당자와 기술 담당자 간의 의사소통을 돕는다.
- 위험 감소 및 효율성: 잠재적 위험 요소를 조기에 발견하여 개발 오류를 줄인다. 또한, 데이터베이스 설계 및 생성 속도를 높이고, 효율적인 기술 적용 방안을 제시한다.
- 변경에 대한 유연성: 데이터 구조 변경에 따른 프로젝트 일정 지연을 방지한다.
2. 데이터 모델링의 3가지 관점
데이터 모델링은 다음 세 가지 관점에서 진행될 수 있다.
- 데이터 관점: 어떤 데이터가 필요한지, 데이터 간의 관계는 무엇인지 모델링한다.
- 프로세스 관점: 업무를 통해 어떤 일을 처리해야 하는지 모델링한다.
- 상관 관점: 프로세스에 따라 데이터가 어떻게 영향을 받는지 모델링한다.
3. 데이터 모델링의 3단계
데이터 모델링은 추상화 수준에 따라 세 단계로 진행된다.
- 개념적 데이터 모델링 (Conceptual Data Modeling)
- 목적: 비즈니스 요구사항을 중심으로 데이터 모델의 추상적인 청사진을 그린다. 이 단계는 사용자 및 비즈니스 전문가의 관점을 반영한다.
- 특징: 특정 DBMS나 기술에 종속되지 않는다.
- 구성 요소: 엔티티(Entity)와 엔티티 간의 관계(Relationship)를 정의한다. 이 단계에서는 엔티티의 속성을 상세하게 정의하기보다 엔티티와 관계의 본질을 파악하는 데 집중한다.
- 논리적 데이터 모델링 (Logical Data Modeling)
- 목적: 개념적 모델을 구체화하여 데이터베이스의 논리적 구조를 정의한다.
- 특징: 여전히 특정 DBMS에 종속되지 않는다.
- 구성 요소: 엔티티를 테이블로, 속성을 열로 변환한다. 기본 키(Primary Key)와 외래 키(Foreign Key)를 정의하여 테이블 간의 관계를 명확히 한다. 데이터 중복을 최소화하기 위해 정규화(Normalization)를 수행한다.
- 물리적 데이터 모델링 (Physical Data Modeling)
- 목적: 논리적 모델을 특정 DBMS에 맞게 실제 구현 가능한 설계로 변환한다.
- 특징: DBMS에 종속적이다.
- 구성 요소: 테이블과 열에 대한 실제 데이터 타입(VARCHAR, INT), 저장 공간(Table Space), 인덱스(Index) 등을 정의한다. 성능 최적화를 위해 비정규화(Denormalization)를 고려할 수 있다.
4. 데이터 모델링의 핵심 구성 요소
데이터 모델링의 핵심은 엔티티, 속성, 관계이다.
- 엔티티(Entity): 비즈니스에서 관리해야 하는 유의미한 개체이다. (예: 고객, 상품).
- 속성(Attribute): 엔티티가 가지는 특성 또는 정보 단위이다. (예: 고객 엔티티의 이름, 주소).
- 관계(Relationship): 엔티티 간의 논리적인 연관성이다. (예: 고객은 상품을 구매한다). 관계는 1:1, 1:N, N:M 등으로 표현된다.
5. 데이터 아키텍트(Data Architect)의 역할
데이터 모델링은 비즈니스 전문가, 개발 실무진 등 다양한 참여자들과 함께 수행되는 작업이다. 이 중 데이터 아키텍트(Data Architect)는 데이터 모델링 프로세스의 핵심적인 역할을 담당하는 전문가이다.
- 비즈니스 요건 정의: 비즈니스 전문가와 협력하여 비즈니스상의 요구사항을 기술적인 데이터 요건으로 변환한다.
- 데이터 모델 설계: 조직의 데이터 관리 프레임워크를 시각화하고 설계한다.
- 표준화 및 거버넌스: 데이터 표준, 명명 규칙, 데이터 거버넌스 정책을 수립하고 관리한다.
- 기술 중재: 다양한 데이터베이스 기술과 처리 도구의 효율적 적용 방안을 제시하고, 기술 선택에 대한 의사결정을 돕는다.
- 데이터 흐름 관리: 조직 전체의 데이터 흐름(생성, 저장, 이동, 삭제)을 파악하고 최적화한다.
데이터 아키텍트는 기술적인 지식뿐만 아니라 비즈니스 도메인에 대한 깊은 이해를 바탕으로 데이터의 가치를 극대화하는 데 기여한다.
드디어 데이터베이스 실전에 들어갔다. 모델링 하다보면 가끔 막히는 부분이나 내가 설계를 제대로 한 게 맞나 고민되는 부분이 있었는데, 수업을 통해서 도움되는 부분이 있었으면 좋겠다!
https://fastcampus.info/4n8ztzq
(~6/20) 50일의 기적 AI 환급반💫 | 패스트캠퍼스
초간단 미션! 하루 20분 공부하고 수강료 전액 환급에 AI 스킬 장착까지!
fastcampus.co.kr
'개발공부 > 데이터베이스' 카테고리의 다른 글
패스트캠퍼스 환급챌린지 33일차 : 한 번에 끝내는 컴퓨터 공학 & 인공지능 복수전공 초격차 패키지 강의 후기 (1) | 2025.08.02 |
---|---|
패스트캠퍼스 환급챌린지 32일차 : 한 번에 끝내는 컴퓨터 공학 & 인공지능 복수전공 초격차 패키지 강의 후기 (4) | 2025.08.01 |
패스트캠퍼스 환급챌린지 31일차 : 한 번에 끝내는 컴퓨터 공학 & 인공지능 복수전공 초격차 패키지 강의 후기 (2) | 2025.07.31 |
패스트캠퍼스 환급챌린지 30일차 : 한 번에 끝내는 컴퓨터 공학 & 인공지능 복수전공 초격차 패키지 강의 후기 (2) | 2025.07.30 |
패스트캠퍼스 환급챌린지 29일차 : 한 번에 끝내는 컴퓨터 공학 & 인공지능 복수전공 초격차 패키지 강의 후기 (4) | 2025.07.29 |