데이터베이스 관리 시스템(Database Management System)
DBMS 이전의 데이터들은 OS(운영체제)가 지원하는 파일 중심 데이터 처리 시스템을 따랐다
각각의 물리적 구조가 달라 응용 프로그램들이 데이터를 공유하지 못하는 문제 -> 종속성
각 응용프로그램이 동시에 데이터를 변경하지 못하는 문제 -> 중복성
데이터베이스의 필수 기능
정의 기능
- 하나의 저장 구조로 여러 사용자의 요구를 지원하도록 데이터를 조직
- 데이터의 논리적(정보)/물리적(용량) 구조를 명세
- 물리적/논리적 사상(mapping)을 명세
조작 기능
- 사용자와 DB 사이의 인터페이스를 위한 수단
- 체계적 접근 및 조작 (검색/갱신/삽입/삭제)
- 데이터 언어로 원하는 연산의 명세 및 효율적 처리
제어 기능
- 데이터의 정확성과 보안성을 유지하는 기능
- 무결성(항상 정확한 데이터)/보안/권한(authority) 검사/병행수행 제어/복구 등
DBMS의 장단점
장점
- 데이터 중복(redundancy)의 최소화
- 데이터의 공용(sharing)
- 일관성(consistency) 유지
- 무결성(integrity) 유지
- 보안(security) 보장
- 표준화(standardization) 용이
- 기관 전체 데이터 요구의 조정
단점
- 운영비의 증대
- 특정 응용 프로그램의 복잡화
- 복잡한 백업과 회복(recovery)
- 시스템의 취약성
데이터 독립성(data independency): 물리적 구조가 변경되어도 논리적 구조에 영향을 주지 않고 알갱이만 변경됨. 논리적 구조가 바뀌더라도 마찬가지로 사상(mapping)에만 기록하면 되기 때문에 응용 프로그램에는 변화 없음
데이터 독립성의 핵심 구현 기법은 사상(mapping)!
DBMS의 역사
* 비절차적 방식이란?
개발자가 처리 절차를 지정하지 않고 원하는 결과를 정의하여 요청하는 방식이다!
비절차적 방식의 SQL이 데이터베이스의 표준 언어가 되었다
현재 시장의 대부분은 RDBMS가 차지하고 있다!
'Computer Science > Database, SQL' 카테고리의 다른 글
[HUFS/데이터베이스] #4 관계 데이터 모델 (0) | 2021.09.15 |
---|---|
[HUFS/데이터베이스] #3 데이터베이스 시스템의 구성 (0) | 2021.09.08 |
[HUFS/데이터베이스] #1 데이터베이스 환경 (6) | 2021.09.01 |
[Codeit/MySQL] #6 서브쿼리와 뷰를 활용한 데이터 분석 (11) | 2021.04.16 |
[Codeit/MySQL] #5 테이블 조인을 통한 데이터 분석 (4) | 2021.04.16 |