Home SD 커뮤니티 Easy Tech

Easy Tech

Easy Tech

데이터베이스 관리 시스템(DBMS)의 정의와 종류

2019-06-04


데이터베이스(Database)란

데이터베이스(Database, DB)는 여러 사람이 공유하고 사용할 목적으로 통합 관리되는 정보의 집합이다. 논리적으로 연관된 하나 이상의 자료의 모음으로 그 내용을 고도로 구조화함으로써 검색 및 갱신의 효율을 높인다. 즉, 몇 개의 자료 파일을 조직적으로 통합하여 자료 항목의 중복을 없애고 자료를 구조화하여 기억시켜 놓은 자료의 집합체라고 할 수 있다. 같은 데이터라 할지라도 사용자는 각각의 응용 목적에 따라 다르게 사용할 수 있다. 사무 계산을 할 경우 각각의 업무 전용 데이터 파일을 사용하고 있지만 각 파일에는 중복된 정보가 들어있는 것이 많다. 이 중복을 피하여 정보를 일원화하여 처리를 효율적으로 하기 위해서 서로 관련성을 가지며, 중복이 없는 데이터의 집합이 데이터베이스인 것이다.

 
 
데이터베이스의 특징

데이터베이스의 특징은 다음과 같다.

  ▶ 실시간 접근성(real time accessibility) : 사용자의 질의에 대하여 즉시 처리하여 응답한다.
  ▶ 계속적인 진화(continuous evolution) : 삽입, 삭제, 갱신을 통하여 항상 최근의 정확한 데이터를 동적으로 유지한다.
  ▶ 동시 공유(concurrent sharing) : 여러 사용자가 동시에 원하는 데이터를 공유할 수 있는 특징을 갖는다.
  ▶ 내용에 의한 참조(content reference) : 데이터베이스에 있는 데이터를 참조할 때 투플(tuple)의 주소나 위치가 아닌 사용자가 요구
                                                                                는 데이터 내용에 따라 참조한다.
  ▶ 데이터 논리적 독립성(independence) : 응용프로그램과 데이터베이스를 독립시킴으로써 데이터 논리적 구조를 변경시키더라도
                                                                                  응용프로그램은 변경되지 않는다.

 
 
 
데이터베이스의 장점

데이터베이스의 장점은 다음과 같다.

   데이터 중복 최소화
   데이터 공유
   일관성, 무결성, 보안성 유지
    최신의 데이터 유지
    데이터의 표준화 가능
   데이터의 논리적, 물리적 독립성
   용이한 데이터 접근
    데이터 저장 공간 절약

 
 
 
데이터베이스의 구성

데이터베이스는 특정 조직의 업무를 수행하는 데 필요한 상호 관련된 데이터들의 모임으로, 최소의 중복으로 통합(integrated), 저장(stored)된 운영(operation) 데이터로 구성된다. 통합 데이터(integrated data)는 중복을 배제하나 경우에 따라 불가피하게 중복을 허용하는 데이터로, 이러한 의도적 중복은 항상 파악하여 관리할 수 있다. 저장 데이터(stored data)는 컴퓨터의 저장매체에 저장하여 관리하는 데이터를 의미하고, 운영 데이터(operation data)는 단순한 데이터의 집합이 아니라 그 조직의 기능을 수행하는 데 없어서는 안될 필수의 데이터를 의미한다. 공용 데이터(shared data)는 어느 하나의 응용프로그램이나 응용시스템을 위한 데이터가 아니라, 그 조직의 여러 사용자와 여러 응용시스템들이 서로 다른 목적으로 데이터를 공동으로 이용할 수 있게 한다.

 
 
 
데이터베이스 관리 시스템(DBMS)이란

데이터베이스 관리 시스템(DataBase Management System, DBMS)은 데이터베이스를 조작하는 별도의 소프트웨어로, DBMS를 통해 데이터베이스를 관리하여 응용 프로그램들이 데이터베이스를 공유하고, 사용할 수 있는 환경을 제공한다. DBMS는 데이터베이스를 구축하는 틀을 제공하고, 효율적으로 데이터를 검색하고 저장하는 기능을 제공한다. 또한 응용 프로그램들이 데이터베이스에 접근할 수 있는 인터페이스를 제공하고, 장애에 대한 복구 기능, 사용자 권한에 따른 보안성 유지 기능 등을 제공한다. 즉, 데이터베이스 내의 정보를 구성하는 컴퓨터 프로그램의 집합으로서, 자료의 중복성을 제거하고 다른 특징들 중에 무결성, 일관성, 유용성을 보장하기 위해서 자료를 제거하고 관리하는 소프트웨어 체계이다.

 
 
 
DBMS의 기능들

