인디노트

BDR 1.0.7 Documentation - 1.3. Differences between BDR and trigger-based replication 본문

개발 플랫폼 및 언어/DB 기술

BDR 1.0.7 Documentation - 1.3. Differences between BDR and trigger-based replication

인디개발자 2018. 12. 31. 14:57

1.3. Differences between BDR and trigger-based replication

There are a number of trigger-based logical replication solutions for PostgreSQL, including Londiste, Slony-I and Bucardo. They're mature, fairly widely used and powerful, and like BDR they have the advantages (and disadvantages) of logical replication.

Londiste, Slony-I 및 Bucardo 를 포함하여 PostgreSQL을 위한 많은 트리거 기반 논리적 복제 솔루션이 있습니다. 그들은 성숙하고, 널리 사용되고, 강력하며, BDR 처럼 논리적 복제의 장점과 단점이 있습니다.

As with the comparison with physical replication, BDR offers advantages over trigger-based replication solutions but also has some downsides.

물리적 복제와 비교할 때 BDR 은 트리거 기반 복제 솔루션에 비해 장점이 있지만 단점도 있습니다.


All trigger-based replication solutions suffer from inherent write-amplification, where each write to the database produces a corresponding write to a replication log table. Both the original write and the write to the replication log get recorded in WAL as well as the heap, so each write actually happens four times. By reading and processing WAL for data to replicate
 BDR avoids this write amplification, so writes to a BDR-replicated database only get written twice - like any other durable write on PostgreSQL.

모든 트리거 기반 복제 솔루션은 데이터베이스에 대한 각 쓰기가 복제 로그 테이블에 해당하는 쓰기를 생성하는 고유의 쓰기 증폭으로 인해 어려움을 겪습니다. 원본 로그와 복제 로그에 대한 쓰기는 모두 WAL 과 힙에 기록 되므로 각 쓰기는 실제로 네번 발생합니다. BDR 을 복제할 데이터에 대한 WAL 을 읽고 처리하면 이 기록 증폭을 피할 수 있으므로 PostgreSQL 의 다른 내구성있는 쓰기와 마찬가지로 BDR 복제 데이터베이스에 대한 쓰기는 두 번만 기록됩니다.


Trigger-based replication also requires an external dæmon process on the sending and/or receiving side.
 BDR runs its management processes inside PostgreSQL itself, so there's no separate replication process to manage.

트리거 기반 복제에는 송신측 및 수신측에서 외부 데몬 프로세스가 필요합니다. BDR 은 PostgreSQL 자체에서 관리 프로세스를 실행 하므로 관리 할 별도의 복제 프로세스가 없습니다.

At the time of writing, systems like Londiste have a number of features for which BDR has no corresponding capability. Londiste can synchronise and compare tables between the publisher and subscriber. Slony-I supports events and confirmations. Slony-I provides infrastructure for handling DDL while also running on unmodified PostgreSQL 9.4. Bucardo supports multi-master on unmodified PostgreSQL 9.4. So while BDR offers some significant benefits it won't suit every need and every workload. Evaluate your needs carefully before choosing a technology.

글을 쓰는 시점에서 Londiste 와 같은 시스템에는 BDR 에 해당 기능이 없는 여러 가지 기능이 있습니다. Londiste 는 게시자와 구독자 간에 테이블을 동기화하고 비교할 수 있습니다. Slony-I 은 이벤트와 확인을 지원합니다. Slony-I 은 수정되지 않은 PostgreSQL 9.4 에서도 실행되는 DDL 처리 인프라를 제공합니다. Bucardo 는 수정되지 않은 PostgreSQL 9.4 에서 다중 마스터를 지원합니다. 따라서 BDR 은 몇 가지 중요한 이점을 제공하지만 모든 필요와 모든 작업 부하에 적합 하지는 않습니다. 기술을 선택하기 전에 신중하게 요구 사항을 평가하십시오.

반응형
Comments