분산 DBMS-데이터베이스 환경

자습서의이 부분에서는 분산 데이터베이스 환경을 설계하는 데 도움이되는 다양한 측면을 연구합니다. 이 장은 분산 데이터베이스 유형으로 시작합니다. 분산 데이터베이스는 추가로 구분 된 동종 데이터베이스와 이기종 데이터베이스로 분류 할 수 있습니다. 이 장의 다음 섹션에서는 클라이언트 – 서버, 피어 – 투 – 피어 및 다중 – DBMS라는 분산 아키텍처에 대해 설명합니다. 마지막으로 복제 및 조각화와 같은 다양한 디자인 대안이 소개됩니다.

분산 데이터베이스의 유형

분산 데이터베이스는 다음 그림과 같이 더 세분화되어있는 동종 및 이기종 분산 데이터베이스 환경으로 광범위하게 분류 할 수 있습니다.

동종 분산 데이터베이스

동종 분산 데이터베이스에서 모든 사이트는 동일한 DBMS 및 운영 체제를 사용합니다. 그 속성은-

  • 사이트는 매우 유사한 소프트웨어를 사용합니다.

  • 사이트는 동일한 공급 업체의 동일한 DBMS 또는 DBMS를 사용합니다.

  • 각 사이트는 다른 모든 사이트를 인식하고 다른 사이트와 협력하여 사용자 요청을 처리합니다.

  • 데이터베이스는 단일 데이터베이스 인 것처럼 단일 인터페이스를 통해 액세스됩니다.

동종 분산 데이터베이스의 유형

동종 분산 데이터베이스에는 두 가지 유형이 있습니다.

  • Autonomous− 각 데이터베이스는 독립적으로 작동하며 자체적으로 작동합니다. 제어 애플리케이션에 의해 통합되며 메시지 전달을 사용하여 데이터 업데이트를 공유합니다.

  • Non-autonomous − 데이터는 동종 노드에 분산되고 중앙 또는 마스터 DBMS가 사이트 전체의 데이터 업데이트를 조정합니다.

이기종 분산 데이터베이스

이기종 분산 데이터베이스에서 사이트마다 운영 체제, DBMS 제품 및 데이터 모델이 다릅니다. 그 속성은-

  • 사이트마다 다른 스키마와 소프트웨어를 사용합니다.

  • 시스템은 관계형, 네트워크, 계층 적 또는 객체 지향과 같은 다양한 DBMS로 구성 될 수 있습니다.

  • 스키마가 다르기 때문에 쿼리 처리가 복잡합니다.

  • 서로 다른 소프트웨어로 인해 트랜잭션 처리가 복잡합니다.

  • 사이트는 다른 사이트를 인식하지 못할 수 있으므로 사용자 요청을 처리하는 데 제한적인 협력이 있습니다.

이기종 분산 데이터베이스의 유형

  • Federated − 이기종 데이터베이스 시스템은 본질적으로 독립적이며 함께 통합되어 단일 데이터베이스 시스템으로 작동합니다.

  • Un-federated − 데이터베이스 시스템은 데이터베이스에 액세스하는 중앙 조정 모듈을 사용합니다.

분산 DBMS 아키텍처

DDBMS 아키텍처는 일반적으로 세 가지 매개 변수에 따라 개발됩니다.

  • Distribution − 여러 사이트에 걸친 데이터의 물리적 분포를 나타냅니다.

  • Autonomy − 데이터베이스 시스템의 제어 분포와 각 구성 DBMS가 독립적으로 운영 할 수있는 정도를 나타냅니다.

  • Heterogeneity − 데이터 모델, 시스템 구성 요소 및 데이터베이스의 균일 성 또는 비 유사성을 나타냅니다.

건축 모델

일반적인 아키텍처 모델 중 일부는 다음과 같습니다.

  • 클라이언트-DDBMS 용 서버 아키텍처
  • DDBMS를위한 피어 투 피어 아키텍처
  • 다중-DBMS 아키텍처

클라이언트-DDBMS 용 서버 아키텍처

이것은 기능이 서버와 클라이언트로 구분되는 2 단계 아키텍처입니다. 서버 기능은 주로 데이터 관리, 쿼리 처리, 최적화 및 트랜잭션 관리를 포함합니다. 클라이언트 기능에는 주로 사용자 인터페이스가 포함됩니다. 그러나 일관성 검사 및 트랜잭션 관리와 같은 일부 기능이 있습니다.

두 개의 다른 클라이언트-서버 아키텍처는-

  • 단일 서버 다중 클라이언트
  • 다중 서버 다중 클라이언트 (다음 다이어그램에 표시됨)

DDBMS를위한 피어 투 피어 아키텍처

