본문 바로가기

정보보호학/데이터베이스

데이터베이스 시스템

728x90

1. 데이터베이스 시스템과 사용자 분류

   01      데이터베이스 시스템(DBS, DateBaseSystem)

데이터를 DB에 저장하고 관리하여 사용자의 요청에 따라 필요한 정보를 생성해주는 시스템

※ 데이터베이스 관리 시스템(DBMS)와 헷갈리지 말 것. DBMS는 시스템 소프트웨어 이다.

 

     구성 요소

  01   데이터베이스 관리 시스템 : user + DB 연결을 도와주는 소프트웨어 

  02   데이터베이스 : 데이터를 저장하는 곳

  03   데이터 모델 : 연관데이터를 저장하는 방식

위 구성요소를 감싸고있는 모든 것을 데이터베이스 시스템 이라고 지칭한다.

 

   02      데이터베이스 사용자

  01   일반사용자

  • 프로그래머가 개발한 응용프로그램을 사용하여 db에 접근
  • dbms 사용에 관심이 없고 요청하여 받은 데이터의 내용에만 관심을 가진다

  02   응용프로그래머 / 데이터베이스 프로그래머

  • 일반 사용자가 사용할 수 있는 응용 프로그램을 개발
  • 자바,jsp,php,asp,c,python등의 프로그래밍 언어를 사용하여 인터페이스와 데이터 관리 프로그램을 개발

  03   데이터베이스 관리자(DBA,DateBase Administrator)

  • 데이터베이스 시스템을 관리하는 사람
  • 데이터 수집,정리,가공하여 데이터베이스에 입력
  • DB 구축, 관리, 분석
  • DB 사용자에 대한 등록/접근범위 설정, 보안
  • DB를 주기적으로 백업

2. DBMS의 기능

   01      DBMS의 기능

  01   데이터 정의 : 데이터의 구조정의, 수정 및 삭제하는 기능

  02   데이터 조작 : 응용프로그램의 요청으로 데이터삽입,수정,삭제하는 기능

  03   데이터 추출 : 응용프로그램의 요청으로 필요한 데이터를 추출하는 기능

  04   데이터 제어 : 사용자를 관리(계정 생성, 접근제한)하는 기능 / 백업,회복, 동시성(동시공유) 제어 등의 기능

 

3. 데이터 언어

사용자가 데이터베이스 관리 시스템을 사용하기 위한 언어
사용 목적에 따라 구분이 필요함

   01      데이터 언어

  01   데이터 정의어

  • 데이터의 구조를 정의, 수정, 삭제하기 위해 사용하는 언어
  • DBMS의 기능 중 데이터 정의에 사용되는 언어
  • 종류 - CREATE, ALTER, DROP 

  02   데이터 조작어

  • 데이터의 삽입,수정,삭제,검색 등의 요청을 위해 사용하는 언어
  • DBMS의 기능 중에서 데이터 조작과 추출에 사용되는 언어
절차적 데이터 조작어(잘 사용안함) 비절차적 데이터 조작어
- 사용자가 어떤 데이터를 원하며, 처리방법까지 설명하는 
   저급 데이터 언어
- 한번에 하나의 레코드를 검색하여 호스트언어와 함께 처리하는 특성
- 독자적으로 사용불가하고 응용프로그램 속에 삽입되어 사용
- 사용자가 어떤 데이터를 원하는지만 명세
- 처리방법은 DBMS에 의존하는 고급 데이터 언어
- 여러개의 레코드를 검색하여 처리하는 특성
- 터미널을 통해 사용자와 대화식으로 사용됨
- 질의어(쿼리문) : SELECT, INSERT,DELETE,UPDATE

  03   데이터 제어어

  • 내부적으로 필요한 규칙이나 기법을 정의하기 위해 사용하는 언어
  • db 관리 목적의 언어

   규칙/기법 종류   

  • 무결성 : 정확하고 유효만 데이터만 유지
  • 보안 : 허가안된 사용자의 데이트 접근차단, 허가된 사용자 데이터는 접근 허용된 데이터만 접근
  • 회복 : 장애 발생 시 데이터의 일관성을 유지
  • 동시성 : 다수의 사용자가 같은 데이터에 동시 접근하여 데이터를 조작할 수 있도록 제어
  • 종류 : COMMIT,ROLLBACK,GRANT,REVOKE

'정보보호학 > 데이터베이스' 카테고리의 다른 글

데이터베이스 스키마  (0) 2021.08.03
정보와 데이터베이스  (0) 2021.08.03