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 |