[MySQL] DB vs DBMS

2019. 3. 2. 16:16DataBase

DB와 DBMS



DB: DataBase 

DBMS : DataBase Management System

데이터베이스와 DBMS의 차이점이 무엇인지 정리하고자 합니다.

■ DB

  • 데이터의 집합 [ 데이터 (0과1로 된 Binary형태) --> 가공 --> 정보(DB) ]

  • (흔히 잘못 생각하는 게 DB는 Mysql / MongoDB  / Oracle 같은 소프트웨어 제품이 아닙니다!!! )

  • DB는 컴퓨팅 환경에서 0과1의 Binary 형태로 저장되는 데이터를 처리해서 나온 정보입니다. 
  • 좀 추상적인 개념인데 물리적으로 Binary데이터고 파일시스템의 파일들이 DB라고 볼 수 있습니다.
  • 여러 응용 프로그램들의 통합된 정보들을 저장하여 운영할 수 있는 shared Data.
  • 효율적으로 저장/검색/갱신 하도록 데이터 집합들끼리 연관시키고 조직화되야 합니다.

■ DB의 특징

1) 실시간 접근성(Real-time Accessability)
 : 사용자 요구를 즉각 처리합니다

2) 계속적인 변화성(Continuous Evolution)
 : 정확한 값을 유지하기위해 삽입/삭제/수정 작업 등을 이용해 데이터를 지속적으로 갱신합니다.

3) 동시 공유성 (Concurrent Sharing)
 : 여러 사용자마다 다른 목적으로 사용하므로 여러 명이 동일한 데이터에 접근해 이용할 수 있습니다.

4) 내용 참조(Content Reference)
 : 저장한 데이터의 위치나 주소가 아닌 사용자가 요구하는 데이터의 내용. 즉, 데이터 값에 따라 참조할 수 있어야 합니다.

■ DBMS

위의 DB와 사용자 사이에서 효율적으로 DB를 관리해주는 소프트웨어입니다. 
여러 응용프로그램 또는 시스템이 동시에 DB에 접근하여 사용할 수 있습니다.

DBMS의 3대 필수기능
1) 정의기능 (Definition)
DB의 물리적 / 논리적 구조(Structure)를 정의합니다.

2) 조작기능 (Multiplation)
데이터를 검색/삭제/갱신/삽입하는 기능. 사용자 <--> DB 사이에 앞 선 작업들을 체계적으로 처리하기위한 편리한 인터페이스 수단을 제공합니다.

3) 제어기능 (Control)
DB를 접근하는 조작기능이 정확하게 수행되어 데이터의 무결성을 유지하도록 합니다.
여러 사용자가 DB에 동시 접근해 데이터를 처리할 때 결과가 항상 정확성을 유지하도록 병행제어를 할 수 있어야합니다.

■ DBMS의 장점/단점

    • 데이터 중복 최소화
    • 데이터 일관성 및 데이터 무결성 유지
    • 데이터 보안 보장

단점

    • 비싼 운영비
    • 백업 / 복구에 대한 관리가 복잡
    • 부분적 DB손실이 전체 시스템에 큰 결함을 일으킬 수 있다

정리하면) 
 DB는 어린이가 가지는 책장의 책들이고, 그 책들을 관리해주는 엄마가 DBMS라고 할 수 있습니다.

그리고 우리가 웹이나 모바일 애플리케이션 개발을할 때 백엔드에서 DB는 뭐 썼어요!? MySQL? MariaDB? MongoDB? 이렇게 물어보는 게 아니라
DBMS는 무엇을 사용했나요?라고 물어보는 게 적절합니다.(그냥 흔히 DB는 무엇을 사용했냐고 물어보긴 하지만요...^^;;)



[ edwith - 웹프로그래밍 부스트코스 ] 를 개인적으로 공부하고 정리한 공간입니다. 잘못된 부분은 피드백 주시면 감사하겠습니다


'DataBase' 카테고리의 다른 글

[MySQL]DDL  (0) 2019.03.05
[MySQL] DML  (0) 2019.03.04
[MySQL] SQL  (0) 2019.03.04