ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 데이터베이스 관리 시스템(DBMS)란 무엇인가
    CS지식/데이터베이스 2021. 5. 26. 23:13

    데이터베이스 관리 시스템(DBMS)는 사용자 또는 응용 프로그램과 데이터베이 사이에 위치하여 데이터베이스를 공유할 수 있도록 관리하는 소프트웨어이다.

    사용자가 원하는 정보를 검색하는 기능을 제공하고 데이터베이스에 접근하기 위해서는 DBMS를 통해서만 가능하다.

     

    데이터베이스 관리 시스템(DBMS)가 개발되기 전에는 어떻게 데이터를 관리했을까?

    DBMS가 나오기 전에는 디스크의 파일에 데이터를 저장하고 이러한 파일들을 파일 시스템이 관리했다.

    하지만 파일 시스템은 데이터 종속성데이터 중복성 문제가 있어 대체자가 필요하게 되었고 그 대체자로 DBMS가 나오게 된 것이다.

     

    그러면 데이터 종속성과 데이터 중복성은 무엇일까?

    데이터 종속성은 데이터와 응용 프로그램 간의 상호 의존 관계를 뜻한다.

    즉, 데이터에 대한 응용 프로그램의 의존도가 높다는 것인데 이 얘기는 이미 존재하는 데이터의 구성 등을 변경하기 위해서는 파일에 접근 중인 모든 응용프로그램도 함께 변경해야한다는 것이다.

    데이터 중복성은 시스템 내에 같은 데이터가 여러 개 존재하는 것이다.

    파일 시스템을 사용하게 되면 데이터 파일과 응용 프로그램이 일대일로 대응되어야 하기 떄문에 데이터 내용이 같아도 구조가 다르면 별도의 파일을 만들어야한다. 이렇기 때문에 같은 데이터가 중복되어 저장되고 관리되는 경우가 발생한다.

     

    파일 시스템의 데이터 종속성과 데이터 중복성 문제를 해결하기 위해 DBMS가 개발되었다.

    그러면 DBMS의 장점과 단점은 무엇일까?

    먼저 DBMS의 장점은 다음과 같다.

    - 데이터 중복의 최소화

    파일 시스템의 경우에는 응용 프로그램이 자신의 파일을 관리하여 데이터 중복이 발생하지만

    DBMS는 데이터를 통합하여 데이터베이스에 구축하기때문에 데이터의 중복을 최소화할 수 있다.

    - 데이터 공유 가능

    같은 내용의 데이터를 다양한 구조로 만들어 사용할 수 있어 데이터 공유가 가능해진다.

    - 데이터 일관성 유지

    DBMS는 중앙집중식 통제를 통해 데이터베이스 내에 있는 데이터들의 일관성을 유지할 수 있다.

    - 데이터 무결성 유지

    데이터 무결성은 데이터의 정확성을 의미하며 DBMS는 데이터의 유효성을 검사하여 데이터의 무결성을 유지할 수 있다.

    - 데이터 보안을 보장

    데이터베이스에 여러 사용자가 응용 프로그램이 접근하므로 보안을 유지해야한다.

    DBMS는 접근가능한 사용자, 허용된 데이터 연산 등인지 검사하여 보안을 보장한다.

     

    많은 장점이 존재하지만 단점도 존재한다.

    DBMS는 파일 시스템에 비해 가격이 비싸고 운영을 위해 컴퓨터의 자원을 많이 소요한다.

    또한, DBMS의 구조가 복잡하여 장애가 발생했을 때 정확한 이유나 상태를 파악하기 힘들 수 있다.

     

    데이터베이스 관리 시스템(DBMS)는 다양한 구조로 개발되어 상용화되고 있다.

    그 중 대표적인 DBMS 종류에 대해 알아보자.

    1) 네트워크 DBMS

    네트워크 DBMS는 노드(레코드, 데이터들의 주제)와 간선(레코드들 사이의 관계를 표현)으로 표현되는 그래프를 기반으로 하는 네트워크 데이터 모델을 사용한 것이다.

    예를 들어 병원이라는 데이터베이스의 구조를 네트워크 데이터베이스로 표현하면 아래와 같다.

     

    2) 계층 DBMS

    네트워크 데이터 모델을 단순화 시켜 트리 구조로 표현하는 계층 데이터 모델을 사용하는 것이다.

    계층 DBMS는 특정 유형에 대해서는 응용을 빠른 속도와 높은 효율성을 제공하는 장점이 있지만 데이터 접근 방법을 미리 정의해야 하고 데이터베이스가 생성될 때 데이터 간의 관계를 정의해야하는 단점이 있다.

    계층 데이터베이스를 그림으로 보면 아래와 같다.

     

    3) 관계 DBMS

    관계 DBMS는 테이블을 기반으로 하는 관계 데이터 모델을 사용하는 것으로 데이터베이스는 하나 이상의 테이블로 구성되고 모든 데이터가 테이블에 저장된다.

    관계 DBMS의 장점은 모델이 간단하여 이해하기 쉽고 사용자가 자신이 원하는 데이터를 요청하기만 하면 관계 DBMS가 데이터가 어디에 있는지 어떻게 접근하는지 결정해준다.

    테이블은 아래와 같은 형태이다.

    댓글

Designed by Tistory.