반응형
DB와 DBMS의 차이점
- Database : Data의 저장소, 데이터를 통합 저장하고 운영하는 집합체
- DBMS : Database를 생성하고, 효율적으로 관리하기 위한 관리 시스템
- eg) Oracle, MariaDB, MySQL, PostgreSQL, MongoDB 등
DBMS (Database Management System)
- 데이터베이스를 관리하기 위한 매니지먼트 시스템
- 일반 파일 시스템 문제점인 데이터들의 종속성과 중복성을 해결하기 위해 고안되었다.
- 응용 애플리케이션과 데이터 사이의 중재자 역할을 하는 소프트웨어 (Software System)
DBMS 주요 기능
- 사용자 간의 권한 통제 (데이터 접근 통제)
- 권한별로 데이터를 보호할 수 있다.
- 데이터의 일관성과 무결성을 보장
- 데이터를 표준화하고, 통합 관리 기능
- 트랜잭션 관리를 통해서 장애가 생겼을 때 Rollback, Commit을 통해 데이터의 일관성을 보장한다.
- 동시성 제어를 통해서 데이터의 성능 향상 및 일관성 확보
- 시스템 장애로부터 회복/복구
DBMS 구성요소
구분 | 설명 |
질의어 처리기 | 터미널 접속한 사용자의 질의문을 분석하고 파싱하고 컴파일 한다. 데이터베이스 접근 코드를 생성한 뒤, 런타임 DB에 보낸다. |
DDL 컴파일러 | DDL로 명세된 스키마를 메타데이터로 처리하여 카탈로그에 저장한다. 모든 DBMS 모듈은 카탈로그 정보에 접근해서 이용한다. |
DML 예비 컴파일러 | 응용 프로그램의 DML을 추출한다. 목적 코드로 컴파일 되도록 DML 컴파일로 보낸다. |
DML 컴파일러 | DML 명령어를 파싱하고, 컴파일하여 목적코드로 생성 |
런타임 DB 처리기 | 실행 시간에 데이터베이스 접근을 관리한다. 검색이나 갱신 연산을 데이터베이스에서 실행시킨다. |
트랜잭션 관리자 | 무결성 제약조건 만족여부나 사용자 권한 검사 등을 체크한다. 트랜잭션 병행제어나 장애 시 회복작업 등을 수행한다. |
저장 데이터 관리자 | 디스크에 저장되는 사용자 데이터베이스 카탈로그 접근을 책임진다. |
반응형
'DB > DBMS' 카테고리의 다른 글
[DBMS] 트랜잭션(Transaction)의 정의 (0) | 2022.11.01 |
---|---|
[DBMS] DBMS 질의어 (0) | 2022.10.31 |
[DBMS] 데이터 독립성 (0) | 2022.10.27 |
[DBMS] DataBase란? (0) | 2020.11.29 |