DNF LOVE

[데이터베이스론 기초 - 7] DBS, DDL, DML, DCL, DBMS, DBA 등 데이터베이스 관련 용어 정리 본문

Computer Science/데이터베이스

[데이터베이스론 기초 - 7] DBS, DDL, DML, DCL, DBMS, DBA 등 데이터베이스 관련 용어 정리

botho 2019. 8. 4. 16:15
반응형

1. DBS(데이터베이스 시스템) :  데이터는 데이터베이스로 저장, 관리하여 정보를 생성하는 컴퓨터 중심 시스템

 - 구성 요소 : ① 3-LEVEL Database, ② Data Langauges, Users, ③ DBMS, ④ DB Administrator, ⑤ DB Computer 

2. 데이터 언어 : 데이터베이스를 정의, 조작, 제어하기 위한 시스템과의 통신 수단

  • 데이터 정의어(Data Definition Language, DDL) : 데이터베이스 구조를 정의하고 변경하는데 사용, 설계자가 주로 사용, 데이터 정의의 내용
    • ① 논리적 데이터 구조의 정의 : 개념 스키마, 외부 스키마를 명세
    • ② 물리적 데이터 구조의 정의 : 내부 스키마 명세, 데이터 저장 정의어
    • ③ 논리적 데이터 구조와 물리적 데이터 구조간의 사상을 정의함.
  • 데이터 조작어(Data Manipulation Language, DML) : 사용자(응용 프로그램)와 DBMS 사이의 통신 수단, 사용자가 주로 사용
    • (1) 절차적 DML
      • ① 저급 데이터 언어, What과 How를 명세 함 (순서가 있어서 방법이 명시 되어 있음)
      • ② 한번에 하나의 레코드만 처리함.
      • ③ 응용 프로그램 속에 삽입 되어 사용
        -> 인베디드 형식 단독으로 사용은 하지 못함.
        => Java, C++ 등 속에 SQL이 삽입되어 사용됨.
      • ④ DML예비 컴파일러에 의해 처리됨.
    • (2) 비절차적 DML
      • ① 고급 데이터 언어, What(조건)만 명세하고 How(답)는 시스템에 위임함, 단독으로 사용 가능
      • ② 한 번에 여러개의 레코드를 처리함.
      • ③ 질의어(Query Language)임 : 독자적이고 대화식임(Command 타입), 프로그램의 추상적 타입
    • * 데이터 부속어(DSL) : Host Program 속에 삽입되어 사용되는 DML임. 비절차적 또는 절차적임 
    • * 데이터 언어의 완전성 : 사용자가 원하면 어떤 객체도 추출할 수 있고 관계도 표현할 수 있는 능력

 

  • 데이터 제어어(Data Control Language, DCL) : 공용 데이터베이스 관리를 위해 데이터 제어를 정의하고 제어, DB관리 목적으로 DBA가 사용, 데이터 제어 내용
    • ① 데이터 보안(Security)
    • ② 데이터 무결성(Integrity)
    • ③ 데이터 회복(Recovery)
    • ④ 병행수행(Concurrency)
  • 사용자(User) : 데이터베이스를 이용하기 위해 접근하는 사람
    • ① 일반 사용자 : 비 절차적 DML을 통해서 데이터베이스를 접근.
    • ② 응용 프로그래머 : 응용 프로그램(Host언어 + DML(DSL))을 통해서 DB를 접근
      • * host언어 : C, JAVA, PYTHON 등
    • ③ 데이터베이스 관리자(DBA 특수) : DDL(정의어)과 DCL을 통해 DB를 정의하고 제어하는 사람.

3. 데이터베이스 컴퓨터(HardWare) : 데이터베이스 기능만을 효율적으로 수행하기 위한 특수 목적의 하드웨어

  • 대규모 데이터베이스(VLDB, DB규모의 대형화)  : GB : 1024MB, PB : 1024TB, EB : 1024PB
  • 특수목적 하드웨어 ① 후위 컴퓨터(백해드 컴퓨터) ② 지능형 저장 장치 ③ 내용식 메모리 ④ 병렬 처리

4. 데이터베이스관리자 (DataBase Administrator, DBA) : 데이터베이스 시스템을 관리, 운영에 대한 모든 책임을 지는 사람

  • 1) 데이터베이스관리자의 업무
    • ① 데이터베이스 설계와 운영
      • - 데이터베이스의 구성요소들을 결정, 스키마 정의, 저장 구조와 접근 방법을 설정
      • - 데이터베이스 무결성 유지, 책임, 백업, 회복 절차의 수립
      • - 성능 향상과 새로운 요구에 대응한 데이터베이스의 재구성
      • - 카탈로그의 유지 관리
    • ② 행정 및 불평 해결 : 데이터의 표현과 시스템의 문서화에 표준 설정, 사용자의 요구 및 불평 해결
    • ③ 시스템 감시 및 성능 분석
      • - 시스템 성능의 청취, 자원의 이용도, 병목현상, 장비 성능 등
      • - 사용자 요구의 변화, 데이터 사용 추세, 각종 통계의 종합 분석

 

5. DBMS(데이터베이스 관리 시스템, database management system) : 데이터베이스를 관리하고 사용자가 요구하는 모든 연산을 수행

  • 사용자의 접근 요구를 접수, 분석
  • 시스템이 이해할 수 있는 형태로 사용자 요구를 변환
  • 외부, 개념, 내부, 저장 구조 간의 사상을 수행하여 사상 데이터를 접근
  • 저장 데이터베이스에 대한 필요한 연산을 실행

DBMS 구성 요소

** DBMS 구성 요소

  • ① DDL(데이터베이스 정의어) 컴파일러 : DDL로 명세된 스키마를 내부 형태로 변환하여 카테고리에 저장.
    • - 메타 데이터베이스 : 데이터의 데이터
  • ② 질의어 처리기 : 질의문을 파싱, ANALYSIS, 컴파일 하여 데이터베이스를 접근하기 위한 목적 코드 생성
    • - 터미널을 통해 일반 사용자가 제출한 고급 질의문을 처리함.
  • ③ DML 예비 컴파일러 : 응용 프로그램에 삽입된 DML(조작어, DSL 부속어)을 추출하고 그 자리에 procedure call(함수 호출문)로 대체
    • - 추출된 DML은 DML컴파일러로 전달함
    • - 수정된 응용 프로그램은 HOST프로그램 컴파일러로 전달
  • ④ DML 컴파일러 :  DML예비 컴파일러가 넘겨준 DML 파싱하고 컴파일 하여 효율적인 목적 코드를 생성
  • ⑤ 런타임 데이터베이스 처리기 : 실행 시간에 데이터베이스를 접근함
    • - 데이터베이스 연산을 저장 데이터 관리자를 통해 수행
  • ⑥ 트랜잭션 관리자 : 트랜잭션(데이터베이스의 작업 단위) 단위로 작업을 수행
    • - 데이터베이스 접근 과정에서 무결성과 권한 제어, 무결성을 위해 총 관리함
    • - 병행제어와 회복 작업
  • ⑦ 저장 데이터 관리자 : 디스크에 있는 사용자 데이터베이스나 카탈로그 접근을 제어함
    • - 기본 OS 모듈(파일 매니저, 디스크 매니저)을 이용함
    • - 파일 매니저를 통해 파일의 페이지를 결정함
    • - 디스크 매니저가 데이터 전송을 수행함 - 메모리 내에서는 버퍼 매니저가 관리함.
반응형