BDR (Bi-Directional Replication)¶
概要¶
BDRは、高度な競合管理、データ損失保護、およびネイティブロジカルレプリケーションよりも最大5倍高速なスループットを備えたマルチマスターレプリケーションとデータ配信を提供するPostgreSQL拡張機能であり、最大5 9秒の高可用性を備えた分散PostgreSQLクラスターを可能にします。
BDRの仕組みに関する詳細な概要は、Architectural Overviewの章で説明されています。
サポートされているPostgreSQLデータベースサーバー¶
BDRはPostgresSQL、 EDB Postgres Extended、およびEDB PostgresAdvancedフレーバーのPostgresSQLデータベースサーバーと互換性があり、標準のPG拡張として展開できます。完全な互換性マトリクスは次のとおりです。
BDR Version |
PostgreSQL |
EDB Postgres Extended |
EDB Postgres Advanced |
|---|---|---|---|
4.0.0 |
14.1 |
14.1 |
14.1 |
4.0.0 |
13.5 |
13.5r1.1.7 |
13.5 |
4.0.0 |
12.9 |
12.9r1.1.9 |
12.9 |
3.7.13.1 |
13.5 |
13.5r1.1.7 |
13.5 |
3.7.13.1 |
12.9 |
12.9r1.1.9 |
12.9 |
3.7.13.1 |
11.14 |
11.14r2.1.9 |
11.14 |
一部のキーBDR機能は、対象となるPostgresSQLデータベースサーバ内で利用可能な特定のコア機能に依存することにノートすることが重要です。したがって、 BDRのお客様は、ビジネスニーズに最適なPostgresSQLdatabaseサーバーフレーバーも採用することが不可欠です。たとえば、 BDR機能「Commit At Most Once(CAMO)」を使用することがBDR顧客のユースケースにとってミッションクリティカルな場合、CAMOの処理に必要なコア機能がないため、コミュニティPostgreSQLフレーバーを採用しないでください。機能マトリクスの完全な互換性は、付録eded_tran1にあります。
BDRは、ほぼネイティブのPostgreSQL互換性を提供します。ただし、一部のアクセスパターンは、単一ノードのインスタンスと同じように、マルチノードセットアップで必ずしもうまく機能しません。マルチノード設定で安全に複製できるものには、いくつかの制限もあります。 Application Usageの章では、アプリケーション開発の観点からBDRがどのように動作するかについて詳しく説明します。
- Architectural Overview
- Application Usage
- PostgreSQL Configuration for BDR
- Node Management
- DDL Replication
- Security and Roles
- Conflicts
- Sequences
- Column-Level Conflict Detection
- Conflict-free Replicated Data Types
- Transaction streaming
- Durability & Performance Options
- Eager Replication
- CAMO
- AutoPartition
- Timestamp-Based Snapshots
- Replication Sets
- Stream Triggers
- Backup and Recovery
- Application Schema Upgrades
- Explicit Two-Phase Commit (2PC)
- Catalogs and Views
- ユーザーに表示されるカタログとViews
bdr.conflict_historybdr.conflict_history_summarybdr.consensus_kv_databdr.camo_decision_journalbdr.crdt_handlersbdr.ddl_replicationbdr.dependbdr.global_consensus_journalbdr.global_consensus_journal_detailsbdr.global_consensus_response_journalbdr.global_lockbdr.global_locksbdr.local_consensus_snapshotbdr.local_consensus_statebdr.local_nodebdr.local_node_summarybdr.local_sync_statusbdr.network_path_infobdr.nodebdr.node_catchup_infobdr.node_conflict_resolversbdr.node_groupbdr.node_group_replication_setsbdr.node_local_infobdr.node_locationbdr.node_log_configbdr.node_peer_progressbdr.node_pre_commitbdr.node_replication_ratesbdr.node_slotsbdr.node_summarybdr.queuebdr.replication_setbdr.replication_set_tablebdr.replication_set_ddlbdr.replication_setsbdr.schema_changesbdr.sequence_allocbdr.schema_changesbdr.sequence_allocbdr.sequencesbdr.stat_activitybdr.stat_relationbdr.stat_subscriptionbdr.subscriptionbdr.subscription_summarybdr.replication_statusbdr.tablesbdr.triggerbdr.triggersbdr.workersbdr.worker_errorsbdr.writersbdr.worker_tasksbdr.autopartition_work_queuebdr.autopartition_workitem_statusbdr.autopartition_local_work_queuebdr.autopartition_local_workitem_statusbdr.group_camo_detailsbdr.camo_pairsbdr.group_raft_detailsbdr.group_replslots_detailsbdr.group_subscription_summarybdr.group_versions_details
- 内部カタログとViews
- ユーザーに表示されるカタログとViews
- Monitoring
- BDR System Functions
- Credits and Licence
- ’Appendix A
- ’Appendix B
- ’Appendix C
- ’Appendix D
- ’Appendix E
- CAMO Clients