앞의 글을 읽으시면 이해에 도움이 됩니다.
2023.10.09 - [Computer Science/데이터 베이스] - [데이터베이스] 데이터베이스의 정의
[데이터베이스] 데이터베이스의 정의
1. 데이터베이스(Dababase)란? 데이터베이스는 서로 연관이 있는 데이터들의 모임입니다. 데이터는 알려진 사실, 즉 FACT로서 함축적인 의미를 가지고, 기록될 수 있는 것을 말합니다. 따라서 데이터
hi-guten-tag.tistory.com
1. 데이터베이스의 특징
- 데이터베이스 방식에는 단일 저장소에 데이터가 저장되고, 여러 사용자에 의해 Query, Transaction, Application을 통해 이 데이터를 공유합니다.
- 위의 방식을 위해 데이터베이스에는 여러 가지 특성이 있습니다.
- 해당 특성은
Self-Describing
,Insulation
,Data Abastraction
,Supporft of multiple views of the data
,Saring of data and multiuser transaction processing입니다.
2. Self-Describing
- 데이터베이스 시스템은 데이터베이스와 데이터베이스의 Structure, Type, Constraint까지 포함하고 있습니다.
- 데이터베이스에 대한 정의는 DBMS
catalog
에 저장되며, 여기에 저장되는 정보를meta-data
라고 합니다. - 카탈로그는 DBMS가 사용하며, 데이터베이스 구조에 관한 정보를 원하는 사용자가 카탈로그를 이용합니다.
- 결론적으로, Self-Describing이란 데이터베이스 시스템에는 데이터베이스와 그에 관한 모든 정의가 포함되어 있다는 의미입니다.
3. Insulation
- 기존의 파일처리는 데이터 파일의 구조가 변경되면, 데이터 파일에 접근하는 모든 프로그램도 변경해야 합니다.
- 하지만 DBMS에는 데이터 파일의 구조의 변경이 데이터와 상관없이 DBMS catalog에 저장됩니다.
- 따라서 데이터 파일의 구조가 변경되어도 응용 프로그램을 변경할 필요가 없습니다.
- 이러한 성질을
Program-data independence
라고 합니다.

- 위의 그림에서 A 데이터 항목이 k째 위치부터 시작된다고 가정해 봅시다.
- 근데 A 앞에 B 데이터 항목을 넣는다면 A의 시작 위치는 변경되어야 합니다.
- 기존의 파일처리에서는 응용 프로그램을 변경하여 A의 시작 위치를 다시 명시해야 하지만,
- DBMS는 이를 catalog에 저장하여, 변경이 발생해도 인터페이스가 유지되는 한 응용 프로그램은 변경할 필요가 없습니다.
4. Data Abstraction
Data Abstraction
은Program-data independence
와Program-operation independence
를 제공합니다.- DBMS는 데이터가 어떻게 저장되었고, 연산이 어떻게 구현되었는지에 대한 자세한 정보보다는 데이터에 대한
Conceptual Representation
을 제공합니다. Data Model
은 사용자에게 데이터에 대한 개념적인 표현을 제공하는 데 이용되는 데이터 추상화입니다.- Data Model은 대부분의 사용자가 관심을 갖지 않는 기억 장소와 구현에 관한 상세한 정보를 숨깁니다.
5. Support of multiple vies of the data
- 다양한 사용자는 서로 다른 뷰를 가지고 데이터를 보게 됩니다.
- 아래 그림과 같이 어떤 사용자는 학생의 성적에만 관심이 있는 경우가 존재하고, 어떤 사용자는 어떤 과목의 선수 과목에만 관심이 있는 경우 각 사용자에게 각기 다른 뷰를 제공해야 합니다.


- 따라서 DBMS는 사용자들이 자신의 뷰를 정의할 수 있도록 하는 기능을 제공해야 합니다.
- 이렇게 생성된 뷰는 실제 데이터베이스에 저장되지 않습니다.
6. Sharing of data and multiuser transaction processing
- 이 특성은 동시 사용자에 대한 처리를 제어하는 특성입니다.
Concurrency Control
이란 다수 사용자가 동일한 데이터를 변경하는 경우에도 데이터의consistency
를 보장합니다.OLTP : On-line Transaction Processing
이 해당 제어의 한 부분입니다.
- 따라서 해당 특성은 동시에 수행되는
Transaction
들이 상호 방해를 받지 않고, 정확하고 효율적으로 수행되도록 보장하는 데 있습니다. - 또한 해당 시스템의 아래에 있는
Recovery subsystem
은 각 트랜잭션이 DB에 어떤 영향을 끼쳤는지 영구적으로 저장합니다.
참고
경북대학교 컴퓨터학부 COMP0322-004 데이타베이스 수업
DATABASE SYSTEMS 7th / Elmasri, Navathe 저 / PEARSON / 2019년
다음 글에서는 DBMS의 장점에 대해 알아보겠습니다.
2023.10.10 - [Computer Science/데이터 베이스] - [데이터베이스] 데이터베이스의 장점
[데이터베이스] 데이터베이스의 장점
앞의 글을 읽으시면 이해에 도움이 됩니다. 2023.10.10 - [Computer Science/데이터 베이스] - [데이터베이스] 데이터베이스의 특징 [데이터베이스] 데이터베이스의 특징 앞의 글을 읽으시면 이해에 도움
hi-guten-tag.tistory.com
감사합니다.
지적 환영합니다.
'Computer Science > 데이터 베이스' 카테고리의 다른 글
[데이터베이스] ER 모델(Entity Type, Entity Sets, Attributes and Keys) (0) | 2023.10.21 |
---|---|
[데이터베이스] 스키마(Schema), 인스턴스(Instance), 상태(State) (0) | 2023.10.20 |
[데이터베이스] 데이터 모델 (0) | 2023.10.20 |
[데이터베이스] 데이터베이스의 장점 (0) | 2023.10.10 |
[데이터베이스] 데이터베이스의 정의 (0) | 2023.10.09 |