데이터베이스 시스템

Get Started. It's Free
or sign up with your email address
데이터베이스 시스템 by Mind Map: 데이터베이스 시스템

1. 데이터베이스 시스템 개요

1.1. 정보와 데이터는 서로 다름!

1.2. 데이터베이스는 시스템이 공ㅇ해서 사용하는 운용 데이터들이 구조적으로 통합된 모임

1.3. 특징

1.3.1. 동시사용

1.3.2. 모든 데이터가 중복을 최소화 하며 통합됨

1.3.3. 효율적이며 질의가능

1.4. 데이터베이스 관리 시스템(DBMS)

1.4.1. 새로운 데이터베이스를 생성하고 데이터베이스의 구조를 명시, 데이터를 보호하는 소프트웨어 패키지이다.

1.4.2. 데이터베이스 언어

1.5. 스키마

1.5.1. 데이터베이스의 구조를 뜻함

1.5.2. 내포라고 부름

1.6. 상태

1.6.1. 데이터베이스의 내용을 의미, 시간이 지나며계속해서 바뀜

1.6.2. 외연이라고 부름

1.7. 시스템의 요구 사항

1.7.1. 데이터 독립성

1.7.2. 효율적인 데이터 접근

1.7.3. 데이터에 대한 동시 접근

1.7.4. 백업과 회복

1.7.5. 중복을 줄이거나 제어하며 일관성 유지

1.7.6. 데이터 무결성

1.7.7. 데이터 보안

1.7.8. 쉬운 질의어

1.7.9. 다양한 사용자 인터페이스

2. 화일 시스템과 DBMS

2.1. 화일시스템

2.1.1. DBMS등장 이전부터 사용된 시스템

2.1.2. 순차적인 레코드

2.1.3. 데이터에 대한 응용 프로그램의 의존도가 높음

2.1.4. 단점

2.1.4.1. 데이터가 많은 화일에 중복해서 저장됨

2.1.4.2. 다수 사용자들을 위한 동시성 제어 제공되지 않음

2.1.4.3. 질의어가 제공되지 않음

2.1.4.4. 보안 미흡

2.1.4.5. 회복기능 없음

2.1.4.6. 유지보수 비용이 많이 소요됨

2.1.4.7. 프로그래머의 생산성이 낮음

2.1.4.8. 공유와 융통성이 부족

2.2. DBMS

2.2.1. 데이터 베이스 관리

2.2.1.1. 데이터베이스를 공유

2.2.1.2. 질의를 빠르게 수행

2.2.1.3. 데이터베이스를 보호

2.2.1.4. 다양한 인터페이스 제공

2.2.1.5. 데이터베이스 회복기능

2.2.1.6. 데이터베이스 구조 변경가능

2.2.2. 장점

2.2.2.1. 중복성과 불일치가 감소

2.2.2.2. 유지비용 감소

2.2.2.3. 표준화 시행 용이

2.2.2.4. 보안 향상

2.2.2.5. 조직체의 요구사항 식별가능

2.2.2.6. 데이터베이스 회복기능

2.2.2.7. 공유및 동시접근 가능

2.2.3. 단점

2.2.3.1. 추가적인 하드웨어 구입비용

2.2.3.2. 교육비용

2.2.3.3. 비밀노출시 단점

2.2.4. 선정시 고려사항

2.2.4.1. 기술적요인

2.2.4.1.1. DBMS에 사용되는 모델, 인터페이스, 언어, 도구, 저장 구조, 성능, 접근 방법 등

2.2.4.2. 경제적 요인

2.2.4.2.1. 소프트웨어와 하드웨어 구입비용, 유지보수 비용, 교육지원 등

3. DBMS의 발전 과정

3.1. 데이터 모델

3.1.1. 데이터베이스의 구조를 기술하는데 사용되는 개념들의 집합인 구조

3.1.2. 직관적인 뷰를 제공

3.1.3. 분류

3.1.3.1. 고수준 또는 개념적 데이터 모델

3.1.3.2. 표현 데이터 모델

3.1.3.3. 저수준 또는 물리적인 데이터 모델

3.2. 계층 DBMS

3.2.1. 최초의 계층 DBMS

3.2.2. 트리구조를 기반으로 하는 계층 데이터 모델 사용

3.3. 네트워크 DBMS

3.3.1. IDS

3.3.2. 네트워크 데이터 모델을 사용함

3.3.3. 레코드 구조 변경이 어려움

3.4. 관계 DBMS

3.4.1. 모델이 간단하여 이해하기 쉬움

3.5. 객체 지향 DBMS

3.5.1. 프로그래밍 패러다임을 기반으로 함

3.5.2. 그룹화, 이해하기 쉬움, 유지 및 변경이 용이함

3.6. 객체 관겨 DBMS

3.6.1. 객체 지향 개념을 통합한 객체 관꼐 데이터 모델이 제안됨

4. DBMS 언어

4.1. 사용자 인터페이스

4.2. 정의어

4.2.1. 데이터베이스 스키마를 정의

4.2.2. 시스템 카탈로그 및 데이터 사전

4.2.3. 데이터 정의어의 기본적인 기능 지원

4.3. 데이터 조작어

4.3.1. 데이터를 검색, 수정, 삽입, 삭제 기능

4.3.2. 절차적 언어와 비절차적 언어

4.3.3. 기본적인 기능

4.3.3.1. 검색

4.3.3.2. 수정

4.3.3.3. 삭제

4.3.3.4. 삽입

4.4. 데이터 제어어

4.4.1. 트랜잭션을 명시하고 권한을 부여하거나 취소시킴

5. DBMS 사용자

