본문 바로가기

학교/데이터베이스

1. 데이터베이스 개요

Data : 암시적(implicit)으로 의미가 있는 사실

Database : 관련된 Date들의 집합

meta-data : DB안에 어떤 정보가 저장됐는지 기술(목차, 색인)

관계형 DB(Relational Database) : 데이터를 물리적 저장소를 개념적 표현과 분리하고, 쿼리 언어를 제공

 

 

DBMS

사용자가 DB를 만들고, 유지할 수 있게 해주는 프로그램

 

주 기능

1. 정의 (Defining)

2. 구축 (Constructing)

3. 조작 (Manipulating)

4. 공유 (Sharing)

5. 유지 (Maintaining)

6. 보호 (Protecting)

-> System Protection (HW고장으로 보호, SW는 아님)

-> Security Protection (해킹)

 

데이터베이스과 File System 차이

1. self-describing nature

- meta data(목차, 색인, 요약)

- DB는 스키마를 미리 만들어놓음 (System Catalog에 저장됨)

- Catalog는 DBMS와 DB사용자도 사용 가능

 

2. 데이터 추상화, 독립성

- DB Access 프로그램을 쓰지 않고, DB 변경 가능

- 프로그램 운영 독립성

-> 인터페이스(Interface) : 연산자 이름, 인수의 데이터 유형 지정

-> implementation(method) : interface에 영향을 주지 않고 변경 가능

 

- 데이터 추상화

-> 저장소의 세부사항을 숨기고, 사용자에게 개념적 View 제공(ex 개념 스키마)

(굳이 세세하게 알려줄 필요는 없으니깐)

 

3. 데이터에 대한 다양한 View 제공

- DB에서 가상의 데이터를 제공하기도 함 (Ex sum, average 등등)

 

4. 데이터 공유

- Concurrency control : 한 데이터를 여러명이 동시에 수정하면, 그 중 하나만 적용

 

데이터 추상화

Program-data insulation (프로그램-데이터 독립성)

dbms의 액세스 프로그램을 변경하지 않고도, 데이터 구조 및 작업 변경 가능

 

Program-operation-insulation

 

트랜젝션

하나의 트렌젝션은 하나의 DB에 대한 접근자

- isolation : 수행되는 도중 방해받지 않음

- atomic : 성공, 실패밖에 없음 즉, 일부만 수행되는 경우가 없음

 

DBA : 데이터베이스 관리자

1. DB 권한 조정

2. 사용자에 대한 정보 관리

3. SW나 HW 자원 구매

 

DBMS 사용의 이점

1. 중복 제어

- 데이터 불일치 문제 해결

- 여러곳에 분산된 데이터를 동기화

 

2. 접근 통제, 권한 제어

- 보안 정책 및 권한 부여

 

3. 데이터 보존

- 데이터 뿐만 아니라 프로그램도 저장 가능

- 저장장치에 대한 손실 최소화

 

4. 효율적인 처리를 위한 스토리지 구조 제공

- Index : 디스크 탐색을 빠르게

- Buffering : 정보를 디스크에서 메모리 복사

- 질의응답 최적화 모듈 제공

 

5. 다양한 UI 제공

 

'학교 > 데이터베이스' 카테고리의 다른 글

7. File  (0) 2020.12.06
6. 정규화  (0) 2020.12.05
5. ER 다이어그램  (0) 2020.12.05
4. 관계 대수, 해석  (0) 2020.12.05
3. 관계형 DB의 데이터 모델 및 제약  (0) 2020.12.05