Computer >> 컴퓨터 >  >> 소프트웨어 >> Office

데이터베이스 관리 시스템(DBMS)이란? 개념부터 종류까지 완벽 정리

데이터베이스 관리 시스템(DBMS, Database Management System)은 데이터 조작, 사용자 인증, 데이터의 삽입·추출 등 데이터베이스의 모든 핵심 기능을 통합적으로 관리하는 소프트웨어입니다. 또한 DBMS는 데이터 스키마(data schema), 즉 데이터가 저장되는 구조 자체를 정의하는 역할도 담당합니다.

관계형 데이터베이스 관리 시스템(RDBMS)은 테이블과 그 사이의 관계(relationship)로 구성된 관계형 모델을 구현한 시스템입니다.

데이터베이스 관리 시스템의 역사

DBMS라는 용어는 1960년대부터 사용되기 시작했습니다. 당시 IBM은 컴퓨터에 데이터를 계층형 트리(hierarchical tree) 구조로 저장하는 최초의 DBMS 모델인 IMS(Information Management System)를 개발했습니다. 이 방식에서는 개별 데이터가 부모-자식(parent-child) 레코드 간에만 연결될 수 있었습니다.

그다음 세대의 데이터베이스는 네트워크형 DBMS였습니다. 네트워크형 DBMS는 데이터 간 일대다(one-to-many) 관계를 도입하여 계층형 설계의 한계를 극복하고자 했습니다. 이후 1970년대에 들어서면서 IBM의 에드거 F. 코드(Edgar F. Codd)가 오늘날 우리가 아는 관계형 데이터베이스 모델의 원형을 확립하게 됩니다.

현대 관계형 DBMS의 주요 특징

관계형 데이터베이스 관리 시스템은 앞서 언급한 대로 테이블과 관계를 기반으로 하는 관계형 모델을 구현합니다. 오늘날 관계형 DBMS의 가장 중요한 설계 과제는 데이터 무결성(data integrity) 유지입니다. 이는 데이터에 대한 다양한 제약 조건과 규칙을 적용해 중복이나 데이터 손실을 방지하고, 데이터의 정확성과 일관성을 보호하는 것을 의미합니다.

또한 DBMS는 여러 단계에서 구현되는 권한 부여(authorization)를 통해 데이터베이스 접근을 통제합니다. 예를 들어, 관리자나 운영자는 일반 직원에게 보이지 않는 데이터에 접근할 수 있고, 일부 사용자는 데이터를 열람만 가능한 반면 다른 사용자는 수정 권한을 가질 수 있습니다.

SQL(구조화 질의 언어)의 역할

대부분의 DBMS는 SQL(Structured Query Language)을 사용하며, SQL은 데이터베이스와 상호작용할 수 있는 스크립트 기반 방법을 제공합니다. 실제로 데이터베이스가 사용자가 데이터를 쉽게 조회, 선택, 편집할 수 있도록 그래픽 인터페이스를 제공하는 경우에도, 이면에서는 SQL이 이러한 작업을 처리하고 있습니다.

대표적인 DBMS 종류

어떤 데이터베이스를 선택할지는 생각보다 복잡한 작업입니다. Oracle, Microsoft SQL Server, IBM DB2는 고급 관계형 DBMS 시장을 지배하고 있는 제품들로, 대규모·복잡한 데이터 시스템에 적합한 선택지입니다. 반면 소규모 조직이나 개인·가정용으로는 Microsoft Access, FileMaker Pro 같은 DBMS가 널리 사용됩니다.

최근에는 비관계형(nonrelational) DBMS도 큰 인기를 얻고 있습니다. 이른바 NoSQL 방식으로 불리는 이 데이터베이스는 RDBMS의 엄격한 스키마 대신 더 유연한 구조를 채택하고 있어, 다양한 데이터 유형으로 이루어진 방대한 데이터셋을 저장하고 활용하는 데 유용합니다. 이 분야의 주요 제품으로는 MongoDB, Cassandra, HBase, Redis, CouchDB 등이 있습니다.