여니의 프로그래밍 study/MySQL

[데이터베이스 Database] 데이터베이스 시스템과 스키마에 대해 알아보자!

여니's 2020. 3. 24. 15:55

안녕하세요 공대생 블로거 여니입니다.

(어제 mysql 깔다가 server fail이 계속 떠서 5시간 넘게 헤맸는데 결국 해결했네요..휴 ㅠ.ㅠ 이것도 포스팅 바로 할게요!)

이전 포스팅에서는 데이터베이스 관리 시스템에 대해 배웠는데 이번 장에서는 데이터베이스 시스템에 관해 다루네요!

* 이 포스팅의 출처는 데이터베이스개론 책입니다! *

데이터베이스 시스템이 무슨 시스템인지에 대해 먼저 알아야 겠죠?

젤 처음엔 데이터베이스 시스템의 정의에 대해 알아보도록 하죠.

데이터베이스 시스템은 데이터베이스에 데이터를 저장하고, 저장된 데이터를 관리해서 조직에 필요한 정보를 생성해주는 시스템이에요.

따라서 다양한 목적의 정보 처리 시스템을 구축하는 데 필요한 핵심 요소인 셈이죠.

 

 

데이터베이스는 뭐고 데이터베이스 관리 시스템은 또 뭐고, 데이터베이스 시스템!? 같은 용어인가? 라는 생각이 드시죠?

하지만 차이가 있다는거!

데이터베이스는 데이터를 저장해 창고 같은 역할을 하는 아이이구요.

데이터베이스 관리 시스템은 데이터베이스에 저장된 데이터가 일관되고 무결한 상태로 계속 유지되도록 관리하는 역할을 해요.

데이터베이스 시스템은 데이터베이스와 데이터베이스 관리 시스템을 이용해 조작에 필요한 정보를 제공해주는 전체 시스템이에요.

즉 데이터베이스와 데이터베이스 관리 시스템은 데이터베이스 시스템의 핵심 구성 요소!

 

 

다들 스키마라는 말 들어보신적 있으신가요?

이전 장에서도 잠깐 다뤘던 단어에요.

스키마는 데이터베이스에 저장되는 데이터의 구조와 제약조건에 관해서 전반적인 정의들을 기술해놓은 집합이에요.

스키마에는 3가지의 종류가 있는데요!

 

1. 외부 스키마

--> 외부스키마는 개별 사용자에게 필요한 데이터베이스를 정의한 것이에요.

하나의 데이터베이스에 여러개의 외부 스키마가 존재할 수 있어요.

(개념스키마랑 내부스키마는 하나의 데이터베이스에 하나의 스키마만 존재할 수 있다는 차이가 있고요.)

 

2. 개념 스키마

--> 데이터 베이스를 이용하는 프로그래머나 설계자들의 관점에서 바라보는 스키마에요.

여러 외부 스키마들을 합치면 개념스키마로 통합되죠!

외부 스키마가 개념 스키마의 데이터를 입맛대로 끌어다 썼으니까요!

 

3. 내부 스키마

--> 내부 스키마는 전체 데이터베이스가 저장 장치에 실제로 저장되는 방법을 정의한 것이에요.

내부 스키마에는 구조,크기 등 물리적인 저장 구조를 표현해요.

 

 

다음 포스팅에서는 데이터베이스 사용자와 데이터 언어에 대해 다뤄보도록 할게요:)

다음포스팅에서 만나요!