DB/단원 정리

CHAPTER 01 데이터베이스 시스템

YJ_ma 2022. 9. 24. 16:47

01 데이터베이스와 데이터베이스 시스템

데이터베이스(database): 조직에 필요한 정보를 얻기위해 논리적으로 연관된 데이터를 모아 구조적으로 통합해 놓은 것

데이터(data) : 관찰의 결과로 나타난 정량적 혹은 정성적인 실제 값

정보(information): 데이터에 의미를 부여한 것

지식(knowledge): 사물이나 현상에 대한 이해

데이터 >>> 정보 >>> 지식

 

데이터베이스 시스템 유형

검색(search)

변경(modification) : 삽입(insert), 삭제(delete), 수정(update, modify)

 

검색과 변경 빈도에 따른 데이터베이스 유형

유형 검색빈도 변경빈도 특징
유형1 적다 적다 DB구축X,
공룡 데이터베이스
유형2 많다 적다 사용자수 보통,
도서 데이터베이스
유형3 적다 많다 실시간 검색/변경 중요,
비행기 예약 데이터베이스
유형4 많다 많다 사용자수 많음,
증권 데이터베이스

유형1~4 : 구축 쉬움 -> 어려움

 

 데이터베이스 개념

① 통합된 데이터(integrated data) : 중복 최소화

② 저장된 데이터(stored data) : 컴퓨터 저장장치에 저장(RAM X)

③ 운영 데이터(operational data) : 바로 처리되도록 검색 목적(입출력 데이터 X)

④ 공용 데이(shared data)

 

 데이터베이스 특징

① 실시간 접근성(real time accessibility)

② 계속적인 변화(continuous change) : == 운영데이터

③ 동시 공유(concurrent sharing)

④ 내용에 따른 참조(reference by content)

 

 데이터베이스 시스템의 구성

① DBMS(데이터베이스관리시스템) : 사용자와 데이터베이스를 연결시켜주는 소프트웨어

② 데이터베이스 : 데이터를 모아 둔 토대 

③ 데이터모델 : 데이터가 저장되는 기법에 관한 내용

02 데이터베이스 시스템의 발전

정보시스템의 발전

① 파일 시스템

② 데이터베이스 시스템

③ 웹 데이터베이스 시스템

④ 분산 데이터베이스 시스템

 

파일 시스템과 데이터베이스 시스템의 차이, 변화

파일 시스템 데이터베이스 시스템
각 응용프로그램이 독립적으로 파일을 다루기 때문에 데이터가 중복 저장될 가능성이 있고
동시에 파일을 다루기 때문에 데이터의 일관성이 훼손될 수 있다.
데이터를 저장하기 전 설계 과정을 거치기 때문에 데이터의 중복을 줄이고 데이터를 표준화하며 무결성을 유지한다.

03 파일 시스템과 DMBS

마당서점 데이터의 저장 방법 비교

 

[프로그램1]

프로그램에 데이터 정의와 데이터 값을 모두 포함하는 방식 

프로그램에 BOOK 데이터 구조를 정의하고 데이터 값도 직접 변수에 저장함  데이터 구조 혹은 데이터 값이 바뀌면 프로그램을 다시 컴파일해야 함

 

 

 

 

 

[프로그램2]

파일에 데이터 값, 프로그램에 데이터 정의를 포함하는 방식

프로그램에 BOOK 데이터 구조만 정의하고, 데이터 값은 book.dat라는 파일에 저장됨 

데이터 값 이 바뀌면 프로그램에 변경이 없지만 , 데이터 구조가 바뀌면 프로그램을 다시 컴파일해야 함

 

 

 

 

 

 

[프로그램3]

DBMS가 데이터 정의와 데이터 값을 관리하는 방식

BOOK 데이터 구조는 DBMS가 관리하고, 데이터 값은 데이터베이스에 저장됨

데이터 값이 바뀌거나 데이터 구조가 바뀌어도 프로그램을 다시 컴파일할 필요 없음

 

 

 

 

 

 

 

파일 시스템과 DBMS의 비교

파일 시스템 데이터베이스관리시스템(DBMS)
구매파일, 판매파일의 동일한 정보 중복될 수 있다. (일관성↓)
정보 수정시 두 파일에 정보가 달라지는 문제가 발생할 수 있다.
데이터 중복 최소화, 일관성과 독립성 유지, 관리 기능 제공
(데이터 복구, 보안, 동시성제어, 데이터 관리기능 수행),
프로그램 개발 생산성 향상, 데이터 무결성 유지

