Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
Tags
- 데이터베이스#DB#DBMS
- 알고리즘
- dp
- 코틀린#비트연산
- 42서울#42Seoul#라피신
- 퇴사
- 안드로이드
- 우테캠
- 카카오
- activity
- kakao
- 소셜로그인
- 14501번
- Android
- Flutter
- 엑티비티
- 13458번
- 우아한테크캠프
- 백준
- 7기
- 안드로이드#flutter#앱배포
- 플러터
- 안드로이드#안드로이드 스튜디오
Archives
- Today
- Total
nonani
DBMS 본문
3학년 1학기 데이터베이스 과목을 수강하며 강의 내용을 정리한 게시글입니다.
DBMS
- DBMS란 : DataBase Management System의 약자롤 데이터베이스를 관리해주는 소프트웨어
- DBMS의 발전 배경
DBMS의 발전 배경
이전의 파일 시스템
이전의 파일 시스템에서는 응용 프로그램과 파일과의 관계가 1:1 관계였음 따라서 여러 응용프로그램 사이에서 중복으로 사용하느 데이터가 있을 경우, 데이터의 추가, 삭제, 변경이 일괄적으로 이루어져야 했음. 따라서 데이터의 정확성과 일관성이 떨어지는 등의 아래와 같은 문제 발생
- 데이터의 종속성(Data Dependency)
- 응용 프로그램과 데이터 가의 상호 의존관계
- 데이터의 구성 방법이나 접근 방법의 변경 시 관련 응용 프로그램도 동시에 변경해야하는 작업 발생
- 응용 프로그램 및 데이터 관리가 곤란
- 데이터의 중복성(Data Redundancy)
- 한 시스템 내에 같은 내용의 데이터가 여러 파일에 중복 저장되어 관리
- 문제점
- 일관성(consistency) : 데이터의 올바른 유무와 상관없이 데이터들의 값이 서로 일치하는상태
- 보안성(security)
- 경제성(economics)
- 무결성(Integrity) : 데이터 값이 정확하고 완전한 상태
파일 관리 시스템
응용 프로그램들과 파일들과의 관계를 1:1 관계가 아닌 공동으로 접근 가능한 경로의 파일 하나에 여러 응용프로그램들이 관계를 가지는 파일 관리 시스템
이 또한, 데이터의 일관성 부분에 있어서 여러 시스템적, 보안적 이슈가 발생할 수 있음. ex) 2명이상이 동시에 같은 좌석을 예매하는 경우
DBMS
따라서 응용 프로그램들과 데이터 사이의 중재자로서 모든 응용 프로그램(사용자)들이 데이터베이스를 공용할 수 있게 과리해 주는 범용 소프트웨어 시스템이 등장하였음.
- 제 1세대 DBMS
- IDS(Intergrated Data Store
- 최초의 범용 DBM
- 네트워크 데이터 모델의 기초
- IDS(Intergrated Data Store
- IMS(Information Management System)
- 1960년대 후반 IBM이 개발
- 게층 데이터 모델(hierarchical data model)의 기초
2. 제 2세대 DBMS: RDBMS
- 관계형 데이터 모델
- IBM의 Edgar F. Codd 가 제안: 튜링 어워드 수상
- 테이블 형태의 데이터구조
- 관계형 Database 이론의 기초
- 1980년대부터 현재까지 가장 보편화됨
- SQL
- 세계 표준 데이터베이스 언어
3. 제 3세대 DBMS
- 사용자의 데이터베이스 응용에 대한 복잡성(complexity) 증대
- engineering, images, videos, spatial, time series, data mining
- 사용자 요구에 대처하기 위해 새로운 data model을 기반으로 시스템 개발
- 객체 지향 DBMS
- 90년대 중반 이후 관심이 증가하였으나, 현재 점유율 측면에서 관계형 데이터베이스에 비해 크게 뒤떨어짐
DBMS의 필수 기능
- 정의 기능
- 하나의 저장 구조(storage structure)로 여러 사용자의 요구를 지원할 수 있도록 데이터를 조직(organize)하는 기능
- 정의 기능의 요건
- 데이터의 논리적 구조(logical structure)를 명세
- 데이터의 물리적 구조(physical structure)를 명세
- 물리적/논리적 사상(mapping) 명세
- 조작(manipulation) 기능
- 사용자와 데이터베이스 가의 interface를 위한 수단
- 체계적 데이터베이스 접근 및 조작 : 검색(retrieve), 갱신(update), 삽입(insert), 삭제(delete)
- 데이터 언어(SQL)로 표현
- 사용하기가 쉽고 자연스로운 도구
- 원하는 연산의 명세 가능
- 효율적인 처리
- 제어(control) 기능
- 데이터의 정확성(correctness)과 보안성(security)을 유지하는 기능
- 제어 기능의 요건
- 무결성(intergrity) 유지
- 보안(security), 권한(authority) 검사
- 병행수행 제어(concurrency control) : ex) 동시에 여러 사용자가 데이터를 수정, 추가, 삭제를 하는 경우 그 마다의 처리
- 복구(recovery)
DBMS의 장단점
- 장점
- 데이터 중복(redundancy)의 최소화
- 데이터의 공용(sharing)
- 일관성(consistency) 및 무결성(integrity) 유지
- 보안 보장
- 표준화 용이
- 기관 전체 데이터 요구의 조정
- 단점
- 운영비의 overhead
- 복잡한 절차의 data backup과 recovery
마무리
현재 보편화된 관계형 데이터베이스의 등장 과정에 대해서 정리해보았습니다.
'CS공부 > Database' 카테고리의 다른 글
관계형 데이터베이스 (1) | 2023.03.10 |
---|