분산 데이터베이스(Distributed Database)는 그 내용이 여러 위치에 나누어 저장되는 데이터베이스를 의미합니다. 즉, 데이터가 동일한 장소에 있는 여러 시스템에 저장될 수도 있고, 지리적으로 멀리 떨어진 시스템들에 분산되어 저장될 수도 있습니다.
흥미로운 점은, 이렇게 물리적으로 분산되어 있음에도 불구하고 사용자에게는 데이터베이스가 하나의 통합된 시스템처럼 보인다는 것입니다. 다시 말해, 데이터베이스가 여러 곳에 저장되어 있다는 사실은 사용자에게 투명(transparent)하게 처리됩니다.
DDBMS의 구성 요소 개요
분산 데이터베이스 관리 시스템(DDBMS)은 크게 다음과 같은 구성 요소들로 이루어져 있습니다.
- 사용자(Users)
- 전역 스키마(Global Schema)
- 데이터베이스 모듈(Database Modules)
이제 각 구성 요소를 하나씩 자세히 살펴보겠습니다.
1. 사용자(Users)
분산 데이터베이스에는 다양한 사용자들이 접근하여 활용합니다. 이들에게 데이터베이스가 여러 위치에 분산되어 저장되어 있다는 사실은 전혀 드러나지 않습니다. 사용자 입장에서는 마치 하나의 완전한 데이터베이스 시스템을 사용하는 것처럼 느끼며, 데이터의 실제 저장 위치와는 무관하게 일관된 방식으로 데이터에 접근할 수 있습니다. 이러한 투명성 덕분에 사용자는 복잡한 분산 환경을 신경 쓰지 않고 업무에 집중할 수 있습니다.
2. 전역 스키마(Global Schema)
전역 스키마는 데이터베이스 전체의 설계 구조를 보여주는 청사진입니다. 현실에서 데이터베이스는 한 곳에 저장되어 있지 않고 여러 시스템에 걸쳐 분산되어 있기 때문에, 전체 데이터베이스를 논리적으로 이해하려면 이러한 전역적인 관점의 스키마가 반드시 필요합니다. 전역 스키마는 분산되어 있는 모든 데이터 조각들의 관계와 구조를 통합적으로 정의하여, 시스템 전체를 일관성 있게 관리할 수 있는 기반을 제공합니다.
3. 데이터베이스 모듈(Database Modules)
데이터베이스 모듈은 여러 위치에 나누어 저장된 데이터베이스의 각 부분을 의미합니다. 이 모듈들은 분산 데이터베이스의 유형에 따라 특징이 달라집니다.
- 동종(homogeneous) 분산 데이터베이스: 모든 데이터베이스 모듈이 동일한 데이터 모델과 DBMS를 사용합니다.
- 이종(heterogeneous) 분산 데이터베이스: 각 데이터베이스 모듈이 서로 다른 데이터 모델이나 DBMS를 사용할 수 있습니다.
이처럼 DDBMS는 사용자, 전역 스키마, 데이터베이스 모듈이라는 세 가지 핵심 요소가 유기적으로 결합하여, 물리적으로는 분산되어 있지만 논리적으로는 통합된 데이터베이스 환경을 실현합니다.