데이터베이스 개요
1. 데이터 저장소
- 데이터저장소는 데이터들을 논리적인 구조로 조직화하거나 물리적인 공간에 구축하는것을 의미한다.
- 논리 데이터저장소는 데이터 및 데이터 간의 연관성, 제약조건을 식별하여 논리적인 구조로 조직화한 것이다,
- 물리 데이터저장소는 논리 데이터저장소를 소프트웨어가 운용될 환경의 물리적 특성을 고려하여 실제 저장장치에 저장한 것을 의미한다.
2. 데이터베이스
데이터베이스는 여러 사람에 의해 공동으로 사용될 데이터를 중복을 배제하여 통합하고, 쉽게 접근하여 처리할 수 있도록 저장장치에 저장하여 항상 사용할 수 있도록 운영하는 운영 데이터이다.
<데이터베이스 구분>
- 통합 데이터(Integrated Data)
- 저장 데이터(Stored Data)
- 운영 데이터(Operational Data)
- 공용 데이터(Shared Data)
3. DBMS
- DBMS는 사용자의 요구에 따라 정보를 생성해주고, 데이터베이스를 관리해주는 소프트웨어이다.
- 기존 파일 시스템이 갖는 데이터의 종속성과 중복성의 문제를 해결하기 위해 제안된 시스템이다.
<DBMS의 필수 기능>
기능 종류 | 설명 |
정의 기능 (Definition) |
데이터의 형(Type)과 구조에 대한 정의, 이용방식, 제약 조건 등을 명시하는 기능 |
조작 기능 (Manipulation) |
데이터 검색, 갱신, 삽입, 삭제 등을 위해 인터페이스 수단을 제공하는 기능 |
제어 기능 (Control) |
데이터의 무결성, 보안, 권한 검사, 병행 제어를 제공하는 기능 |
<여기서 Tip!>
데이터베이스에 있어 기본중의 기본인 개념이며 정말 중요한 개념이다.
무조건 알고 가야한다.
4. 데이터 독립성
데이터의 독립성은 종속성에 대비되는 말로 논리적 독립성과 물리적 독립성이 있다.
독립성 종류 | 설명 |
논리적 독립성 | 응용 프로그램과 데이터베이스를 독립시킴으로써 데이터의 논리적 구조를 변경시키더라도 응용 프로그램은 영향을 받지 않음 |
물리적 독립성 | 응용 프로그램과 보조기억장치 같은 물리적 장치를 독립시킴으로써, 디스크를 추가/변경 하더라도 응용 프로그램은 영향을 받지 않음 |
5. 스키마
스키마는 데이터베이스의 구조와 제약조건에 관한 전반적인 명세를 기술한 것이다.
종류 | 내용 |
외부 스키마 | - 사용자나 응용 프로그래머가 각 개인의 입장에서 필요로 하는 데이터베이스의 논리적 구조를 정의한 것 |
개념 스키마 | - 데이터베이스의 전체적인 논리적 구조 - 모든 응용 프로그램이나 사용자들이 필요로 하는 데이터를 종합한 조직 전체의 데이터 베이스로, 하나만 존재함 |
내부 스키마 | - 물리적 저장장치의 입장에서 본 데이터베이스 구조 - 실제로 저장될 레코드의 형식, 저장 데이터 항목의 표현방법, 내부 레코드의 물리적 순서 등을 나타냄. |
<여기서 Tip!>
데이터베이스에 가장 기초적인 개념들이다.
아래 사진을 보면 이번 챕터의 개념을 한눈에 알아볼 수 있다.

이미지 출처: https://press17.tistory.com/40
위 그림을 보고 설명하겠다.
일단 스키마는 데이터베이스의 조직이나 구조를 의미한다.
스키마는 데이터 사전(Data Dictionary)에 저장된다.
스키마는 아래와같이 3가지로 나뉜다.
<외부 스키마>
사용자에 따라 어떤 구조로 데이터를 제공할지에 대한 구조를 뜻한다.
데이터 질의어를 통해 여러 사람들이 본인들 기준에 맞춰 데이터를 추상화하여 사용한다.
그래서 응용프로그램, 사용자 마다 여러 환경에 맞추어 쓸 수 있게 변경시킨 것으로 외부스키마는 여러개일 수 있다.
<개념 스키마>
실제 데이터를 DB에 어떻게 저장할지에 대한 데이터의 논리적 구조를 뜻한다.
종속성 중복성 등을 고려하여 최적의 구조를 만들고 데이터를 저장한다.
이렇게 만들어진 데이터베이스는 단 하나이며 이 데이터를 기반으로 사용자들이 외부 스키마를 만들 수 있다.
<내부 스키마>
데이터베이스가 물리적 저장장치에 어떻게 저장될지에 대한 물리적 구조를 뜻한다.
시스템을 설계하는 것으로
결론적으로 스키마들은 외부에서 개념 개념에서 내부로 이어진다.
그리고 그림과 같이 스키마 구조 사이에서 꼭 필요한 것은 바로 독립성이다.
이 개념이 없으면 수많은 오류가 생길 것이다.
<논리적 독립성>
외부/개념 사상이라고도 부른다.
외부 스키마와 개념 스키마를 독립 시킴으로써 개념스키마를 변경해도 외부 스키마는 영향받지 않는다는 의미이다.
<물리적 독립성>
개념/내부 사상이라고도 부른다.
개념 스키마와 내부 스키마를 독립시킴으로써 내부 스키마를 변경해도 개념 스키마는 영향받지 않는다는 의미이다.
이 챕터에서 개념간의 관계를 잘 알면 쉽게 이해하고 외울 수 있다.

읽어주셔서 감사합니다!
정처기 화이팅!