데이터 베이스 사용자 유형 및 관리자의 역할
데이터 베이스 사용자는 크게 3가지로 나뉠 수 있다.
1) 일반사용자
터미널에서 질의어(Query Language)를 사용해서 데이터에 접근하는 사용자이다.
2) 응용프로그래머
일반 호스트 프로그래밍 언어로 프로그램을 작성할 경우 데이터 조작어(DML)을
삽입시켜 데이터베이스에 접근하는 사람
3) 데이터베이스 관리자
데이터정의어(DDL)과 데이터 제어어(DCL)을 사용하여 데이터베이스를 DBMS에 정의하고
저장된 데이터를 제어하고 관리할 목적으로 데이터 베이스에 접근하는 사람
데이터조작어, 데이터정의어, 데이터 제어어에 대해서는 곧 이야기 하겠다.
그 전에 먼저 데이터 관리자 DBA의 역할에 대해서 상세히 알아보자
DBA는 DataBase Administrator의 약자로 1) 데이터베이스 설계와 운영을 하고, 2) 데이터 표준을 관리하며
행정적인 불편을 해소하고, 3)시스템을 감시 및 성능을 분석하는 사용자이다.
이 3가지 역할에 대해서 상세히 분석해보자.
1) 데이터베이스 설계와 운영을 한다는 것은 ?
앞의 글에서 언급했던 스키마를 정의하고
물리 설계와 인덱스 설정 같은 저장 구조와 접근 방법을 설정하며
보안 및 권한 부여 정책, 데이터의 유효성 검사방법을 수립하고
백업(Backup)이나 회복(Recovery) 절차를 수립하고
시스템의 성능향상과 새로운 요구에 대응하기 위하여 데이터베이스를 재구성하고
데이터 사전이나 카탈로그, 메타데이터를 유지 및 관리를 한다는 것을 의미한다.
2)데이터 표준 관리 및 행정 불편을 해소한다는 것은?
데이터를 표현하거나 시스템을 문서화하는 데 있어서 표준을 정하여 시행하며
사용자의 요구와 불편을 듣고 해결한다는 것을 의미한다.
3)시스템 감시 및 성능을 분석한다는 것은?
시스템 자원의 이용도(얼마나 이용하는지), 병목현상, 장비 및 시스템 성능을 감시하며
데이터 접근 방법과 저장 구조, 재구성의 요인이 되는 사용자의 요구의 변화를 알아차리고
데이터의 이용추세, 각종 통계 등을 종합분석한다.
이제 아까 말한 데이터 정의어, 데이터조작어, 데이터제어어에 대해서 살펴보자
이 3가지는 데이터베이스를 정의하고 접근하기 위한 목적으로 만들어진 언어이다.
데이터 정의어는 Data Definition Language로 표현되며
- 데이터베이스를 정의하거나 그 정의를 수정할 목적으로 사용하는 언어
- 데이터 베이스 스키마를 컴퓨터가 이용할 수 있게끔 기술하는데 사용하는 언어
- 데이터베이스 관리나 데이터베이스 설계자가 주로 사용하는 언어
- DDL로 기술되어진 스키마는 DDL 컴파일러가 컴파일하여 데이터 사전이나 시스템 카탈로그에 저장하여 놓고 필요한 경우에 시스템이 활용되어진다.
- 예를 들면 테이블 생성, 변경 등이 있다.
데이터 조작어는 Data Manipulation Language로 표현되며
- 사용자로 하여금 데이터를 처리할 수 있게 해주는 도구이며
- 사용자와 DBMS간의 인터페이스를 제공하여준다.
- 예를 들면 데이터를 검색, 삽입, 삭제, 변경하는 것을 의미한다.
데이터 통제어는 Data Control Language로 표현되며
- 여러 사용자가 데이터베이스를 올바르게 공용하고 정확하게 유지하기 위하여 관리 및 통제기능을 목적으로 사용하는 언어이다.
- 주로 데이터 관리 목적으로 데이터 베이스 관리자가 사용한다
- 예를 들면 데이터보안, 무결성, 데이터회복, 병행수행(데이터 베이스를 동시에 접근가능하게 함)