04 데이터베이스 시스템의 구성

데이터베이스 언어

SQL 

데이터 정의어(DDL, Data Definition Language) : CREATE, ALTER, DROP문과 같이 DBMS에 저장된 테이블 구조 정의

데이터 조작어(DML, Data Manipulation Language) : SELECT, INSERT, DELETE, UPDATE문과 같이 데이터를 검색, 삽입, 삭제, 수정하는데 사용

데이터 제어어(DCL, Data Control Language) : GRANT, REVOKE문과 같이 데이터의 사용권한 관리

 

질의문(query) : SELECT-FROM-WHERE구조 

[질의 1-2] : 가격이 10,000원 이상인 도서이름과 출판사를 검색하시오.

 데이터베이스 사용자

① 일반사용자

•은행의 창구 혹은 관공서의 민원 접수처 등에서 데이터를 다루는 업무를 하는 사람

• 프로그래머가 개발한 프로그램을 이용하여 데이터베이스에 접근 일반인

② 응용프로그래머

• 일반 사용자가 사용할 수 있도록 프로그램을 만드는 사람

• 자바, C, JSP 등의 프로그래밍 언어와 SQL을 사용하여 일반 사용자를 위한 사용자 인터페이스와 데이터를 관리하는 응용 로직을 개발

③ SQL 사용자

• SQL을 사용하여 업무를 처리하는 IT 부서의 담당자

• 응용 프로그램으로 구현되어 있지 않은 업무를 SQL을 사용하여 처리

④ 데이터베이스 관리자(DBA, Database Administrator)

• 데이터베이스 운영 조직의 데이터베이스 시스템을 총괄하는 사람

• 데이터 설계, 구현, 유지보수의 전 과정을 담당

• 데이터베이스 사용자 통제, 보안, 성능 모니터링, 데이터 전체 파악 및 관리, 데이터 이동 및 복 사 등 제반 업무를 함

 

 데이터베이스관리시스템(DMBS)

 데이터 모델

- 계층 데이터 모델(hierarchical data model)

- 네트워크 데이터 모델(network data model)

- 객체 데이터 모델(object data model)

- 관계 데이터 모델(relational data model)  → 가장 많이 쓰인다

- 객체-관계 데이터 모델(object-relational data model) → 관계 데이터 모델과 객체 데이터 모델의 장점을 결합한 모델

 

데이터모델과 각 모델에서 관계의 표현방법

3단계 데이터베이스 구조

스키마(schema) : 각 단계를 설명하는데 사용되는 용어, 조직이나 구조를 의미

3단계 데이터베이스 구조 : 외부단계, 개념단계, 내부단계로 나뉜다.

① 외부 스키마

• 일반 사용자나 응용 프로그래머가 접근하는 계층, 전체 데이터베이스 중에서 하나의 논리적인 부분을 의미

• 여러 개의 외부 스키마(external schema)가 있을 수 있음

• 서브 스키마(sub schema)라고도 하며, 뷰(view)의 개념임

② 개념 스키마

• 전체 데이터베이스의 정의를 의미

• 통합 조직별로 하나만 존재하며 DBA가 관리함

• 하나의 데이터베이스에는 하나의 개념 스키마(conceptual schema)가 있음

③ 내부 스키마

• 물리적 저장 장치에 데이터베이스가 실제로 저장되는 방법의 표현

• 내부 스키마(intenal schema)는 하나

• 인덱스, 데이터 레코드의 배치 방법, 데이터 압축 등에 관한 사항이 포함됨

 

외부/개념 매핑

사용자의 외부 스키마와 개념 스키마 간의 매핑(사상)

외부 스키마의 데이터가 개념 스키마의 어느 부분에 해당되는지 대응시킴

개념/내부 매핑

개념 스키마의 데이터가 내부 스키마의 물리적 장치 어디에 어떤 방법으로 저장되는지 대응시킴

 

Ex, 대학의 수강신청

수강신청 데이터베이스의 3단계 구조

 

'DB > 단원 정리' 카테고리의 다른 글

마당서점 데이터베이스  (0) 2022.10.08
CHAPTER 02 관계 데이터 모델  (0) 2022.09.24