데이터베이스: Introduction
2023-06-11 00:00:00

데이터베이스
- 조직에 필요한 정보를 논리적으로 연관된 데이터를 구조적으로 통합
- 특정 조직의 여러 사용자가 공유해 사용할 수 있도록 통합해서 저장한 운영 데이터의 집합
- 정의
- 공유 데이터: 여러 사용자
- 통합 데이터: 중복 최소화 => 중복으로 인한 데이터 불일치 제거
- 저장 데이터: 컴퓨터 저장장치에 저장
- 운영 데이터: 업무를 위한 검색/변경을 할 목적
- 특징
- 실시간 접근성: 수 초 내에 반환
- 계속 변화: 시간에 따라 값 변경 발생. 삽입/삭제/수정 가능
- 내용 기반 참조: 데이터의 물리적 위치가 아닌 내용에 따라 참조
- 동시 공유: DB에 접근하는 프로그램은 여러개.
Quiz
- 같은 내용의 데이터를 여러 사람이 동시에 공용할 수 있다. (T)
- 데이터베이스는 데이터의 삽입, 삭제, 수정으로 내용이 계속 변한다. (T)
- 수시로 이루어지는 사용자 질의에 대하여 실시간 처리로 응답할 수 있어야 한다. (T)
- 데이터의 참조는 저장되어 있는 데이터의 주소나 위치에 의해 이루어진다 (F)
DBMS (Data Base Management System)
정의/등장배경/장단점
파일 시스템의 문제 해결 위해 제시, 조직에 필요한 데이터를 DB에 통합해 저장/관리
why? 데이터를 파일로 관리하기 위한 “파일 시스템"의 문제점: 데이터 중복 저장으로 인한 저장공간의 낭비, 데이터 일관성/무결성 유지 어려움
→ DBMS!
- 장점
- 중복통제 → 독립성/무결성 확보
- 동시 공유
- 데이터 보안 향상
- 표준화
- 장애 발생 시 회복 가능
- 프로그램 개발 비용 감축
- 단점
- 비싼 비용
- 복잡한 백업/회복
- 중앙관리로 인한 취약점
데이터베이스 시스템
- 언어: 사용목적에 따라 구분
- DDL: 정의어. 스키마 정의/수정/삭제
- DML: 조작어. 데이터의 삽입/삭제/수정/검색
- DCL: 제어어. 필요한 규칙/기법 정의
- 사용자: 이용 목적에 따라 구분
- 데이터베이스 관리자: DDL/DCL 이용 (응용 프로그래머와 다름!!)
- 최종(일반) 사용자: DML 이용 (응용 프로그램의 이용자는 아님)
- 응용 프로그래머: DML 이용
- DBMS
- 기능: 데이터의 정의/조작/제어/추출
- 개념적 구조: 3단계 구조화
- 표준화 기관 ANSI/SPARC에서 제안
- 단계별 다른 추상화 레벨을 제공, 내부에서 외부로 갈수록 추상화 레벨 높아짐
- 3단계
- 외부 단계: 개별 사용자 관점 (고객분석팀과 상품분석팀에서 각각 쓰는 고객에 대한 다른 정보들.. 파편화)
- 개념 단계: 조직 전체의 관점 (모아서 만든 고객정보, 추상화됨)
- 내부 단계: 물리적 저장장치의 관점 (어떤 타입인지 길이는 어떤지 등 실제 데이터가 어떻게 저장되게 할지)
- 데이터 모델
- 개념적 모델링: 중요 데이터를 개념 세계로 이동 ex) 개체-관계 모델
- 논리적 모델링: 개념 세계의 데이터를 DB에 저장하는 구조로 표현 ex) 관계 데이터 모델