* DBMS (데이터베이스관리시스템)
- 사용자와 데이터베이스사이에 위치
- 데이터베이스 관리 및 사용자가 요구하는 연산을 수행/정보생성
* 구성
- DDL컴파일러 / DDL 처리기
: DDL로 정의된 스키마를 내부형태로 변환하여 시스템 카탈로그에 저장
- 질의어 처리기
: 일반 사용자가 제출한 질의문을 파싱하고 분석하여 효율적으로 데이터베이스에 접근 할 수 있는 코드를 생성
및 실행(런타임데이터베이스처리기로의 이동)한다.
- DML예비 컴파일러
: 응용프로그래머가 작성한 프로그램속에 삽입되어 있는 DML명령문을 추출하고, 그 자리에 함수 호출문을 삽입
-> DML 컴파일러로 전송
- DML 컴파일러 / DML처리기
: DML예비 컴파일러에게 받은 DML명령문을 파싱/컴파일 효율적인 목적코드를 생성후 실행
(런타임 데이터베이서처리기로의 이동)
- 런타임 데이터베이스 처리기
: 실제로 요청된 것을 싱행하는 곳으로, 저장 데이터 관리자를 통해 데이터베이스를 활용한다.
- 트랜섹션 관리자
: 데이터베이스로 접근하는 과정에서의 무결성, 제약조건이 만족되는지를 검사한다
: 장애 발생시 회복작업을 한다
- 저장 데이터관리자
: 사용자의 데이터베이스또는 카탈로그로의 접근을 제어
* 데이터 언어
- 데이터베이스를 DBMS로 정의/접근하기 위해서 필요한 통신수단
ⓐ 데이터 정의어(DDL)
- 데이터베이스를 정의하거나 그 정의를 수정할 목적으로 사용되는 언어
- 데이터베이스 스키마를 DBMS가 이해할 수 있게끔 기술하는데 사용
ⓑ 데이터 조작어(DML)
- 데이터베이스 스키마가 컴파일 된 후 저장된 데이터를 사용자들이 이용할 수 있게 제공하는 방법
- 사용자와 DBMS간의 인터페이스
- 데이터 처리(삽입, 삭제, 수정, 검색)기능을 포함
1) 절차적 데이터 조작어
2) 비 절차적 데이터 조작어
ⓒ 데이터 제어어(DCC)
- 데이터 제어에 관해 정의/기술한 언어
- 데이터 보안, 무결성, 시스템장애에 대한 데이터 회복
- 병행 수행 제어를 정의
* 사용자
- 데이터베이스를 이용하기 위해 접근하는 사람
ⓐ 일반 사용자 : 질의어를 통해 데이터베이스에 접근하는 사용자
ⓑ 응용프로그래머
ⓒ 데이터베이스관리자
- 데이터베이스 시스템의 관리 운영에 대한 모든 책임을 지고 있는 사람
- 하는 일
① 데이터베이스 설계와 운영
② 행정관리, 요구 및 불평해소
③ 시스템 감시(관리) 및 성능 분석
- 사용자와 데이터베이스사이에 위치
- 데이터베이스 관리 및 사용자가 요구하는 연산을 수행/정보생성
* 구성
- DDL컴파일러 / DDL 처리기
: DDL로 정의된 스키마를 내부형태로 변환하여 시스템 카탈로그에 저장
- 질의어 처리기
: 일반 사용자가 제출한 질의문을 파싱하고 분석하여 효율적으로 데이터베이스에 접근 할 수 있는 코드를 생성
및 실행(런타임데이터베이스처리기로의 이동)한다.
- DML예비 컴파일러
: 응용프로그래머가 작성한 프로그램속에 삽입되어 있는 DML명령문을 추출하고, 그 자리에 함수 호출문을 삽입
-> DML 컴파일러로 전송
- DML 컴파일러 / DML처리기
: DML예비 컴파일러에게 받은 DML명령문을 파싱/컴파일 효율적인 목적코드를 생성후 실행
(런타임 데이터베이서처리기로의 이동)
- 런타임 데이터베이스 처리기
: 실제로 요청된 것을 싱행하는 곳으로, 저장 데이터 관리자를 통해 데이터베이스를 활용한다.
- 트랜섹션 관리자
: 데이터베이스로 접근하는 과정에서의 무결성, 제약조건이 만족되는지를 검사한다
: 장애 발생시 회복작업을 한다
- 저장 데이터관리자
: 사용자의 데이터베이스또는 카탈로그로의 접근을 제어
* 데이터 언어
- 데이터베이스를 DBMS로 정의/접근하기 위해서 필요한 통신수단
ⓐ 데이터 정의어(DDL)
- 데이터베이스를 정의하거나 그 정의를 수정할 목적으로 사용되는 언어
- 데이터베이스 스키마를 DBMS가 이해할 수 있게끔 기술하는데 사용
ⓑ 데이터 조작어(DML)
- 데이터베이스 스키마가 컴파일 된 후 저장된 데이터를 사용자들이 이용할 수 있게 제공하는 방법
- 사용자와 DBMS간의 인터페이스
- 데이터 처리(삽입, 삭제, 수정, 검색)기능을 포함
1) 절차적 데이터 조작어
2) 비 절차적 데이터 조작어
ⓒ 데이터 제어어(DCC)
- 데이터 제어에 관해 정의/기술한 언어
- 데이터 보안, 무결성, 시스템장애에 대한 데이터 회복
- 병행 수행 제어를 정의
* 사용자
- 데이터베이스를 이용하기 위해 접근하는 사람
ⓐ 일반 사용자 : 질의어를 통해 데이터베이스에 접근하는 사용자
ⓑ 응용프로그래머
ⓒ 데이터베이스관리자
- 데이터베이스 시스템의 관리 운영에 대한 모든 책임을 지고 있는 사람
- 하는 일
① 데이터베이스 설계와 운영
② 행정관리, 요구 및 불평해소
③ 시스템 감시(관리) 및 성능 분석