Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 리눅스
- GPT-4's answer
- write by chatGPT
- 자바네트워크
- 역학
- Database
- oracle
- 자바
- JVM
- kotlin
- 시스템
- 자바암호
- 소프트웨어공학
- write by GPT-4
- flet
- 파이썬
- Spring boot
- 뉴턴역학
- python
- 웹 크롤링
- 코틀린
- NIO
- GIT
- lombok
- 고전역학
- 유닉스
- android
- Java
- chatGPT's answer
- 인프라
Archives
- Today
- Total
Akashic Records
데이터베이스 모델링 본문
728x90
데이터베이스 모델링 이란 ?
현실 세계의 업무적인 프로세서를 물리적으로 데이터베이스화 하기 위한 과정으로 실체와 관계를 중심으로 체계적으로 표현하고 문서화 하는 기법이며 정보 시스템의 중심을 데이터의 관점에서 접근하는 데이터 중심의 분석방법.
데이터베이스 모델링 과정
과정 | 과정 주요 TASK |
요구사항 정의 및 업무분석 | - 정보화대상 업무의 문서를 이용하여 데이터로 관리되는 항목을 파악하고 세부적인 업무 프로세스 정의를 위해 현업 담당자의 인터뷰를 실시- 사용자 요구분석은 기본적인 서류중심의 분석이 마무리된 후에 진행 |
개념적 모델링 | - 개별 사용자의 뷰를 대상으로 분석 및 설계를 통해 엔티티, 속성을 정의하고 관계등을 표현하여 중복 및 불일치되는 점을 제거하여 최종 하나의 개념적 데이터 모델을 작성함 |
논리적 모델링 | - 개념적 설계결과와 처리요구사항을 입력으로 하여 DBMS가 처리 가능한 스키마를 만드는 것으로 조직 전체의 입장에서 본 DB 구조로서DB내의 개체와 개체들간의 관계 그리고 제약조건 등에 대한 명세화(Specification)작업을 수행 함. |
물리적 모델링 | - 레코드 속성별 데이터 타입과 크기를 정의- 정규화된 모델에 각 제약 조건을 정의(Check, Rule, Default, Null…)- 데이터 사용량 분석을 통해 성능적 요소를 고려한 인텍스 및 역정규화- 보안 및 무결성 확보를 위한 방안 강구 |
개념적 모델링
개념 모델단계에서는 달성해야 할 목적에 맞게 무엇(What)을 해야 하는지에 초점을 두고 해야 하므로 적용할 DBMS를 고려해서 설계하지 않아야 함.
업무 분석시 발견되는 업무처리 내용 중 명사 또는 개념적 명사 중심으로 용어를 정리하고 반드시 의미 설명을 하여 개념 설계가 이루어져야 함.
ERD는 확인 및 Review의 효율성을 위해 현업에서 사용되는 용어를 선택하도록 노력해야 함.
개념모델 단계의 산출물은 논리모델의 입력물로서 추적성이 용이한 문서가 되고 무결성 규칙이 유지되도록 산출물이 정리되어야 함.
주요 TASK
TASK | 내용 | ||||||||
개체 정의(Entity Definition) | 저장되고 관리되어야 할 정보(명사)로서 물리적으로 DBMS의Table하나에 해당된다.Entity를 추출하기 위한 방법은 다음과 같다.
| ||||||||
속성 정의(Attribute Definition) | Entity 내에서 관리되는 정보들의 항목으로서 Entity를 설명하는데 사용되는 명사. Entity를 구성하는 요소가 되며, 하나의 Entity에는 고유식별자를 포함한 하나 이상의 속성이 포함된다.속성의 명칭을 정의하는 방법
속성은 물리적 개발 단계에 앞서 각 속성의 값의 범위(Scope), 크기(Size), 형식(Format), Null 여부 등의 특성들을 기술해주어야 한다. | ||||||||
식별자 정의 | 한 Entity 내에서 각각의 인스턴스를 유일하게 구분할 수 있는 단일속성 또는 속성그룹으로 중복을 배제함을 의미하며 실제 무결성(Entity Integration)이라 함
| ||||||||
관계(Relational) | 두 개의 Entity나 그 자신과의 특정관계를 연결하여 양방향으로 표현한 것을 의미한다. 관계선과 관계명, 카디널리티(Cardinality), 옵셔널리티(Optionality) 등으로 업무규칙(Business Rules)을 표현한다.
|
논리 모델링
개념적 데이터 모델을 특정 DBMS가 처리할 수 있는 논리적 모델 또는 스키마로 변환시킴
논리적 모델은 데이터베이스 설계과정의 구현과 직접 관련되며 이는 성능, 무결성, 보안성 및 사용자에게 직접영향을 미치는 여러 요소를 결정하는 과정에 목적을 둠
논리적 모델 설계 요소
입력 요소 | - 개념적 데이터 모델(E-R)이 매핑규칙으로 적용- 업무의 운영요구 조건, 자료량과 사용용도- 일관성 제약조건(무결성 확보방법)- 사용할 DBMS의 논리적 구조와 데이터 정의어 |
출력 요소 | - 특정 DBMS에 의하여 구현될 수 있는 데이터베이스 스키마- 처리 가능한 뷰 및 뷰를 이용한 보안에 관한 제약사항- 물리적 설계단계에서 적용될 매뉴얼- 응용프로그램 설계 및 데이터베이스 운영지침 |
물리적 모델링
논리적 모델링 단계에서 얻어진 데이터베이스 스키마를 좀더 효율적으로 구현하기 위한 작업과 함께 DBMS 제품 특성에 맞게 설계내용의 개체들을 정의하는 단계
데이터의 저장관리 측면은 DBMS가 지원하는 방법 중에서 선택하는데 저장 구조 및 접근 경로가 간결하게 되어야 함 – 인덱스 및 탐색 기법
저장 레코드 데이터들에 대하여 타입, 데이터 값의 분포, 사용될 응용, 접근빈도 고려, 데이터 표현, 압축 양식, 레코드 집중화에 따른 순차성 설계 등을 고려해야 한다.
728x90
'오래된글 > DataBase' 카테고리의 다른 글
Oracle - 변환 함수 (0) | 2018.04.09 |
---|---|
Oracle - 문자 함수 (0) | 2018.04.09 |
데이터 저장기술 (0) | 2018.04.09 |
Oracle - 날짜 관련함수 (0) | 2018.04.09 |
SQL 에서 꼭 지켜야 할 사항 (0) | 2018.04.07 |
Comments