5.1. 관리자

5.1.1. 데이터베이스 관리자는 여러부분의 요구를 만족시키기 위한 스키마를 생성하고 유지하는 사람(팀)

5.1.2. 역할

5.1.2.1. 스키마의 생성과 변경

5.1.2.2. 무결성 제약조건을 명시

5.1.2.3. 권한을 허용하거나 취소, 역할 관리

5.1.2.4. 저장구조와 접근방법 정의

5.1.2.5. 백업과 회복

5.1.2.6. 표준화 시행

5.2. 응용 프로그래머

5.2.1. 데이터베이스 위에서 특정 응용이나 인터페이스를 구현하는 사람

5.2.2. 내포된 데이터 조작으러르 사용함

5.2.3. 기작성 트랜잭션이라 부름

5.3. 최종 사용자

5.3.1. 질의하거나 갱신하거나 보고서를 생성하기 위해 데이터 베이스를 사용하는 사람

5.3.2. 캐주얼 사용자, 초보 사용자로 구분

5.4. 데이터베이스 설계자

5.4.1. 설계를 담당함.

5.4.2. 데이터베이스의 일관성을 유지하기위해 정규화를 수행

5.5. 오퍼레이터

5.5.1. 시스템과 전산실을 관리하는 사람

6. 데이터베이스 시스템 아키텍처

6.1. 데이터 정의어 컴파일러 모듈

6.1.1. 테이블을 파일형태로 데이터베이스에 형성, 시스템 카탈로그에 저장

6.2. 질의 처리기 모듈

6.2.1. 기계어 코드로 번역

6.3. 런타임 데이터베이스 관리기 모듈

6.3.1. 디스크에 저장된 데이터베이스를 접근

6.4. 트랜잭션 관리 모듈

6.4.1. 동시성제어모듈

6.4.2. 회복 모듈

6.5. 데이터 API

6.5.1. 서로 상대방의 데이터 베이스를 접근할 수있음

6.6. 중앙 집중식 데이터베이스 시스템

6.6.1. 데이터베이스 시스템이 하나의 컴퓨어 시스템에서 운영됨

6.7. 분산 데이터베이스 시스템

6.7.1. 네트워크로 연결된 여러 사이트에 데이터베이스 자체가 분산되어 있음

6.7.2. 여러컴퓨터 시스템에서 윤영됨

6.7.3. 다른 사이트에 저장된 데이터베이스도 접근 가능

6.8. 클라이언트-서버 데이터베이스 시스템

6.8.1. 자체 컴퓨팅 능력을 가진 클라이언트를 통해 데이터베이스 서버를 접근

6.8.2. 하나의 데이터베이스 서버에 저장되어 있음

6.8.3. 시스템의 기능이 서버와 클라이언트에 분산됨

6.8.4. 여러 클라이언트에서 온 질의를 최적화함

6.8.5. 권한 검사를 수행및 동시성제어와 회복기능을 수행

6.8.6. 데이터베이스를 보다 넓은 지역에서 접근 가능

6.8.7. 다양한 컴퓨터 시스템을 사용할 수 있음

6.8.8. 보안이 다소 취약함

6.9. 2층모델

6.9.1. 클라이언트와 데이터베ㅔ이스 서버가 직접 연결됨

6.10. 3층모델

6.10.1. 클라이언트와 데이터베이스 서버 사이에 응용서버가 추가됨

7. ANSI/ SPARC 아키텍처와 데이터 독립성

7.1. ANSI/ SPARC 아키텍쳐

7.1.1. 3단계

7.1.1.1. 물리적

7.1.1.2. 개념적

7.1.1.3. 외부단계

7.1.1.3.1. 데이터 베이서의 각 사용자가 갖는 뷰

7.1.1.3.2. 여러 부류의 사용자를 위해 동일한 개념 단계로부터 서로 다른 뷰가 제공될 수 있음

7.1.1.3.3. 최초 사용자와 응용 프로그래머들은 데이터 베이스의 일부분에만 관심을 가짐

7.2. 개념 단계

7.2.1. 조직체 전체에 관한 스키마를 포함

7.2.2. 사용자 공동체의 뷰를 나타냄

7.2.3. 오직 한 개의 개념 스키마가 존재

7.3. 내부 단계

7.3.1. 실제의 물리적인 데이터 구조에 관한 스키마

7.3.2. 어떤데이터가 어떻게 저장되어 있는가를 기술함

7.3.3. 내부 단꼐 아래는 물리적 단계

7.3.4. 물리적 단계는 DBMS의 지시에 따라 운영 체제가 관리함

7.4. 스키마 간의 사상

7.4.1. 외부/개념 사상

7.4.1.1. 외부 단계의 뷰를 사용해서 입력된 사용자의 질의를 개념단계의 스키마를 사용한 질의 로 변환

7.4.2. 개념/ 내부 사상

7.4.2.1. 이를 다시 내부 단계의 스키마로 변환하여 디스크의 데이터 베이스를 접근

7.5. 데이터 독립성

7.5.1. 상위 단계의 스키마 정의에 영향을 주지 않으면서 어떤 단계의 스키마 정의를 변경할 수 있음을 의미

7.5.1.1. 논리적인 데이터 독립성

7.5.1.2. 물리적인 데이터 독립성

7.6. 논리적 데이터 독립성

7.6.1. 스키마의 변화가 가능해야함

7.6.2. 외부 스키마가 영향을 받지 않음

7.7. 물리적 데이터 독립성

7.7.1. 외부 스키마가 영향을 받지 않음

7.7.2. 화일의 저장 구조를 바꾸거나 인덱스를 생성 및 삭제함