글로벌 시리얼화
Global serializability![]() |
데이터베이스, 트랜잭션 처리(트랜잭션 관리) 및 기타 트랜잭션 분산 응용 프로그램의 동시 제어에서 글로벌 직렬화(또는 모듈식 직렬화)는 트랜잭션의 글로벌 일정 속성입니다.글로벌 스케줄이란 멀티데이터베이스 환경(페더레이션 데이터베이스 등)에서 모든 개별 데이터베이스(및 기타 트랜잭션 오브젝트) 스케줄의 통일된 스케줄입니다.글로벌 시리얼라이제빌리티에 준거하고 있다는 것은 글로벌 스케줄이 시리얼화 가능하며 시리얼라이제빌리티 속성이 있으며 각 컴포넌트 데이터베이스(모듈)에도 시리얼화 가능한 스케줄이 있다는 것을 의미합니다.즉, 시리얼 가능한 컴포넌트 집합은 시스템 전체의 시리얼라이제빌리티를 제공하지만 일반적으로는 올바르지 않습니다.멀티데이터베이스 시스템의 데이터베이스 전체에서 정확성이 요구되기 때문에 글로벌 동시성 제어(또는 모듈러 동시성 제어)의 주요 목표는 글로벌 시리얼라이제이션입니다.인터넷, 클라우드 컴퓨팅, 그리드 컴퓨팅, 소형 휴대용 고성능 컴퓨팅 디바이스(스마트폰 등)의 확산과 더불어 분산된 트랜잭션과 그 간의 정확성을 보장하기 위한 시스템 관리의 정교화, 원자 분산 트랜잭션의 필요성 및 효과적인 글로벌 시리얼화 기술의 필요성에 따라nsactional 어플리케이션이 증가하고 있는 것 같습니다.
일반적으로 통신 네트워크에 분산되어 있는 페더레이션 데이터베이스 시스템 또는 기타 느슨하게 정의된 멀티데이터베이스 시스템에서 트랜잭션은 여러 데이터베이스(및 분산될 수 있음)에 걸쳐 있습니다.데이터베이스마다 다른 유형의 동시성 제어를 사용할 수 있는 이러한 시스템에서 글로벌시리얼라이제빌리티를 적용하는 것은 문제가 있습니다.단일 데이터베이스의 모든 로컬 일정을 직렬화할 수 있더라도 시스템 전체의 글로벌 일정을 직렬화할 수 있는 것은 아닙니다.글로벌하게 경합 시리얼라이저빌리티에 도달하기 위해 데이터베이스 간에 경합 정보를 대량으로 교환하는 것은 주로 컴퓨터와 통신 지연 때문에 허용할 수 없는 퍼포먼스로 이어질 수 있습니다.여러 유형의 동시성 제어에 대해 글로벌 연속성을 효과적으로 달성하는 것은 몇 년 전부터 진행되어 왔습니다.DEC(Digital Equipment Corporation)의 Yoav Raz가 1991년에 도입한 시리얼라이제빌리티 기술인 커밋 오더(또는 커밋 오더)는 데이터베이스 시스템 및 기타 트랜잭션 오브젝트의 컬렉션 전체에 걸친 글로벌(컨플릭트) 시리얼라이제빌리티를 위한 효과적인 범용 솔루션을 제공합니다.동시 컨텐시성이 다를 수 있습니다.ol 메커니즘CO는 충돌 정보의 배포가 필요하지 않고 데이터베이스 간에 더 이상의 통신 없이 이미 필요한 (수정되지 않은) 원자 약속 프로토콜 메시지를 활용합니다.또한 낙관적인(비블로킹) 구현도 가능합니다.CO는 강력한 2상 잠금(SS2PL)을 일반화합니다.SS2PL은 2상 커밋(2PC) 프로토콜과 함께 (SS2PL 기반) 데이터베이스 시스템 전체에서 글로벌 시리얼라이제빌리티를 실현하기 위한 사실상의 표준입니다.그 결과 CO 준거 데이터베이스 시스템(다른 동시성 제어 유형 포함)은 글로벌시리얼라이제이션용으로 기존의 SS2PL 기반 솔루션에 투과적으로 가입할 수 있습니다.원자 트랜잭션을 사용하여 정확성을 위해 글로벌시리얼라이제빌리티가 필요한 다른 모든 다중(트랜잭션) 객체 시스템에도 동일하게 적용됩니다(위의 예 참조). 오늘날 이러한 요구는 원자 트랜잭션의 발생원인 데이터베이스 시스템보다 작지 않습니다).
글로벌 시리얼라이저빌리티를 실현하는 CO의 이점
- 트랜잭션의 작업 일정을 변경하거나 이를 차단하거나 새로운 작업을 추가하지 않고 모든 동시성 제어 메커니즘과 원활하고 낮은 오버헤드를 통합합니다.
- 이종성: 글로벌한 시리얼라이제빌리티는, 복수의 트랜잭션 오브젝트(데이터베이스 관리 시스템등)에 걸쳐, 다른 (임의의) 동시성 제어 메카니즘에 의해서, 메카니즘의 조작을 방해하지 않고 실현됩니다.
- 모듈러형:트랜잭션 개체를 투명하게 추가하거나 제거할 수 있습니다.
- 트랜잭션 객체의 자율성:충돌이나 이에 상응하는 정보 배포가 필요하지 않습니다(예: 로컬 우선 순위 관계, 잠금, 타임스탬프 또는 티켓, 다른 개체의 정보가 필요하지 않음).
- 확장성:'통상적인' 글로벌 트랜잭션에서는 컴퓨터 네트워크 크기와 트랜잭션 오브젝트 수가 퍼포먼스에 영향을 주지 않고 무제한으로 증가할 수 있습니다.
- 자동 글로벌 교착 상태 해결.
처음 두 가지를 제외한 이러한 모든 측면은 또한 CO의 (제한, 차단) 특수한 경우이며 CO의 많은 품질을 상속하는 인기 있는 SS2PL에 의해 소유됩니다.
글로벌 시리얼화 문제
문제문
위에서 설명한 어려움은 다음과 같은 문제로 해석됩니다.
- 복수의 Autonomous Database 시스템의 이종 분산 환경에서 글로벌시리얼라이제빌리티(글로벌컨플릭트시리얼라이제빌리티)를 적용하는 효율적인(하이 퍼포먼스 및 폴트 톨러런스) 방법을 찾습니다.데이터베이스 시스템은 다른 동시성 제어 방법을 사용할 수 있습니다.로컬 트랜잭션(단일 데이터베이스 시스템에 포함) 또는 글로벌 트랜잭션(2개 이상의 데이터베이스 시스템에 포함) 중 하나의 조작에 제한을 가해서는 안 됩니다.
견적서
글로벌 시리얼라이저빌리티 문제에 대한 적절한 솔루션이 없기 때문에 연구자들은 멀티데이터베이스 환경에서의 정확성 기준으로서 시리얼라이저빌리티의 대안을 모색하게 되었습니다(아래의 「글로벌 시리얼라이저빌리티의 완화」를 참조).이 문제는 어렵고 개방적인 것으로 특징지어지고 있습니다.다음 두 인용문은 1991년 말까지 이에 대한 사고방식을 나타내며, 다른 수많은 기사에서 이와 유사한 인용문을 인용하고 있다.
- 로컬 트랜잭션과 글로벌 트랜잭션에 대한 지식이 없으면 효율적인 글로벌 동시 제어가 실현될 가능성은 매우 낮습니다.다른 컴포넌트 DBMS[데이터베이스 관리 시스템]와 FDBMS[연방 데이터베이스 관리 시스템]가 다른 동시성 메커니즘을 지원하는 경우 추가적인 문제가 발생합니다.성능(동시성 및/또는 응답 시간)과 가용성을 희생하지 않고 경쟁의 연속성을 제공하는 이론적으로 우아한 솔루션은 존재하지 [1]않을 것입니다."
1991년 5월에 공개된 커밋 오더([2][3]아래 참조)는 다른 동시성 제어 메커니즘을 가진 데이터베이스 시스템 전체의 글로벌시리얼라이제빌리티 문제에 대한 실용적이고 이론적인[6] 관점에서[4][5] 효율적이고 우아한 일반적인 솔루션을 제공합니다.가용성에 부정적인 영향을 미치지 않고 충돌 직렬화를 제공하며, 사실상의 글로벌 직렬화 표준인 SS2PL(Strong Strict Two-phase Locking)보다 나쁜 성능도 없습니다.여기에는 로컬 트랜잭션과 글로벌 트랜잭션에 대한 지식이 모두 필요합니다.
- "이종의 분산형 데이터베이스 시스템에서의 트랜잭션 관리는 어려운 문제입니다.주요 문제는 각 로컬 데이터베이스 관리 시스템이 서로 다른 유형의 동시성 제어 방식을 사용할 수 있다는 것입니다.각 로컬 데이터베이스의 로컬 자율성을 유지하고 로컬 트랜잭션과 글로벌 트랜잭션을 동시에 실행하려면 이를 통합하는 것은 어려운 문제입니다.한 가지 간단한 해결책은 글로벌 트랜잭션을 검색 전용 액세스로 제한하는 것입니다.그러나 글로벌 트랜잭션과 로컬 트랜잭션이 데이터 읽기 및 쓰기를 모두 허용하는 일반적인 경우 신뢰할 수 있는 트랜잭션 관리 문제는 [7]아직 해결되지 않았습니다.
커밋 오더링 솔루션은 자율 데이터베이스 관리 시스템과 다른 동시성 제어 메커니즘이 효과적으로 통합되어 있습니다.로컬 트랜잭션과 글로벌 트랜잭션은 로컬 트랜잭션과 글로벌 트랜잭션 모두에서 읽기 또는 쓰기 작업을 제한하지 않고 시스템의 자율성을 해치지 않고 병렬로 실행됩니다.
1991년 일반 솔루션을 주문하는 커밋이 공개된 이후에도 이 문제는 여전히 많은 사람들이 해결할 수 없는 문제로 생각하고 있습니다.
- 「자율 컴포넌트 시스템을 갖춘 다단계 시스템의 트랜잭션 모델을 제시해, 이종 3 레벨의 트랜잭션을 작성했습니다.그러한 시스템에서는 완전한 ACID 특성과 완전한 지방 자치권을 보장하는 요건이 조화될 수 없다는 것이 명백해졌다.."[8]
위의 인용문은 1997년 글로벌시리얼라이제빌리티 솔루션을 제안하고 있는 기사(아래 글로벌시리얼라이제빌리티 완화 참조)와 커밋 오더(CO) 기사를 참조한 것입니다.CO솔루션은 완전한 ACID 속성과 완전한 지방자치를 효과적으로 지원하며, 위의 문제 기술 섹션에서 제시된 기타 요건을 충족하고 있으며, 오해를 받고 있는 것 같습니다.
1998년 기사의 다음 인용문에서도 같은 생각을 볼 수 있다.
- 「시리얼라이제빌리티의 개념은, 데이타베이스 시스템에서 종래에 받아들여져 온 정확성의 기준이 되어 왔습니다.단, Multidatabase System(MDBS; 멀티데이터베이스 시스템)에서는 글로벌시리얼라이제빌리티를 확보하는 것은 어려운 작업입니다.이는 참여하는 로컬 데이터베이스 관리 시스템(DBMS)이 사용하는 동시성 제어 프로토콜의 이질성과 로컬 DBMS의 자율성을 유지하려는 욕구로 인해 발생하는 어려움으로, 일반적으로 글로벌 시리얼라이저빌리티 문제에 대한 해결은 동시성이 낮은 실행으로 귀결된다.또, 시리얼라이저빌리티를 완화하는 것으로, 데이터의 [9]일관성이 저하하는 일이 있습니다」
또한 위의 인용된 기사는 CO 작업을 언급하면서 완화된 글로벌 시리얼화 솔루션을 제안합니다.글로벌 시리얼라이저빌리티를 위한 CO솔루션은 상당한 동시성 감소 없이 (그리고 일반적으로 경미한 경우) 서로 다른 동시성 제어 프로토콜 사이를 연결하고 로컬 DBMS의 자율성을 유지합니다.또한 CO는 오해받고 있는 것이 분명합니다.이러한 오해는 2010년까지 같은 저자의 교과서에서도 계속되고 있습니다.이 교과서에서는 마찬가지로 완화된 글로벌 직렬화 기법인 Two level serializability가 강조 및 상세하게 기술되어 있으며 CO는 [10]전혀 언급되어 있지 않습니다.
한편, CO에 관한 다음의 인용은 2009년의 [11]책에 기재되어 있다.
- 「모든 동시 제어 알고리즘이 잠금을 사용하는 것은 아닙니다.기타 3가지 기술은 타임스탬프 순서 지정, 시리얼화 그래프 테스트 및 커밋 순서 지정입니다.타임스탬프 순서를 지정하면 각 트랜잭션에 타임스탬프가 할당되어 충돌하는 작업이 타임스탬프 순서로 실행됩니다.시리얼라이제이션그래프 테스트는 경합을 추적하고 시리얼라이제이션그래프가 비순환적인 것을 확인합니다.커밋 순서를 지정하면 서로 모순되는 조작이 트랜잭션이 커밋되는 상대적인 순서와 일치할 수 있기 때문에 다양한 동시성 제어 메커니즘을 사용하여 시스템의 상호 운용성을 실현할 수 있습니다."
- 코멘트:
- 일반적인 잠금 기반 알고리즘 SS2PL 이외에도 CO 바리안트이며 잠금을 사용하는 CO 바리안트도 존재합니다(아래 참조).단, 일반 또는 "순수한" CO는 잠금을 사용하지 않습니다.
- CO 메커니즘은 이미 발생한 경합에 따라 커밋이벤트를 정렬하기 때문에 CO를 "커밋 순서는 트랜잭션이 커밋되는 상대적인 순서가 각각의 경합하는 조작 순서와 일치함을 보증합니다."라고 기술하는 것이 좋습니다.
CO 솔루션의 특성과 특성은 다음과 같습니다.
제안 솔루션
글로벌 시리얼라이저빌리티 문제에 대해서는, 몇개의 솔루션(일부)이 제안되고 있습니다.그 중:
- 전역 충돌 그래프(직렬성 그래프, 우선 순위 그래프) 확인
- 분산형 2상 잠금(분산형 2PL)
- 분산 타임스탬프 순서 지정
- 티켓(로컬의 총 오더를 정의하고 글로벌한 트랜잭션의 부분 순서를 결정하기 위해 전파되는 로컬 논리 타임스탬프)
- 커밋 순서
테크놀로지의 관점
전지구적 연속성 문제는 1980년대 후반과 1990년대 초반에 상당히 집중적으로 연구되어 왔다.CO(commitment ordering)는 문제에 대한 효과적이고 일반적인 해결책, 문제의 통찰력, 그리고 1980년대부터 (2PC와 함께) 실질적으로 거의 독점적으로 사용되어 온 강력한 2상 잠금(SS2PL)의 가능한 일반화에 대한 이해를 제공합니다.데이터베이스 전체에 적용 가능.CO의 중요한 측면 이점은 자동적인 글로벌 교착 해결이다(이것은 분산형 SS2PL에도 적용된다). SS2PL의 중요한 연구 주제였지만 자동 해결은 오늘(2009년)까지 간과되어 왔다.그 당시에는 많은 상용 데이터베이스 시스템 유형이 존재했고, 많은 비관계형 데이터베이스와 데이터베이스는 상대적으로 매우 작았다.다중 데이터베이스 시스템은 데이터베이스 시스템의 상호 운용성에 의해 데이터베이스 확장성의 열쇠로 간주되어 글로벌 시리얼라이제빌리티가 시급했습니다.그 후 컴퓨팅 성능, 스토리지 및 통신 네트워크가 크게 발전함에 따라 중앙 집중식 데이터베이스의 크기, 트랜잭션 속도 및 데이터베이스 기능에 대한 원격 액세스가 대폭 증가할 뿐만 아니라 중앙 집중식 컴퓨팅과 분산형 컴퓨팅 간의 경계가 빠르고 짧은 지연 시간 동안 모호해졌습니다.네트워크(Infiniband 등).데이터베이스 벤더의 분산 솔루션(주로 2PC 기반의 일반적인 SS2PL, 서로 다른 벤더의 (SS2PL 기반) 데이터베이스 간의 상호 운용성을 가능하게 하는 사실상의 표준), 워크플로우 관리 시스템 및 데이터베이스 복제본의 진보와 함께대부분의 경우 (위의 문제를 해결하기 위해) 동시성 제어가 다른 데이터베이스에 다중 데이터베이스 원자 분산 트랜잭션 없이 만족스럽고 때로는 더 나은 정보 기술 솔루션을 제공했습니다.그 결과, 동시성 제어 유형이 다른 데이터베이스에 분산된 고성능 원자 트랜잭션에 대해 그 기간 동안 존재했던 긴박감이 감소했습니다.그러나 신뢰성의 기본 요소로서의 동시 분산 원자 트랜잭션의 필요성은 데이터베이스 시스템을 넘어 분산 시스템에도 존재하며, 따라서 이러한 트랜잭션 시스템의 기본 정확성 기준으로서의 글로벌 직렬화의 필요성도 존재한다(직렬성에서의 분산 직렬화도 참조).인터넷, 클라우드 컴퓨팅, 그리드 컴퓨팅, 소형, 휴대용, 고성능 컴퓨팅 디바이스(스마트폰 등) 및 고도의 시스템 관리의 확산에 따라 분산 트랜잭션 애플리케이션 내 및 애플리케이션 간의 정확성을 확보하기 위한 효과적인 글로벌 시리얼라이제빌리티 기술의 필요성이 높아지고 있습니다.따라서 i의 필요성도 높아지고 있습니다.n 커밋 순서(데이터베이스의 특수한 케이스 SS2PL에 널리 사용되는 것을 포함한다.단, SS2PL은 다른 많은 트랜잭션오브젝트의 요건을 충족하지 않는다).
커밋 주문 솔루션
![]() |
![]() |
기여도 ordering[2][3](또는 주문하고, 카이 트리아 오닐을 가하다.) 있는 유일한 고성능, 고장 허용, 갈등 직렬화 성질 조기 해결책이 되어 제안된로 완전히 분산( 어떠한 중심 컴퓨팅 구성 요소 또는 data-structure가 필요하다), 일반적인 메커니즘이 될 수 있는 결합 완전하게 어떤 지역(데이터베이스로)동시 실행 제어.가공의 병기nism(기술 요약 참조).스케줄의 CO 속성은 자율 데이터베이스의 글로벌시리얼라이제이션에 필요한 조건이기 때문에(동시성 제어의 맥락에서), 자율 데이터베이스에 유일한 범용 솔루션을 제공합니다(즉, 자율 데이터베이스가 CO를 준수하지 않으면 글로벌시리얼라이제이션이 위반될 수 있습니다).단순히 운이 좋은 것처럼 보이는 CO 솔루션에는 다음과 같은 많은 매력적인 특성이 있습니다.
- 는 트랜잭션의 조작을 방해하지 않습니다.특히 로컬 또는 글로벌트랜잭션의 데이터 액세스 조작(읽기 또는 쓰기)을 블록, 제한, 지연하지 않습니다(따라서 추가 중단이 발생하지 않습니다).따라서 동시성 제어 메커니즘과의 심리스한 통합을 가능하게 합니다.
- 는, 최적 실장(즉, 데이터 액세스 블록이 아닌 비패킷)을 가능하게 합니다.
- 이종성 허용: 글로벌시리얼라이제이션은 다른 (임의의) 동시성 제어 메커니즘을 사용하여 여러 트랜잭션오브젝트에 걸쳐 메커니즘의 조작을 방해하지 않고 실현됩니다.
- 모듈화를 가능하게 합니다.트랜잭션 개체를 투명하게 추가하거나 제거할 수 있습니다.
- 그럼 완전한 ACID 트랜잭션을 지원할 수 있습니다.
- 는 각 데이터베이스의 자율성을 유지하며 동시성 제어 정보 전달(로컬 우선순위 관계, 잠금, 타임스탬프, 티켓 등)을 필요로 하지 않습니다.
- 트랜잭션에 대한 지식은 필요 없습니다.
- 는 이미 필요한 수정되지 않은 원자 커밋 프로토콜 메시지만 사용하기 때문에 통신 오버헤드가 필요하지 않습니다(모든 프로토콜, 무장애 원자 커밋 프로토콜 및 데이터베이스 시스템을 사용하여 CO 솔루션을 무장애 상태로 만듭니다).
- 는 잠금으로 인한 글로벌 교착 상태를 자동으로 해결합니다.
- 각 글로벌 트랜잭션은 일반적으로 비교적 적은 수의 데이터베이스와 네트워크 노드에 한정되기 때문에 거의 성능에 부정적인 영향을 미치지 않고 컴퓨터 네트워크 크기와 데이터베이스 수에 따라 효율적으로 확장됩니다.
- 에서는 추가적인 인위적인 트랜잭션액세스 조작(예를 들어 "take timestamp" 또는 "take ticket")이 필요하지 않습니다.이는 일반적으로 동시성을 감소시키는 추가적인 인위적인 경합을 초래합니다.
- 낮은 오버헤드를 필요로 합니다.
CO 솔루션에 의해 발생하는 유일한 오버헤드는 로컬에서 경합을 검출하는 것(이미 알려진 serializability 메커니즘에 의해 비관적이든 낙관적이든)과 로컬에서 각 데이터베이스 시스템에 로컬로 로컬 트랜잭션의 커밋과 글로벌 트랜잭션의 원자적 커밋을 모두 주문하는 것입니다.이러한 오버헤드는 낮다.CO의 순효과는 커밋이벤트의 지연일 가능성이 있습니다(단, SS2PL보다 많은 지연은 없고, 평균적으로는 적은 지연입니다).따라서 CO는 멀티데이터베이스 시스템(예: 연합 데이터베이스 시스템)의 글로벌 동시성 제어를 위해 중요합니다.Serializability 이론의 일부인 기본적인 약속 [6]이론은 건전하고 우아하며(또한 "수학적으로 아름다운" 것으로, 충돌, 그래프 주기 및 교착상태의 구조와 역동성을 가리키며, 트랜잭션 분산 애플리케이션에 흥미로운 영향을 미칩니다.
위의 목록에 있는 CO의 모든 품질은 처음 세 가지를 제외하고도 SS2PL에 의해 소유됩니다.SS2PL은 CO의 특수한 경우이지만 차단과 구속입니다.이는 SS2PL이 글로벌 시리얼라이제빌리티를 실현하기 위한 솔루션(실제로 오랜 기간 동안 유일한 솔루션)으로서 인기를 끌고 있는 이유를 부분적으로 설명해 줍니다.그러나 위의 속성 9, 글로벌 교착상태의 자동 해결은 오늘(2009년, CO 간행물 제외)까지 데이터베이스 연구 문헌에서 SS2PL에 대해 주목되지 않았다.이는 그러한 환경에서 투표 데드록 현상과 원자력 약속 프로토콜에 의한 자동 해결이 간과되어 왔기 때문이다.
모든 주요 상용 데이터베이스 시스템을 포함한 대부분의 기존 데이터베이스 시스템은 강력한 SS2PL(Strict Two Phase Locking) 기반이며 이미 CO를 준수하고 있습니다.따라서 멀티베이스 환경에서의 글로벌 시리얼라이제빌리티를 위한 CO 기반 솔루션에는 수정 없이 참여할 수 있습니다(추가 CO 측면이 고려되어야 하는 일반적인 멀티버전화는 제외).원자적인 약속(주로 2단계 커밋, 2PC 사용)을 사용하여 SS2PL 기반 데이터베이스 간에 글로벌 직렬화를 달성하는 것은 수년 동안 사용되어 왔다(즉, 특정 특수한 경우에 동일한 CO 솔루션을 사용). 그러나 이 특별한 경우에 의한 자동적인 글로벌 교착 상태 해결을 인지하는 CO 이전에 알려진 참조는 없다.커밋 프로토콜의 증강 그래프 글로벌 주기 제거 프로세스).사실상 모든 기존 분산 트랜잭션 처리 환경과 지원 제품은 SS2PL에 의존하며 2PC를 제공합니다.사실 SS2PL은 2PC와 함께 사실상의 표준이 되었습니다.이 솔루션은 동종 동시성 제어 방식입니다.최적성이 아닌 (Serializability와 Strictness가 모두 필요한 경우, 엄격한 커밋 오더(SCO) 참조)이지만 대부분의 경우 여전히 매우 효과적입니다.대부분의 경우 컴퓨팅 능력이 최적성에 비해 향상되는 경우가 있습니다.(단, 퍼포먼스를 향상시키기 위해 어플리케이션이 허락할 때마다 완화된 시리얼라이저빌리티를 사용합니다).SS2PL 준거의 다른 데이터베이스 시스템 타입간의 상호 운용을 가능하게 합니다.즉, 동시성 제어 이외의 측면에서의 이질성을 가능하게 합니다.SS2PL은 매우 제약적인 스케줄 속성이며 다른 속성과 결합하면 "인계"됩니다.예를 들어, 임의의 낙관적 속성과 결합하면 결과는 더 이상 낙관적이지 않고 오히려 특징적인 SS2PL이 됩니다.반면 CO는 데이터 액세스 스케줄링 패턴을 전혀 변경하지 않으며 결합된 속성의 특성은 변경되지 않습니다.또한 CO는 글로벌시리얼라이제빌리티를 실현하기 위해 원자적인 커밋(예를 들어 2PC)을 사용하기 때문에 SS2PL과 마찬가지로 CO 준거 데이터베이스 시스템 또는 트랜잭션오브젝트는 환경변경 없이 기존 SS2PL 기반 환경에 투과적으로 가입하여 2PC를 사용하여 글로벌시리얼라이제빌리티를 유지할 수 있습니다.이것에 의해, CO는, 모든 실제의 목적을 위해서, 경합하는 시리얼라이저빌리티 베이스의 데이타베이스 시스템에 대해서, SS2PL의 간단하고 자연스러운 일반화가 가능하게 됩니다.
커밋 오더는 1990년부터 DEC(Digital Equipment Corporation)의 트랜잭션 처리 및 데이터베이스 커뮤니티 내에서 널리 알려져 있습니다.특허[4] 취득 절차로 인해 회사 기밀이 지켜지고 있습니다.CO는 첫 특허 출원 직후인 1991년 5월 강의 및 기술 보고서가 데이터베이스 연구에 배포됨으로써 DEC 외부에서 공개되었다.도입 후 몇 년 동안 많은 데이터베이스 연구자들이 오해해 왔습니다.이는 1997-1998년 커밋 주문 기사를 인용한 위의 인용문을 보면 알 수 있습니다.한편, CO는 트랜잭션 프로세스에 관한 작업과 최근에는[13] 관련 Re:GRIDiT는 그리드[14][15] 컴퓨팅과 클라우드 컴퓨팅의 융합형 트랜잭션 관리를 위한 접근법입니다.자세한 내용은 커밋 오더 히스토리를 참조하십시오.
글로벌한 시리얼라이저빌리티를 완화하는
일부 기술은 완화된 글로벌 직렬화를 위해 개발되었습니다(즉, 글로벌 직렬화를 보장하지는 않습니다. 완화된 직렬화를 참조하십시오).그 중 (각각 여러 개의 출판물이 있음) :
로컬(데이터베이스 시스템에 대한) 완화된 시리얼라이저빌리티 방식은 성능 향상을 위해 시리얼라이저빌리티를 훼손하지만(또한 애플리케이션이 부정확한 결과를 허용할 수 있거나 무결성이 손상되지 않은 경우에만 사용됨) 다양한 완화된 글로벌 시리얼라이저빌리티 방식이 제안되어 글로벌 시리얼라이저빌리티를 저해하는지는 불분명합니다.글로벌 시리얼라이제빌리티를 보증하는 커밋 오더에 비해 퍼포먼스가 향상됩니다.일반적으로 이러한 방법의 선언된 의도는 효과적인 글로벌 직렬화 방법에 대한 성능 향상(발명가에게는 알려지지 않은 것으로 보인다)이 아니라 알려진 효과적인 글로벌 직렬화 방법이 없기 때문에 정확성 기준의 대안이었다.이들 중 일부는 CO가 도입된 지 몇 년이 지난 후에 도입되었으며, 일부는 CO가 효과적인 글로벌 직렬화 솔루션을 제공하는지 모르고 CO와의 성능 비교도 제공하지 않고 일부 애플리케이션(예: 2단계 직렬화 기능)에 대한 글로벌 직렬화 대안으로 CO를 인용하고 있습니다.y). 2레벨 직렬화는 데이터베이스에[10] 관한 2010년판 텍스트북에 주요 글로벌 동시성 제어 방법으로 제시되기도 한다[9](2레벨 직렬화의 원저자 중 2명이 집필했으며, 그 중 한 명인 Avi Silberschatz는 원래 Strong 복구 가능성 기사의 저자이다).이 책에서는 CO에 대해 언급하거나 언급하지 않습니다.이상하게도 CO를 유효한 글로벌시리얼라이제빌리티 솔루션이라고는 생각하지 않습니다.
오늘날 글로벌 시리얼라이저빌리티 완화의 또 다른 일반적인 이유는 인터넷 제품 및 서비스의 가용성 요건입니다.이 요건은 일반적으로 대규모 데이터 복제를 통해 해결됩니다.동일한 데이터베이스 오브젝트에 대한 복제본의 업데이트를 동기화하기 위한 간단한 솔루션은 이러한 모든 업데이트를 단일 원자 분산 트랜잭션에 포함시키는 것입니다.그러나 많은 복제본에서 이러한 트랜잭션은 매우 크고 여러 컴퓨터 및 네트워크에 걸쳐 있으며 일부는 사용할 수 없습니다.따라서 이러한 트랜잭션은 중단으로 끝나 목적을 [17]놓치기 쉽습니다.따라서 Optimistic 복제(Lazy 복제)는 Google, Amazon, Yahoo 등의 많은 제품 및 서비스에서 사용되는 반면, 글로벌 일련화는 최종적으로 일관성을 유지하기 위해 완화되고 손상됩니다.이 경우 완화는 이로 인해 피해가 예상되지 않는 애플리케이션에 대해서만 수행됩니다.
완화된 글로벌 serializability 속성에 의해 정의된 일정 클래스는 글로벌 serializability 클래스를 포함하거나 이 클래스와 비교할 수 없습니다.RGCSR이 아닌 Relaxed Conflict Serializability(RGCSR; 글로벌컨플릭트시리얼라이제이션) 속성과 RGCSR 속성의 구별은 글로벌컨플릭트그래프에서의 글로벌사이클(스팬2개 이상의 데이터베이스)의 처리방법이 보통 다릅니다.RGCSR이 아닌 RCSR 속성에는 글로벌사이클과 로컬사이클의 구별은 없습니다.RCSR에는 RGCSR이 포함되어 있습니다.일반적으로 RGCSR 기술은 로컬 사이클을 배제합니다.즉, 로컬시리얼라이제빌리티를 제공합니다(이는 일반적인 기존의 동시성 제어 방법으로 효과적으로 달성할 수 있습니다).다만, 글로벌 사이클을 모두 배제하는 것은 아닙니다(글로벌시리얼라이제빌리티를 실현하는 것은 아닙니다.
레퍼런스
- ^ Amit Sheth, James Larson(1990): Wayback Machine, ACM Computing Survey, Vol. 22, No 3, 페이지 183-236, 1990년 9월에 아카이브된 "분산, 이종 및 자율 데이터베이스 관리를 위한 페더레이션 데이터베이스 시스템"
- ^ a b Yoav Raz(1992) : "원자력 투입을 사용하는 여러 자율 자원 관리자의 이기종 환경에서의 커밋 주문 또는 시리얼라이제빌리티 보증의 원칙" 2007년 5월 23일 제18회판 웨이백 머신에서 아카이브되었습니다. 초대형 데이터베이스 회의(VLDB), 페이지 292-312, 캐나다 밴쿠버, 1992년 8월 (DEC-TR 841, Digital Equipment Corporation, 1990년 11월)
- ^ a b Yoav Raz(1994년): "커밋 오더에 의한 시리얼화 가능성", 정보처리 레터, 제5권, 제5호, 페이지 257-264, 1994년 9월 (1991년 8월 수령)
- ^ a b Yoav Raz(1990):커미트먼트 오더(commitment ordering)의 의의에 대해서-특허 신청, 각서, 디지털 기기 코퍼레이션, 1990년 11월.
- ^ a b Yoav Raz: 미국 특허 5,504,899 5,504,900 5,701,480
- ^ a b Yoav Raz (2009) :약속 주문 이론 - 요약 구글 사이트 - Yoav Raz 사이트.2011년 2월 1일 취득.
- ^ Abraham Silberschatz, Michael Stonebraker 및 Jeffrey Ulman(1991) : "데이터베이스 시스템: 성과와 기회" 2007-02-11년 ACM의 Wayback Machine, Communications of the ACM, Vol. 34, No. 10, 페이지 110-120, 1991년 10월 아카이브 (120페이지에서 인용)
- ^ Peter Muth(1997): "멀티데이터베이스 시스템에서의 애플리케이션 고유의 트랜잭션 관리", 분산 데이터베이스 및 병렬 데이터베이스, 제5권, 제4호, 페이지 357 - 403, 1997년 10월, ISSN0926-8782(기사 요약에서 인용)
- ^ a b c Sharad Mehrotra, Rajeev Rastogi, Henry Korth, Abraham Silberschatz(1998) : "2단계 시리얼라이제빌리티 보존에 의한 멀티데이터베이스의 일관성 확보", 데이터베이스 시스템에 관한 ACM 트랜잭션(TODS), 1998년 6월 23일, No, 230.
- ^ a b Avi Silberschatz, Henry F Korth, S. Sudarshan(2010):데이터베이스 시스템 개념, 제6판, McGraw-Hill, ISBN 0-07-295886-3
- ^ 필립 A. 번스타인, 에릭 뉴커머 (2009) :트랜잭션 처리 원리, 2010-08-07년 제2판 Wayback Machine에서 아카이브됨, Morgan Kaufmann (Elsevier), 2009년 6월, ISBN 978-1-55860-623-4 (145페이지에서 인용)
- ^ Heiko Schuldt, Hans-Jörg Schek 및 Gustavo Alonso(1999) : "복합 시스템의 트랜잭션 조정 에이전트", 제3회 국제 데이터베이스 엔지니어링 및 응용 심포지엄(IDEAS'99), IEE 컴퓨터 협회 프레스, 몬트랄, 321.
- ^ Klaus Haller, Heiko Schuldt, Can Turker(2005) :「피어 투 피어 환경에서의 트랜잭션 프로세스의 분산 조정」, 2005년 ACM CIKM, 정보 및 지식 관리에 관한 국제회의, 2005년 10월 31일 - 11월 5일, 독일 브레멘, ISBN 1-595-140-6
- ^ Laura Christiana Voiceu, Heiko Schuldt, Fuat Akal, Yuri Breitbart, Hans Jörg Schek (2009) :Re: GRIDiT – 그리드 내 복제 데이터에 대한 분산 업데이트 트랜잭션 조정", 제10회 그리드 컴퓨팅에 관한 IEEE/ACM 국제회의(Grid 2009), 캐나다 Banff, 2009/10.
- ^ Laura Christiana Voiceu와 Heiko Schuldt(2009) :「클라우드에서의 복제 데이터 관리가 Data Grid Protocol을 통해 얻을 수 있는 이점:GRIDiT 어프로치", 제1회 클라우드 데이터 관리에 관한 국제 워크숍 진행(CloudDB 2009), 홍콩, 중국, 2009/11.
- ^ Weimin Du와 Ahmed K.Elmagarmid(1989) : "준시리얼라이저빌리티: 인터베이스에서의 글로벌 동시성 제어의 정확성 기준" 2010-12-21 아카이브, 네덜란드 암스테르담, 1989년 8월 22-25일, 제15회 대규모 데이터베이스 국제회의의 진행
- ^ Gray, J.; Helland, P.; O’Neil, P.; Shasha, D. (1996). The dangers of replication and a solution. Proceedings of the 1996 ACM SIGMOD International Conference on Management of Data. pp. 173–182. CiteSeerX 10.1.1.43.6498. doi:10.1145/233269.233330.