투명성은 분산 데이터베이스 시스템(DDBMS)의 장점 중 하나인데, DDBMS에서 투명성이란 무엇일까요? 이번 글에서는 DDBMS의 투명성에 대해 소개하고 투명성의 종류를 소개하는 글이 여러분에게 도움이 되기를 바랍니다.
DDBMS의 투명성이란 무엇인가요?
투명성은 사용자에게 DDBMS 배포의 내부 세부 정보를 숨기고 사용자가 배포의 내부 세부 정보를 볼 수 없도록 하는 분산 데이터베이스의 속성입니다.
투명성이 중요한 이유는 사용성입니다. 시스템이 더 투명할수록 사용자에게 가해지는 인지 부하가 줄어듭니다. 즉, 투명성은 시스템의 API를 단순화합니다.
예: DDBMS 디자이너는 테이블을 분할하고 세그먼트를 복사하여 다른 사이트에 저장하도록 선택할 수 있습니다. 그러나 사용자는 이러한 세부 사항을 이해하지 못하기 때문에 중앙 집중식 데이터베이스와 마찬가지로 분산 데이터베이스도 사용하기 쉽다고 생각합니다.
DDBMS의 투명성 유형
DDBMS는 다양한 수준의 투명성을 제공할 수 있으며, 이는 주로 네 가지 주요 투명성 유형으로 나뉩니다.
● 배포 투명성
● 거래 투명성
● 성능 투명성;
● DBMS 투명성.
소개는 다음과 같습니다.
배포 투명성
배포 투명성을 통해 사용자는 데이터베이스를 단일 논리 엔터티로 처리할 수 있습니다. 분산 투명도를 표시하기 위해 BMS가 추가되면 사용자는 데이터가 세부 정보(조각 투명도)인지 데이터 항목의 위치(로컬 투명도)인지 알 필요가 없습니다.
분배 투명성은 다음 수준으로 나눌 수도 있습니다.
1. 조각화 투명성:
조각화는 가장 높은 수준의 배포 투명성입니다. DDBMS가 조각화 투명성을 제공하는 경우 사용자는 데이터가 조각화되었음을 알 필요가 없으므로 데이터베이스 액세스는 전역 스키마를 기반으로 합니다.
사용자는 조각화되지 않은 방식으로 모든 테이블에 액세스할 수 있습니다. 테이블이 분할되어 있고 여러 사이트에 걸쳐 세그먼트 위치가 있다는 정보는 사용자에게 숨겨집니다.
SQL 뷰는 사용자가 원본 테이블이 아닌 테이블 뷰를 보고 있다는 사실을 인식하지 못하는 유사한 접근 방식을 사용합니다.
2. 포지션 투명성:
포지션은 유통 투명성의 중간 수준입니다. 위치 투명성을 통해 사용자는 데이터 위치를 알 필요 없이 사용자 사이트에 로컬로 저장된 것처럼 테이블이나 테이블 조각을 쿼리할 수 있습니다.
테이블이나 조각이 분산 데이터베이스 시스템의 원격 사이트에 저장된다는 사실은 최종 사용자가 완전히 무시해야 합니다. 원격 사이트의 주소와 액세스 메커니즘은 완전히 숨겨져 있습니다.
위치 투명성을 통합하려면 DDBMS는 업데이트되고 정확한 데이터 사전과 데이터 위치 세부 정보가 포함된 DDBMS 카탈로그에 액세스할 수 있어야 합니다.
3. 복제 투명성:
복제 투명성을 통해 사용자로부터 데이터베이스 복제를 숨깁니다. 사용자는 원본 테이블로 모든 테이블에 액세스할 수 있습니다.
사용자가 데이터를 업데이트하면 여러 사이트의 모든 테이블에 업데이트되어 반영됩니다. 이는 사용자에게 숨겨져 있으며 동시성 투명성이라고 합니다. 복사본을 복제하면 사이트에 장애가 발생한 경우 사용자가 장애를 인지하지 못한 채 더 쉽게 쿼리를 계속할 수 있게 되는데, 이를 장애 투명성이라고 합니다.
4. 로컬 매핑 투명성:
배포 투명성이 가장 낮습니다. 로컬 매핑 투명성을 사용하면 사용자는 존재할 수 있는 중복을 고려하여 데이터 항목의 조각 이름과 위치를 지정해야 합니다.
분명히 이것은 사용자에게 첫 번째 쿼리보다 더 복잡하고 시간이 많이 걸리는 쿼리입니다. 이 수준의 tr_sparency를 제공하는 시스템은 최종 사용자가 받아들이지 않을 것입니다.
트랜잭션 투명성
DDBMS 환경의 트랜잭션 투명성은 모든 분산 트랜잭션이 분산 데이터베이스의 무결성과 일관성을 유지하도록 보장합니다. 분산 트랜잭션은 원격 위치에 저장된 데이터에 액세스합니다. 각 트랜잭션은 여러 하위 트랜잭션으로 나누어지며, 각각은 방문해야 하는 사이트에 해당합니다. 하위 트랜잭션은 에이전트로 표시됩니다.
DDBMS는 또한 각 하위 트랜잭션의 원자성을 보장해야 합니다. 조각화, 할당 및 복제 계획은 분산 DBMS의 트랜잭션 투명성을 복잡하게 만듭니다.
성능 투명성
성능 투명성을 위해서는 DDBMS가 중앙 집중식 DBMS처럼 작동해야 합니다. 분산 환경에서 시스템은 네트워크 존재와 같은 분산 아키텍처로 인해 성능 저하를 겪게 됩니다. 또한 성능 투명성을 위해서는 DDBMS가 요청 실행을 위한 가장 비용 효과적인 전략을 결정해야 합니다.
중앙 집중식 DBMS에서 쿼리 프로세서(QP)는 각 데이터 요청을 평가하고 데이터베이스에서 순서가 지정된 작업 순서로 구성된 최적의 실행 전략을 찾아야 합니다. 분산 환경에서 DQP(분산 쿼리 프로세서)는 데이터 요청을 로컬 데이터베이스의 순서가 지정된 작업 순서에 매핑합니다. 조각화, 복사 및 할당 패턴을 고려하면 복잡성이 추가됩니다. DQP는 다음을 결정해야 합니다.
● 액세스할 조각은 무엇입니까?
● 조각이 복사되면 어떤 조각 복사본을 사용해야 합니까?
● 사용 장소.
DQP는 일부 비용 함수에 최적화된 실행 정책을 생성합니다. 일반적으로 분산 요청과 관련된 비용은 다음과 같습니다.
● 디스크의 물리적 데이터에 액세스하는 데 관련된 액세스 시간(I/O) 비용
● 메인 메모리의 데이터 작업을 수행할 때 발생하는 CPU 시간 비용; 네트워크를 통한 데이터 전송과 관련된 통신 비용입니다.
처음 두 가지 요소는 중앙 집중식 시스템에서 고려되는 유일한 요소입니다. 분산 환경에서 DDBMS는 대역폭이 수 킬로바이트/초인 WAN에서 가장 지배적인 요소일 수 있는 통신 비용을 고려해야 합니다. 이 경우 최적화에서는 I/O 및 CPU 비용을 무시할 수 있습니다. 그러나 LAN의 대역폭은 디스크의 대역폭과 비슷하므로 이 경우 최적화는 I/O 및 CPU 비용을 완전히 무시해서는 안 됩니다.
DBMS 투명성. DBMS 투명성은 로컬 DBMS가 다를 수 있으므로 이기종 DDBMS에서만 작동한다는 사실을 숨깁니다. 이는 제공하기 가장 어려운 형태의 투명성 중 하나입니다.
위 내용은 이 글의 전체 내용입니다. 모든 분들의 공부에 도움이 되었으면 좋겠습니다. 더 흥미로운 내용을 보려면 PHP 중국어 웹사이트의 관련 튜토리얼 열을 주의 깊게 살펴보세요! ! !
위 내용은 DDBMS의 투명성 유형은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!