데이터베이스란?
데이터베이스란 현실 세계의 것들을 이해하고 컴퓨터 세계에 대응시키는 과정이다.
이러한 과정은 아래의 3개의 과정으로 나타낼 수 있다.
Part 1.Modeling : 현실 세계를 이해하는 과정 (Understanding)
Part 2. Implementation : 설계 및 코딩을 하는 과정 ( design and coding)
Part 3. Application and Management : 관리하는 과정
우리는 Modeling(part1) 에서 Implementation(part2) 로 넘어가기 위해 UML(Unified Modeling Language) 다이어그램을 이용한다. (이후의 글에서 UML에 대한 설명)
데이터베이스 생명주기와 소프트웨어 생명주기의 비교
이를 한국어로 바꾸면
Part 1. data Modeling (데이터 모델링)
3가지 분류로 나누어 진다.
1. 정형화 된 방법으로 현실 세계를 이해
2. 객체 지향 데이터 모델의 제작( UML Class Diagram)
3. 관계형 데이터 모델의 제작(E-R 모델)
Part 2. Database Design(데이터베이스 설계)
관계형 데이터 모델 스키마 설계
Part 3. Query Language( 질의 언어)
데이터베이스에서 조건에 맞는 데이터를 찾기 위해 데이터베이스에 묻는 것을 질의 또는 쿼리(Query)라 하고, 이를 사용자들이 쉽게 쓸 수 있도록 구조화시킨 언어를 SQL(Structured Query Language)이라고 한다.
(Part 4. Semi-Structured Data Model)
XML
데이터베이스를 바라보는 2가지 관점
1. 논리적 관점
- 물리적과 아무 관계없이 개념적인, 논리적인 내용
2. 물리적 관점
- 데이터 포맷이 어떻게 되는지, 데이터를 어떻게 집어넣을지 등의 내용
데이터 베이스의 3단계 스키마 ( 3 level schema) - 데이터 베이스에서 가장 중요한 개념 중 하나
일반적으로, 모든 데이터베이스는 1. 외부 단계, 2. 개념 단계, 3. 물리 단계의 3단계로 나누어지며 각각은 다음과 같이 정의된다.
물리 단계(Physical Level)
물리 계층에서는 물리적인 표현(Physical Representation)에 대해서 다루는 것으로 실세계의 이해 결과를 어떻게 컴퓨터에 넣을 것인가와 관련된 내용으로 아래 3가지를 고려해야 한다.
- 어떻게 구현을 할 것인가?
- 컴퓨터 시스템은 무엇인가?
- 서로 다른 기계들을 어떻게 처리하게 할 것인가?
개념 단계(Conceptual or Logical Level)
개념 단계는 실세계를 이해하는 과정이자 물리적인 표현과 논리적인(혹은 개념적인) 표현 사이에 독립성을 보장하는 과정이다. 여기서 독립성을 보장하는 방법으로 위의 PART 1에서 사용하는 데이터 모델링 방법이 이용된다.
외부 단계(External Level)
실제 응용 프로그램에서 사용하는 단계
이 3개의 단계로 구성되는 것을 Three Level Architecture라고 한다.
Logical 부분과 Physical 부분을 분리함으로써 logical 부분은 physical 부분을 고려하지 않아도 된다.
(Logical 개발하는 사람들이 physcal 하게 어떻게 구현되어 있는지 고려하지 않아도된다)
ex) 오라클을 쓰다가 sql서버로 넘어갈 때 아무 문제가 없다 (대략적인 예시일 뿐임)
physical과 logical로 넘어갈 때 표준화가 일어난다. 대표적으로 sql을 이용.
데이터베이스 왈" 너희들은 logical 하게만 만들어줘 시스템적인 부분은 우리가 support할게!"
'Computer Science > 데이터베이스' 카테고리의 다른 글
관계 데이터 모델1- 관계 모델의 기본 (0) | 2022.10.13 |
---|---|
UML 클래스 다이어그램3 - Weak Entity Sets, E-R Model (0) | 2022.10.10 |
UML 클래스 다이어그램2 - 설계 예시, 제약 사항 (0) | 2022.10.10 |
UML 클래스 다이어그램1 - 정의, 핵심 요소 (0) | 2022.10.09 |
데이터베이스의 역사 (0) | 2022.10.09 |