코딩공작소

Database System 본문

어플리케이션개발/DB

Database System

안잡아모찌 2018. 9. 30. 19:51

DataBase System(DBS)이란 ??


조직에 의해 요구되는 정보를 관리하고 저장하기 위해 데이터 접근을 하는 정보 시스템.


DBS는 3개의 중요한 요소로 이루어져 있다.

  • DataBase(DB)
  • DataBase Management System(DBMS)
  • Database users

<DBS>


1.DataBase

  1. 관련없는 정보의 집합 : 데이타는 기록될 수 있고 절대적인 의미를 갖는 잘 알려진 facts다.

  2. 현실세계 application의 몇 측면을 대표한다.

  3. 구체적 목적을 위해 만들어진다.

  4. real application을 위한 stored date과 meta data도 포함한다. meta data는 meta DB에 저장된다. stored databased를 위한 데이터들이다.

  5. DB의 예 - 대학DB,회사DB, ...

2.DBMS

  1. underlying DB를 관리하는 프로그램들의 집합

  2. DB users 와 underlying DB사이의 Interface. 이는 유저들이 정보를 쉽게 만들고 유지하게 할 수 있다.

  3. users의 요구사항을 들어주는것 . Application은 매개체 역할을 한다. 즉, DBMS를 통해 데이터를 다룬다.

2.1 DBMS의 주요한 기능들

  1. ★Defining a DB(Database design) : 저장되어 있는 데이타 타입, 구조, 제약조건들 구체화한다.
  2. ★Meta-Data : Database definition or descriptive[각주:1] information. 
  3. DB를 조절한다. (수정, 검색기능) stored DB사용!
  4. Query 를 관리하고 현실세계를 위한 underlying DB를 업데이트한다. 
  5. Application program : DB에 접근 하는 것. queries를 보내거나 DBMS의 업데이트로 이루어진다.
  6. DB를 공유한다 : 다양한 사용자와 프로그램들이 DB에 동시적으로 접근할 수 있도록 허락한다.
  7. 보호기능 : 비권한자로부터의 보호, 오작동으로부터의 보호



3.DB users




Real-World에 있는 data들을 DB designer가 Modeling을 통해 DB에 저장한다.

Modeling은 3단계를 거쳐서 진행된고 ER-win을 이용해서 모델링한다.

DB는 stored DB, Meta DB로 이루어져 있다.


##DB languages --> Defining, Manipulation 의 명령어는 SQL로 조작한다. (DDL,DML 등 표준 instruction)


<End users>

DB를 app을 통해 접근하는 사람들을 말한다. app은 app개발자에 의해 만들어진다.

  1. End user : 필요할 때마다 DB에 접근하는 유저
  2. Naive or parametric end users : canned transactions 같은 사전적 정의된 기능을 통해 DB를 이용하는 유저
  3. Sophisticated end users (-->interactiove user) : System function과 친숙한 유저 . DBMS와 interact하는 유저

<App programmer>

app을 개발하는 프로그래머.

시스템 분석, host 언어, SQL과 같은DB언어 DML(Data Manipulation Language) 를 필요로 한다.


<★DB Designer>

DB를 위한 현실세계의 app의 requirements들을 이해해야 한다.

저장되어있는 데이터들을 식별하고 데이터들을 저장하고 대표로 하기위한 적절한 구조를 선택해야 한다.

유저의 needs 분석, DBMS사용법 . manipulate의 SQL(DML).

Data-Model(DM)을 사용한다. 현실세계의 요구사항들을 DB로 mapping 한다.

DDL(Data Definition Language) 를 알아야 한다. SQL과 같은 언어이다.


<DB Administrators>

DB에 접근 권한을 관리

그것들을 조정하고 모니터한다.

S/W , H/W를 알아야한다.


4. 그 외의 user


<DBMS 개발자>

DBMS를 개발하고 디자인한다. S/W package와 같은 모듈들과 인터페이스를 개발.


<Tool 개발자>

CASE 툴 같은 개발도구들을 개발한다.


<Operators and maintenance personnel>

DB를 위한 SW,HW환경을 책임감 있게 운영하고 관리한다.



  1. 기술적인 [본문으로]

'어플리케이션개발 > DB' 카테고리의 다른 글

ER Model  (0) 2018.10.05
데이터베이스 설계  (0) 2018.10.05
DBMS  (0) 2018.10.02
DataModel & DBMS Architecture  (0) 2018.10.02
DB접근의 특성  (0) 2018.09.30