Computer >> 컴퓨터 >  >> 프로그래밍 >> SQL

데이터베이스 유형 완벽 가이드: 알아야 할 11가지 DB 종류와 특징

데이터베이스는 용도와 사용 환경에 따라 다양한 형태로 나뉩니다. 시장에는 여러 종류의 데이터베이스가 존재하며, 각각 고유한 특징과 장단점을 가지고 있습니다.

  • 중앙 집중식 데이터베이스
  • 분산 데이터베이스
  • 개인 데이터베이스
  • 최종 사용자 데이터베이스
  • 상용 데이터베이스
  • NoSQL 데이터베이스
  • 운영 데이터베이스
  • 관계형 데이터베이스
  • 클라우드 데이터베이스
  • 객체 지향 데이터베이스
  • 그래프 데이터베이스

지금부터 각 데이터베이스 유형을 하나씩 자세히 살펴보겠습니다.

1. 중앙 집중식 데이터베이스(Centralised Database)

중앙 집중식 데이터베이스는 모든 데이터를 하나의 중앙 위치에 저장하는 방식입니다. 서로 다른 지역에 있는 사용자들도 이 데이터에 접근할 수 있으며, 원격지에서도 애플리케이션 절차를 통해 데이터를 이용할 수 있습니다.

다양한 인증 절차를 통해 최종 사용자를 검증하고 확인합니다. 또한 애플리케이션이 등록 번호를 부여해 데이터 사용 내역을 추적·기록하며, 이러한 관리 업무는 주로 지역 사무소에서 담당합니다.

2. 분산 데이터베이스(Distributed Database)

분산 데이터베이스는 중앙 집중식 데이터베이스와 반대되는 개념으로, 공용 데이터베이스와 각 로컬 컴퓨터가 수집한 정보를 함께 활용합니다. 데이터가 한 곳에 모여 있지 않고 조직의 여러 사이트에 분산되어 있으며, 통신 링크로 사이트들이 서로 연결되어 있어 분산된 데이터에 쉽게 접근할 수 있습니다.

즉, 분산 데이터베이스란 데이터베이스의 여러 부분이 물리적으로 서로 다른 여러 위치에 저장되고, 애플리케이션 절차가 네트워크의 여러 지점에 복제·배포된 형태라고 이해할 수 있습니다.

동종(Homogeneous) vs 이종(Heterogeneous) DDB

분산 데이터베이스는 동종과 이종 두 가지로 나뉩니다. 동일한 하드웨어 위에서 같은 운영체제와 애플리케이션 절차로 동작하는 데이터베이스를 동종 DDB(Homogeneous DDB)라고 합니다. 반면, 사이트마다 운영체제·하드웨어·애플리케이션 절차가 서로 다른 경우를 이종 DDB(Heterogeneous DDB)라고 부릅니다.

3. 개인 데이터베이스(Personal Database)

개인 데이터베이스는 개인용 컴퓨터에 데이터를 수집·저장하는 방식으로, 규모가 작고 관리가 쉽습니다. 일반적으로 조직 내 동일한 부서에서 데이터를 사용하며, 소수의 인원만 접근합니다.

4. 최종 사용자 데이터베이스(End User Database)

최종 사용자는 보통 여러 단계에서 이루어지는 트랜잭션이나 연산 과정에는 관심이 없으며, 소프트웨어나 애플리케이션 같은 결과물만 인식합니다. 따라서 이 데이터베이스는 최종 사용자를 위해 특별히 설계된 공유 데이터베이스입니다. 예를 들어 각 레벨의 관리자들이 사용하며, 전체 정보의 요약본이 이곳에 수집됩니다.

5. 상용 데이터베이스(Commercial Database)

상용 데이터베이스는 대규모 데이터베이스의 유료 버전으로, 정보에 대한 도움이 필요한 사용자들을 위해 독특하게 설계되었습니다. 특정 주제에 특화되어 있어 개인이 감당하기 어려운 방대한 정보를 담고 있으며, 상용 링크를 통해서만 접근할 수 있습니다.

6. NoSQL 데이터베이스