DBMS에서 저장, 관리되는 공간정보는 지표면의 위치에 바탕을 둔 공간정보, 그와 관련된 속성정보, 공간상의 객체들의 연결성과 인접성을 묘사하는 위상구조에 관한 정보가 필수적으로 저장되어야 한다. 데이터베이스 기술의 추세를 살펴보면, 종전의 파일형 데이터베이스에서 관계형 데이터베이스를 거쳐 최근에는 오브젝트 지향 데이터베이스가 주류를 형성하고 있다. DBMS의 기능은 다음과 같다.

   ▶ 정의 : 데이터에 대한 형식, 구조, 제약조건들을 명세하는 기능이다. 데이터베이스에 대한 정의 및 설명은 카탈로그나 사전의 형태로
                   저장된다.
   ▶ 구축 : DBMS가 관리하는 기억 장치에 데이터를 저장하는 기능이다.
   ▶ 조작 : 특정한 데이터를 검색하기 위한 질의, 데이터베이스의 갱신, 보고서 생성 기능 등을 포함한다.
   ▶ 공유 : 여러 사용자와 프로그램이 데이터베이스에 동시에 접근하도록 하는 기능이다.
   ▶ 보호 : 하드웨어나 소프트웨어의 오동작 또는 권한이 없는 악의적인 접근으로부터 시스템을 보호한다.
   ▶ 유지보수 : 시간이 지남에 따라 변화하는 요구사항을 반영할 수 있도록 하는 기능이다.

 
 
 
DBMS의 장점유형

DBMS는 자료와의 관계성을 정의하기 때문에 자료의 통합성을 증진시키고, 데이터의 접근성이 용이하다. 또한 데이터 통제가 강화되며, 애플리케이션 프로그램들을 쉽게 개발하고 관리할 수 있다. 그리고 보안 또한 강화된다는 장점을 지닌다. DBMS의 유형은 다음과 같다.

   관계형 데이터베이스 관리 시스템(RDBMS)
   NoSQL DBMS
    인 메모리 데이터베이스 관리 시스템(IMDBMS)
   기둥형 데이터베이스 관리 시스템(CDBMS)

 
 
 
DBMS의 종류

대표적인 DBMS에는 오라클(Oracle), MySQL, MSSQL, MariaDB 등이 있고, 각각의 DBMS는 다음과 같은 특징들을 가지고 있다.

Oracle
MySQL
MSSQL
MariaDB
- 오라클에서 만들어 판매중인 상업용 데이터베이스
- 윈도우, 리눅스, 유닉스 등 다양한 운영체제(OS)에서 설치 가능
- MySQL, MSSQL보다 대량의 데이터 처리 용이
- 대기업에서 주로 사용하며, 글로벌 DB 시장 점유율 1위
- 비공개 소스, 폐쇄적인 운영
- 가장 널리 사용되는 RDBMS
- MySQL사에서 개발, 썬마이크로시스템즈를 거쳐 현재 오라클에 인수합병
- 윈도우, 리눅스, 유닉스 등 다양한 운영체제(OS)에서 설치 가능
- 오픈소스로 이루어져있는 무료 프로그램(상업적 사용 시 비용 발생)
- 가격 등의 장점을 앞세워 다수의 중소기업에서 사용중
- RDBMS
- 마이크로소프트(MS)사에서 개발한 상업용 데이터베이스
- 다른 운영체제에서도 사용가능하지만 윈도우에 특화됨
- 비공개 소스로 폐쇄적인 운영(리눅스 버전은 오픈소스)
- 중소기업에서 주로 사용중
- RDBMS
- MySQL이 오라클에 인수합병된 후 불확실한 라이선스 문제를 해결하려고 나온 오픈소스 RDBMS
- 구현언어 : C++
- MySQL과 동일한 소스 코드 기반
- MySQL과 비교해 애플리케이션 부분 속도가 약 4~5천배 정도 빠름