컴퓨터공학/데이터베이스

[데이터베이스] 데이터베이스 시스템

NIMHO 2022. 10. 12. 10:35
728x90

복습하기 위해 학부 수업 내용을 필기한 내용입니다.
이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다.
그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다.

시스템 구성 요소

  • 데이터베이스 시스템(DBS : Database System)
    • 데이터베이스를 유지, 관리하고 필요한 시점에 데이터를 입력, 조작, 변경하여
    • 목적을 달성하기 위해 이용하는 시스템
  • 구성 요소
    • 데이터베이스, DBMS, 데이터베이스 언어, 사용자, 데이터베이스 관리자, 하드웨어
    • 응용프로그램은 X

 

스키마 (Schema)

  • 데이터베이스 구조와 데이터 제약조건에 대한 논리적인 정의를 기술하는 것
    • 개체, 속성, 관계에 대한 명세와 유지 조건을 포함한다.
  • 외부 스키마
    • 사용자나 응용프로그래머가 접근하는 데이터베이스의 논리적인 서브 스키마를 정의
  • 개념 스키마
    • 조직 전체의 총괄적인 입장에서 본 데이터베이스를 기술
  • 내부 스키마
    • 개념 스키마에 대한 내부 물리적인 저장구조를 기술

 

데이터베이스 언어

  • 데이터 정의어(DDL : Data Definition Language)
    • 데이터베이스 스키마를 컴퓨터가 이해할 수 있게끔 기술하는 데 사용 (구조를 만들어서 입력)
  • 데이터 조작어(DML : Data Manipulation Language)
    • 데이터 처리(검색, 삽입, 삭제, 변경)를 지원
    • 절차적 데이터 조작어(procedural DML)
      • 범용 프로그램 언어 속에 삽입(embedded)된 형태로 사용 (java, 베이직, ...)
    • 비절차적 데이터 조작어(non-procedural DML)
      • 일반 사용자가 대화식으로 사용(예, query language)
  • 데이터 제어어(DCL : Data Control Language) - 너무 광범위하다.
    • 데이터 제어(보안, 무결성, 회복, 병행수행)를 정의하고 기술하는 언어
  • 이와 같이 정의어, 조작어, 제어어로 구별되지만
  • 현실적으로는 이들이 별도 언어로 존재하지 않고 하나의 표준화 언어(예, SQL) 안에서 통합되어 사용된다.

 

사용자(Users)

  • 일반 사용자 (end user)
    • 비절차적 DML 언어(query lang.)를 통해서 데이터베이스를 접근
    • query는 배워야 하는데, 쓰기가 어렵다. -> 프로그래머가 간단히 개발했다.
  • 응용 프로그래머 (application programmer)
    • 범용 프로그래밍 언어와 절차적 DML 언어를 사용해 DB를 접근하고 개발하는 사람 -> 일반 사용자를 위해서
  • 데이터베이스 관리자 (DBA : database administrator) *역할이 중요하다
    • DDL(정의어)과  DCL(제어어)을 통해 DB를 정의하고 제어하는 사람

 

데이터베이스 관리자(DBA)

  • DBA(Database Administrator)
    • 데이터베이스 시스템의 관리, 운영에 대한 모든 책임을 지고 있는 사람
    • 논리적, 물리적 설계/보안/관리, 운영
  • DBA의 업무
    • DB 설계(개념 스키마)와 운영
    • 행정적인 업무
    • 시스템 성능 감시(monitoring)각종 통계 정보 분석

 

DBMS 및 컴퓨터

  • DBMS
    • 아래 링크 참조

2022.10.12 - [컴퓨터공학/데이터베이스] - [데이터베이스] DBMS (Database Management System)

 

[데이터베이스] DBMS (Database Management System)

복습하기 위해 학부 수업 내용을 필기한 내용입니다. 이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다. 그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다. ▶기존

dhalsdl12.tistory.com

  • 컴퓨터
    • 데이터베이스 시스템을 운영/관리하기 위해서는 성능이 우수한 컴퓨터 사용이 요구된다.
    • 실시간 처리/동시 사용 등
    • 자세히는 하지 않는다.
728x90