NoSQL 데이터베이스는 대규모 분산 데이터 세트에 사용됩니다. 관계형 데이터베이스가 효과적으로 처리하기 어려운 빅데이터 성능 문제를 NoSQL 데이터베이스가 손쉽게 관리할 수 있습니다. 클라우드의 여러 가상 서버에 저장될 수 있는 대규모 비정형 데이터를 분석하는 데 매우 효율적입니다.

7. 운영 데이터베이스(Operational Database)

운영 데이터베이스에는 기업 운영과 관련된 정보가 저장됩니다. 마케팅, 직원 관계, 고객 서비스 등 기능 부서들이 이런 유형의 데이터베이스를 필요로 합니다.

8. 관계형 데이터베이스(Relational Database)

관계형 데이터베이스는 데이터가 미리 정의된 카테고리에 맞춰 배치되는 테이블 집합으로 구성됩니다. 테이블은 행(row)과 열(column)로 이루어져 있으며, 열은 특정 카테고리의 데이터 항목을 담고 행은 해당 카테고리에 따라 정의된 데이터의 실제 인스턴스를 포함합니다. SQL(Structured Query Language)은 관계형 데이터베이스의 표준 사용자 및 애플리케이션 프로그램 인터페이스입니다.

테이블 위에서 다양한 간단한 연산을 수행할 수 있어 데이터베이스 확장이 용이하고, 공통 관계가 있는 두 데이터베이스를 결합하거나 기존 애플리케이션을 수정하기도 쉽습니다.

9. 클라우드 데이터베이스(Cloud Database)

오늘날 데이터는 가상 환경이라고도 불리는 클라우드, 즉 하이브리드 클라우드, 퍼블릭 클라우드 또는 프라이빗 클라우드에 저장되는 추세입니다. 클라우드 데이터베이스는 이러한 가상화 환경에 최적화되거나 전용으로 구축된 데이터베이스를 의미합니다.

클라우드 데이터베이스의 장점은 다음과 같습니다.

  • 사용자 단위로 스토리지 용량과 대역폭에 대해 비용을 지불할 수 있음
  • 요청에 따른 유연한 확장성(Scalability) 제공
  • 높은 가용성(High Availability) 보장

또한 클라우드 데이터베이스는 SaaS(Software-as-a-Service) 방식으로 비즈니스 애플리케이션을 지원할 수 있는 기회를 기업에 제공합니다.

10. 객체 지향 데이터베이스(Object-Oriented Database)

객체 지향 데이터베이스는 객체 지향 프로그래밍과 관계형 데이터베이스의 결합체입니다. C++, Java 같은 객체 지향 언어로 생성된 다양한 항목들은 관계형 데이터베이스에도 저장할 수 있지만, 객체 지향 데이터베이스가 이러한 항목에 훨씬 더 적합합니다.

객체 지향 데이터베이스는 동작(action)이 아닌 객체(object)를 중심으로, 논리(logic)가 아닌 데이터(data)를 중심으로 구성됩니다. 예를 들어 관계형 데이터베이스에서 멀티미디어 레코드는 정의 가능한 데이터 객체가 될 수 있으며, 이는 단순한 영숫자 값과는 대조적입니다.

11. 그래프 데이터베이스(Graph Database)

그래프는 노드(node)와 엣지(edge)의 집합으로, 각 노드는 하나의 엔터티(entity)를 나타내고 각 엣지는 엔터티 간의 관계를 설명합니다. 그래프 데이터베이스는 그래프 이론을 활용해 관계를 저장·매핑·쿼리하는 NoSQL 데이터베이스의 한 유형입니다.

그래프 데이터베이스는 주로 상호 연결성 분석에 사용됩니다. 예를 들어 기업은 그래프 데이터베이스를 활용해 소셜 미디어에서 고객 관련 데이터를 마이닝할 수 있습니다.

마치며

데이터베이스는 저장 방식, 접근 방법, 데이터 구조에 따라 크게 11가지 유형으로 나눌 수 있습니다. 프로젝트의 규모, 데이터의 성격(정형/비정형), 확장성 요구 사항을 고려해 가장 적합한 데이터베이스 유형을 선택하는 것이 성공적인 시스템 구축의 첫걸음입니다.