01 데이터베이스 관리 시스템이 등장 배경
- 파일 시스템
- 데이터를 파일로 관리
- 생성, 삭제, 수정, 검색하는 기능을 제공하는 소프트웨어
- 응용 프로그램별로 필요한 데이터를 별도의 파일로 관리

- 데이터 중복성
- 같은 내용의 데이터가 여러 파일에 중복 저장됨.
- 저장 공간의 낭비, 데이터 일관성과 데이터 무결성을 유지하기 어려움
- 이 문제를 해결하기 위해서는 데이터 통합을 해주면 됨!!
- 그럼 프로그램이 필요한 형태로 바꿔서 조달해줌
- 데이터 종속성
- 응용 프로그램이 데이터 파일에 종속적
- 사용하는 파일의 구조를 변경하면 응용 프로그램도 함께 변경해야 함
02 데이터베이스 관리 시스템의 정의
- DBMS
- 파일 시스템의 문제를 해결하기 위해 제시된 소프트웨어
- 조직에 필요한 data를 db에 통합하여 저장하고 관리

- DBMS 주요 기능
- 정의 기능 - 데이터베이스 구조를 정의하거나 수정 가능
- 조작 기능 - 데이터를 삽입/삭제/수정/검색하는 연산 가능
- 제어 기능 - 데이터를 항상 정확하고 안전하게 유지 가능
03 DBMS 장단점
- 장점
- 데이터 중복 문제 해결
- 데이터 독립성
- 동시 공유, 동시 접근
- 데이터 보안 향상
- 중앙 집중식으로 데이터를 관리
- 권한이 없는 사용자의 접근, 허용되지 않은 데이터와 연산에 대한 요청 차단
- 데이터 무결성 유지
- 데이터 연산이 수행될 때마다 유효성 검사하여 데이터 무결성(정확성) 유지
- 표준화
- 장애 발생 시 회복 가능
- 응용 프로그램 개발 비용 및 유지 보수 비용이 줄어듦
- 단점
- 비용 ↑
- 별도 구매 비용, 동시 사용이 허용되는 사용자 수에 따라 가격 증가
- 백업과 회복 방법 복잡
- 중앙 집중 관리로 인한 취약점 존재
- 관리 시스템에 장애가 발생하면 전체 시스템 업무 처리가 중단
- 데이터베이스 의존도가 높은 시스템일수록 가용성과 신뢰성에 치명적
- 비용 ↑
04 DBMS 발전과정
1세대
- 네트워크 DBMS
- 데이터베이스를 그래프 형태로 구성
- 예) IDS
- 계층 DBMS
- 데이터베이스를 트리 형태로 구성
- 예) IMS
2세대
- 관계 DBMS
- 데이터베이스를 테이블 형태로 구성
- 예) 오라클, MS SQL 서버, 엑세스, 인포믹스, MySQL, 마리아DB
3세대
- 객체지향 DBMS
- 객체를 이용해 데이터베이스를 구성
- 예) 오투, 온투스, 젬스톤
- 객체관계 DBMS
- 객체지향 DBMS + 관계 DBMS
- 예) 관계 DBMS 제품들이 객체지향 기능을 지원하면서 객체관계 DBMS로 분류되기도! (Oracle이 대표적)
4세대
- NoSQL
- 비정형 데이터 처리 적합, 확장성이 뛰어남
- 안정성과 일관성 유지 -> 복잡한 기능 포기
- 유연성(데이터 구조를 미리 정해두지 않음. 즉, 스키마가 존재하지 않음 = 정형화된 구조가 존재하지 않는다는 뜻)
- 여러 대 컴퓨터에 데이터를 분산하여 저장하고 처리하는 환경에서 주로 사용
- 예) 몽고디비, H베이스, 카산드라, Redis, 네오포제이, 오리엔트DB
- NewSQL
- 관계 dbms의 장점 + noSQL의 확장성 및 유연성
- 정형 및 비정형 데이터 안정적이고 빠르게 처리 가능
- 예) 구글 스패너, 볼트DB, 누오DB
'학교 수업 정리 > 데이터베이스' 카테고리의 다른 글
| ch8. 데이터베이스 설계 (0) | 2025.04.26 |
|---|---|
| 관계 데이터 모델 (0) | 2025.04.25 |
| CH3. 데이터베이스 시스템 (0) | 2025.04.18 |