이러한 시스템에서 각 피어는 데이터베이스 서비스를 제공하기 위해 클라이언트와 서버로 작동합니다. 동료는 다른 동료와 자원을 공유하고 활동을 조정합니다.

이 아키텍처에는 일반적으로 4 가지 수준의 스키마가 있습니다.

  • Global Conceptual Schema − 데이터의 글로벌 논리적보기를 나타냅니다.

  • Local Conceptual Schema − 각 사이트의 논리적 데이터 구성을 나타냅니다.

  • Local Internal Schema − 각 사이트의 물리적 데이터 구성을 나타냅니다.

  • External Schema − 데이터에 대한 사용자보기를 나타냅니다.

다중-DBMS 아키텍처

이것은 둘 이상의 자율 데이터베이스 시스템 모음으로 구성된 통합 데이터베이스 시스템입니다.

다중 DBMS는 6 단계의 스키마를 통해 표현할 수 있습니다.

  • Multi-database View Level − 통합 분산 데이터베이스의 하위 집합으로 구성된 여러 사용자보기를 나타냅니다.

  • Multi-database Conceptual Level − 글로벌 논리적 다중 데이터베이스 구조 정의로 구성된 통합 다중 데이터베이스를 설명합니다.

  • Multi-database Internal Level − 여러 사이트 및 다중 데이터베이스에서 로컬 데이터 매핑에 걸친 데이터 분포를 설명합니다.

  • Local database View Level − 로컬 데이터의 공개보기를 나타냅니다.

  • Local database Conceptual Level − 각 사이트의 로컬 데이터 구성을 나타냅니다.

  • Local database Internal Level − 각 사이트의 물리적 데이터 구성을 나타냅니다.

다중 DBMS에 대한 두 가지 설계 대안이 있습니다.

  • 다중 데이터베이스 개념 수준의 모델.
  • 다중 데이터베이스 개념 수준이없는 모델입니다.

디자인 대안

DDBMS의 테이블에 대한 배포 설계 대안은 다음과 같습니다.

  • 복제되지 않고 단편화되지 않음
  • 완전히 복제 됨
  • 부분적으로 복제 됨
  • Fragmented
  • Mixed

복제되지 않음 및 조각화되지 않음

이 디자인 대안에서는 다른 테이블이 다른 사이트에 배치됩니다. 데이터는 가장 많이 사용되는 사이트와 매우 가깝도록 배치됩니다. 서로 다른 사이트에있는 테이블의 정보를 조인하는 데 필요한 쿼리 비율이 낮은 데이터베이스 시스템에 가장 적합합니다. 적절한 배포 전략이 채택되면이 설계 대안은 데이터 처리 중 통신 비용을 줄이는 데 도움이됩니다.

완전히 복제 됨

이 디자인 대안에서는 각 사이트에 모든 데이터베이스 테이블의 복사본 하나가 저장됩니다. 각 사이트에는 전체 데이터베이스의 자체 복사본이 있기 때문에 쿼리는 매우 빠르며 통신 비용이 거의 들지 않습니다. 반대로 데이터의 대규모 중복은 업데이트 작업에 막대한 비용이 필요합니다. 따라서 이것은 데이터베이스 업데이트 수가 적은 반면 많은 쿼리를 처리해야하는 시스템에 적합합니다.

부분적으로 복제 됨

테이블의 사본 또는 테이블의 일부는 다른 사이트에 저장됩니다. 테이블의 배포는 액세스 빈도에 따라 수행됩니다. 이것은 테이블에 액세스하는 빈도가 사이트마다 상당히 다르다는 사실을 고려합니다. 테이블 (또는 부분)의 복사본 수는 액세스 쿼리가 실행되는 빈도와 액세스 쿼리를 생성하는 사이트에 따라 다릅니다.

조각난

이 디자인에서 테이블은 조각 또는 파티션이라고하는 두 개 이상의 조각으로 나뉘며 각 조각은 서로 다른 사이트에 저장 될 수 있습니다. 이는 테이블에 저장된 모든 데이터가 주어진 사이트에서 필요한 경우가 드물다는 사실을 고려합니다. 또한 조각화는 병렬 처리를 증가시키고 더 나은 재해 복구를 제공합니다. 여기서 시스템에는 각 조각의 복사본이 하나만 있습니다. 즉, 중복 데이터가 없습니다.

세 가지 단편화 기술은 다음과 같습니다.

  • 수직 분열
  • 수평 적 조각화
  • 하이브리드 단편화

혼합 분포

이것은 단편화와 부분 복제의 조합입니다. 여기서 테이블은 처음에 임의의 형태 (수평 또는 수직)로 조각난 다음 조각에 액세스하는 빈도에 따라 이러한 조각이 여러 사이트에 부분적으로 복제됩니다.