New World

[데이터베이스시스템#1, 2] DB의 이해, DB 모델링 본문

Self-Study/Study

[데이터베이스시스템#1, 2] DB의 이해, DB 모델링

hyeovi 2022. 5. 8. 23:33
728x90
반응형

1. 데이터 베이스의 역할

데이터 관리의 필요

- 대량의 데이터를 저장 및 관리하고 필요한 데이터를 신속히 검색할 수 있도록 보조하는 장치

 

파일 처리 시스템

- DB가 개발되기 전, 데이터 관리

- 업무 별 애플리케이션이 개별 데이터를 데이터 파일에 저장.관리

- 데이터 종속의 문제 :저장된 데이터가 특정 H/W에서 또는 사용자 및 S/W만 사용될 수 있도록 제한(물리/논리)

- 데이터 중복의 문제 :일관성, 보안성, 경제성에서 문제

- 무결성 훼손의 문제 :데이터가 가질 수 있는 가능 범위(제약조건), 데이터 무결성의 문제(정확성 보장, 값에 대한)

- 동시 접근의 문제점 : 동일 데이터에 다수 사용자의 접근 허용 시 일관성 훼손

 

 

2. 데이터베이스의 특징

특징 DBMS의 3단계 구조 용어
1. DB의 자기 기술성
2. 프로그램과 데이터의 격리 및 추상화
3. 다중 뷰 제공
4. 데이터 공유와 다수 사용자 트랜잭션 처리
데이터 : 어떤 사실에 대한 특징을 나탈 수 있는 값과 값에 대한 설명

DB : 데이터의 집합

DBMS : DB에 저장된 데이터의 구성, 저장, 관리, 사용을 위한 소프트웨어 패키지

데이터베이스 시스템 : 정보를 DB에 저장, 관리하여 사용자에게 요구된 형태의 정보로 제공하는 컴퓨터 기반 시스템

 

3. 데이터베이스의 구성요소

DB언어

1. DBMS는 사용자가 DB를 쉽게 사용하고 다룰 수 있도록 언어 형태의 인터페이스 제공

2. 역할에 따른 종류의 언어로 구분

-DDL : DB 객체를 생성, 수정, 삭제하기 위한 언어

-DML : 구조화된 데이터에 사용자가 접근 및 조작할 수 있도록 지원하는 언어(검색, 삽입, 삭제, 수정)

3. 현대 DB언어는 자연어와 유사한 형태의 SQL로 표준화

 

중앙집중식 방식 : 단일 서버가 다수의 클라이언트 장치를 대신하여 작동, 중앙 컴퓨터 과부화로 전체적인 성능 저하

분산 시스템 방식 : 클라이언트 장치의 성능 향상으로 자체적인 처리 능력 보유, 부하 분산 & 비용 절감 및 이식성 증가

 


1. DB 모델링 이해

DB 구현 과정 DB 모델링

데이터 모델

- 사용할 데이터를 선별하여 DB에 체계적으로 구조화하여 저장, 사용할 방법이 필요

 

1. 개념적 데이터 모델링

- 요구사항의 해석 오류 방지

- 실세계의 데이터를 개념적으로 일반화하여 데이터 구조, 타입, 속성, 관계, 제약조건 등을 이끌어내는 과정

 

2. 논리적 데이터 모델링

- 특정 DBMS의 구현 모델에 맞춰 데이터를 표현

- 데이터 정의 언어로 된 개념 스키마 생성

 

3. 물리적 데이터 모델링

- DB 파일의 내부 저장구조, 파일 구성, 인덱스, 접근 경로 등을 결정

 

2. 사용자 요구사항 분석

필요성

- 요구 명세 X, DB 설계 및 개발 진행 => 결과물 완성도 저하, 사용자 신뢰도 추락

- 시스템의 대상이 되는 업무를 분석 => 신속하고 효과적으로 업무 처리

 

분석 : 국제 표준화 IEEE-Std-830

- 데이터에 대한 충분한 사전 분석 X 적절한 설계가 불가능

 

요구사항 도출 : 구축대상, 목표, 범위를 기준으로 조사범위 결정, 외부자료 수집 및 분석

요구사항 분석 : 요구사항 목록 정리 및 관리자 승인, 요구사항을 문서화, 지속적인 관리

요구사항 기록 : 요구사항의 명확성, 완전성, 모호성 검증

 

3. ER 모델

개체 간의 관계를 정형화 시킨 모델, 개념적 모델링 단계에서 사용되는 데이터 모델

개체 : 개체를 설명하는 여러 속성들로 구성

개체 집합 : 같은 속성을 공유하는 개체들의 모임

 

속성 : 개체를 구체적으로 설명하는 특성, 여러 종류로 구분

- 단순 : 더 이상 작은 구성요소로 나눌 수 없는 속성

- 복합 : 더 작은 구성요소로 나눌 수 있는 속성

- 단일값 : 하나의 개체에 대해 단 하나의 값만을 갖는 속성

- 다중값 : 하나의 개체에 대해 여러 개의 값을 갖는 속성

- 유도 : 다른 속성의 값으로부터 값이 유추될 수 있는 속성

- 저장 : 유도 속성을 위해 사용될 수 있는 속성

- 널 : 미지의 값 (없음 or 0 이 아님), 입력된 적 없는 적용 불가능한 값

 

관계 집합

관계 : 개체 간의 연관성

관계 집합 : 개체 집합 간의 전체적 연결 관계

 

제약조건

- 데이터 모델 : 데이터, 의미, 구조, 연관성 및 데이터의 조건을 표현하기 위한 도구

- 개체와 관계에 대한 표현의 정확성을 위해 데이터가 항상 준수해야 하는 제약조건을 정의

- 종류 : 사상수, 참가 제약조건, 키 속성

 

사상수 참가 제약조건 키 속성
관계 집합에 참가한 개체 집합들에 대해 각각의 개체가 얼마만큼의 관계를 맺을 수 있는지 명시한 수 전체적 참가
모든 개체가 관계 집합에 참여

각 개체를 구별하는데 사용되는 유일한 값을 갖는 속성의 집합
부분적 참가
일부 개체가 관계 집합에 참여
재귀적 관계
한 개체 집합이 자기 자신과 관계 집합을 형성하는 관계
일대일
일대다
다대다
약한 : 개체의 존재 유무가 관계를 맺고 있는 개체의 존재에 종속

강한 : 약한 개체 집합과 연결되는 일반 개체 집합

 

 

반응형
Comments