본문 바로가기
정보처리기사/데이터베이스 구축

데이터베이스의 구성, 모델

by jhwannabe 2023. 7. 14.

데이터베이스의 구성

스키마(Schema)

  • 데이터베이스의 구조(개체, 속성, 관계)에 대한 정의

스키마의 3계층

외부 스키마
(External Schema)
사용자나 응용 프로그래머가 접근할 수 있는 정의를 기술함
개념 스키마
(Conceptual Schema)
- 데이터베이스 전체를 정의한 것으로 데이터 개체, 관계, 제약조건, 접근 권한, 무결성 규칙 등을 명세한 것
- 범기관적 입장에서 데이터베이스를 정의함
내부 스키마
(Internal Schema)
- 데이터의 실제 저장 방법을 기술함
- 물리적 저장 장치의 입장에서 본 데이터베이스 구조로써 실제로 데이터베이스에 저장될 레코드의 형식을 정의하고 저장 데이터 항목의 표현 방법, 내부 레코드의 물리적 순서 등을 나타냄

데이터베이스 언어(DataBase Language)

데이터 정의어
(DDL : Data Definition Language)
- 데이터베이스의 객체들, 즉 테이블, 뷰, 인데스 등에 대한 구조인 스키마를 정의하고 변경하며 삭제할 수 있는 기능
- 논리적 데이터 구조와 물리적 데이터 구조 간의 사상 정의
- 번역한 결과가 데이터 사전에 저장됨
데이터 조작어
(DML : Data Manipulation Language)
- 사용자와 데이터베이스 관리 시스템 간의 인터페이스를 제공
- 데이터의 검색/삽입/삭제/변경을 수행함
데이터 제어어
(DCL : Data Control Language)
- 불법적인 사용자로부터 데이터를 보호함
- 무결성을 유지함
- 데이터 회복 및 병행 제어를 수행함

데이터베이스 사용자

데이터베이스 관리자
(DBA : DataBase Administrator)
- 데이터베이스를 구축하는 책임자
- DBMS를 관리함
- 사용자 요구 정보 결정 및 데이터를 효율적으로 관리함
- 백업 및 회복 전략을 정의함
- 행정적 책임을 가짐
- 시스템 감시 및 성능을 분석함
- 데이터 사전을 구성함
- 데이터 접근 권한과 회복 절차를 수립함
- 데이터베이스의 구성 요소 결정과 내장 저장 구조를 정의 및 수정함
응용 프로그래머 - DBA가 설계한 데이터베이스를 기반으로 소프트웨어 개발 툴을 이용하여 사용자에게 제공할 소프트웨어를 작성하는 업무를 담당함
- COBOL, PASCAL, C, JAVA 등의 개발 언어를 사용함
일반 사용자 응용 프로그램, 질의어 등을 통하여 데이터베이스에 직접 접근하여 자원을 사용함

 

데이터베이스 모델의 종류

데이터 모델의 개념

  • 현실 세계를 데이터베이스에 표현하는 중간 과정
  • 데이터베이스 설계 과정에서 데이터의 구조를 표현하기 위해 사용되는 도구

데이터 모델의 구성 요소

  • 데이터 구조(Structure) : 데이터 구조 및 정적 성질을 표현함
  • 연산(Operation) : 데이터의 인스턴스에 적용 가능한 연산 명세와 조작 기법을 표현함
  • 제약조건(Constraints) : 데이터의 논리적 제한 명시 및 조작의 규칙

데이터 모델의 구분

  • 개념적 모델
    • E-R 다이어그램
  • 논리적 모델
    • 계층형
    • 네트워크(망)형
    • 관계형
    • 객체지향형

개념적 데이터 모델

  • 속성들로 기술된 개체 타입과 이 개체 타입 간의 관계를 이용하여 현실 세계를 표현하는 방법
  • E-R 모델(Entity-Relationship 모델, 개체-관계 모델)
    • 대표적인 개념적 데이터 모델
    • 개체 타입과 이들 간의 관계 타입을 이용하여 현실 세계를 개념적으로 표현한 방법
    • E-R 다이어그램 : E-R 모델을 그래프 방식으로 표현
기호 기호 이름 의미
사각형 개체(Entity)
마름모 관계(Relationship)
타원 속성(Attribute)
실선 개체 타입과 속성을 연결
이중 타원 다중값 속성

논리적 데이터 모델

  • 필드로 기술된 데이터 타입과 이 데이터 타입 간의 관계 현실 세계를 표현하는 방법
  • 종류
    • 관계형 데이터 모델 : 데이터베이스를 테이블(Table)의 집합으로 표현
    • 계층형 데이터 모델 : 데이터베이스를 트리(Tree) 구조로 표현
    • 네트워크형 데이터 모델 : 데이터베이스를 그래프(Graph) 구조로 표현(오너-멤버 관계)하며, CODASYL DBTG 모델이라고도 함
728x90
반응형