Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
NI
Uploaded by
NTT DATA Technology & Innovation
271 views
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料) 2025年3月27日(木) NTTデータグループ Innovation技術部 松永 創
Technology
◦
Read more
0
Save
Share
Embed
Embed presentation
1
/ 16
2
/ 16
Most read
3
/ 16
Most read
4
/ 16
5
/ 16
6
/ 16
7
/ 16
8
/ 16
9
/ 16
10
/ 16
11
/ 16
12
/ 16
13
/ 16
14
/ 16
15
/ 16
16
/ 16
Most read
More Related Content
PDF
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
by
NTT DATA Technology & Innovation
PDF
論理レプリケーション用スロットのフェールオーバ機能 (第48回 PostgreSQLアンカンファレンス 発表資料)
by
NTT DATA Technology & Innovation
PDF
PostgreSQLレプリケーション徹底紹介
by
NTT DATA OSS Professional Services
PDF
Ntt tx-study-postgre sql-10
by
Toshi Harada
PDF
Jpug study-postgre sql-10-pub
by
Toshi Harada
PDF
[Postgre sql9.4新機能]レプリケーション・スロットの活用
by
Kosuke Kida
PDF
PostgreSQL10徹底解説
by
Masahiko Sawada
PDF
20181122 pg con-jp-lt-logrep
by
Toshi Harada
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
by
NTT DATA Technology & Innovation
論理レプリケーション用スロットのフェールオーバ機能 (第48回 PostgreSQLアンカンファレンス 発表資料)
by
NTT DATA Technology & Innovation
PostgreSQLレプリケーション徹底紹介
by
NTT DATA OSS Professional Services
Ntt tx-study-postgre sql-10
by
Toshi Harada
Jpug study-postgre sql-10-pub
by
Toshi Harada
[Postgre sql9.4新機能]レプリケーション・スロットの活用
by
Kosuke Kida
PostgreSQL10徹底解説
by
Masahiko Sawada
20181122 pg con-jp-lt-logrep
by
Toshi Harada
Similar to 論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
PPTX
祝!PostgreSQLレプリケーション10周年!徹底紹介!!
by
NTT DATA Technology & Innovation
PDF
アーキテクチャから理解するPostgreSQLのレプリケーション
by
Masahiko Sawada
PDF
PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)
by
NTT DATA Technology & Innovation
PDF
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
by
NTT DATA Technology & Innovation
PDF
PostgreSQLのパラレル化に向けた取り組み@第30回(仮名)PostgreSQL勉強会
by
Shigeru Hanada
PPTX
大規模分散システムの現在 -- Twitter
by
maruyama097
PDF
Chugoku db 20th-postgresql-10-pub
by
Toshi Harada
PDF
20171106 ntt-tx-postgre sql-10
by
Toshi Harada
PDF
20171028 osc-nagaoka-postgre sql-10
by
Toshi Harada
祝!PostgreSQLレプリケーション10周年!徹底紹介!!
by
NTT DATA Technology & Innovation
アーキテクチャから理解するPostgreSQLのレプリケーション
by
Masahiko Sawada
PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)
by
NTT DATA Technology & Innovation
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
by
NTT DATA Technology & Innovation
PostgreSQLのパラレル化に向けた取り組み@第30回(仮名)PostgreSQL勉強会
by
Shigeru Hanada
大規模分散システムの現在 -- Twitter
by
maruyama097
Chugoku db 20th-postgresql-10-pub
by
Toshi Harada
20171106 ntt-tx-postgre sql-10
by
Toshi Harada
20171028 osc-nagaoka-postgre sql-10
by
Toshi Harada
More from NTT DATA Technology & Innovation
PDF
2025年現在のNewSQL (最強DB講義 #36 発表資料)
by
NTT DATA Technology & Innovation
PDF
Apache Sparkに対するKubernetesのNUMAノードを意識したリソース割り当ての性能効果 (Open Source Conference ...
by
NTT DATA Technology & Innovation
PDF
つくって壊して直して学ぶ Database on Kubernetes (CloudNative Days Summer 2025 発表資料)
by
NTT DATA Technology & Innovation
PDF
pgbenchのスレッドとクライアント (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PDF
PGConf.dev 2025 参加レポート (JPUG総会併設セミナー2025 発表資料)
by
NTT DATA Technology & Innovation
PDF
ストリーム処理はデータを失うから怖い?それ、何とかできますよ! 〜Apahe Kafkaを用いたストリーム処理における送達保証〜 (Open Source...
by
NTT DATA Technology & Innovation
PDF
PostgreSQL最新動向 ~カラムナストアから生成AI連携まで~ (Open Source Conference 2025 Tokyo/Spring ...
by
NTT DATA Technology & Innovation
PDF
開発中の新機能 Spark Declarative Pipeline に飛びついてみたが難しかった(JEDAI DAIS Recap#2 講演資料)
by
NTT DATA Technology & Innovation
PDF
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
by
NTT DATA Technology & Innovation
PDF
DAIS2024参加報告 ~Spark中心にしらべてみた~ (JEDAI DAIS Recap 講演資料)
by
NTT DATA Technology & Innovation
PDF
実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)
by
NTT DATA Technology & Innovation
PDF
PostgreSQLのHTAP適応について考える (PostgreSQL Conference Japan 2024 講演資料)
by
NTT DATA Technology & Innovation
PDF
PostgreSQLのgitレポジトリから見える2024年の開発状況 (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PDF
静かに変わってきたクラスファイルを詳細に調べて楽しむ(JJUG CCC 2024 Fall講演資料)
by
NTT DATA Technology & Innovation
PDF
PostgreSQL18新機能紹介(db tech showcase 2025 発表資料)
by
NTT DATA Technology & Innovation
PDF
生成AI時代のPostgreSQLハイブリッド検索 (第50回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PDF
Gartnerも注目するグリーンソフトウェアの実現に向けて (Green Software Foundation Global Summit 2024 T...
by
NTT DATA Technology & Innovation
PDF
SAFe実践から見えた、フレームワークより大切な組織変革の道程(Scrum Fest Sendai 2025 発表資料)
by
NTT DATA Technology & Innovation
PDF
Unveiling the Hidden Layers of Java Class Files: Beyond Bytecode (Devnexus 2025)
by
NTT DATA Technology & Innovation
PDF
Java in Japan: A Journey of Community, Culture, and Global Integration (JavaO...
by
NTT DATA Technology & Innovation
2025年現在のNewSQL (最強DB講義 #36 発表資料)
by
NTT DATA Technology & Innovation
Apache Sparkに対するKubernetesのNUMAノードを意識したリソース割り当ての性能効果 (Open Source Conference ...
by
NTT DATA Technology & Innovation
つくって壊して直して学ぶ Database on Kubernetes (CloudNative Days Summer 2025 発表資料)
by
NTT DATA Technology & Innovation
pgbenchのスレッドとクライアント (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PGConf.dev 2025 参加レポート (JPUG総会併設セミナー2025 発表資料)
by
NTT DATA Technology & Innovation
ストリーム処理はデータを失うから怖い?それ、何とかできますよ! 〜Apahe Kafkaを用いたストリーム処理における送達保証〜 (Open Source...
by
NTT DATA Technology & Innovation
PostgreSQL最新動向 ~カラムナストアから生成AI連携まで~ (Open Source Conference 2025 Tokyo/Spring ...
by
NTT DATA Technology & Innovation
開発中の新機能 Spark Declarative Pipeline に飛びついてみたが難しかった(JEDAI DAIS Recap#2 講演資料)
by
NTT DATA Technology & Innovation
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
by
NTT DATA Technology & Innovation
DAIS2024参加報告 ~Spark中心にしらべてみた~ (JEDAI DAIS Recap 講演資料)
by
NTT DATA Technology & Innovation
実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)
by
NTT DATA Technology & Innovation
PostgreSQLのHTAP適応について考える (PostgreSQL Conference Japan 2024 講演資料)
by
NTT DATA Technology & Innovation
PostgreSQLのgitレポジトリから見える2024年の開発状況 (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
静かに変わってきたクラスファイルを詳細に調べて楽しむ(JJUG CCC 2024 Fall講演資料)
by
NTT DATA Technology & Innovation
PostgreSQL18新機能紹介(db tech showcase 2025 発表資料)
by
NTT DATA Technology & Innovation
生成AI時代のPostgreSQLハイブリッド検索 (第50回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
Gartnerも注目するグリーンソフトウェアの実現に向けて (Green Software Foundation Global Summit 2024 T...
by
NTT DATA Technology & Innovation
SAFe実践から見えた、フレームワークより大切な組織変革の道程(Scrum Fest Sendai 2025 発表資料)
by
NTT DATA Technology & Innovation
Unveiling the Hidden Layers of Java Class Files: Beyond Bytecode (Devnexus 2025)
by
NTT DATA Technology & Innovation
Java in Japan: A Journey of Community, Culture, and Global Integration (JavaO...
by
NTT DATA Technology & Innovation
Recently uploaded
PDF
歴史好きのスクラム話 JBUG名古屋#5 AI時代のデータドリブンなプロジェクト管理
by
Tatsuya Naiki
PDF
How We Operated Ticket-Driven Development in JIRA.pdf
by
akipii ogaoga
PDF
論文紹介:"Reflexion: language agents with verbal reinforcement learning", "MA-LMM...
by
Toru Tamaki
PDF
論文紹介:"MM-Tracker: Motion Mamba for UAV-platform Multiple Object Tracking", "M...
by
Toru Tamaki
PDF
論文紹介:Simultaneous Detection and Interaction Reasoning for Object-Centric Acti...
by
Toru Tamaki
PDF
手軽に広範囲でプライバシーを守りながら人数カウントできる ~ LoRaWAN AI人流カウンター PF52 日本語カタログ
by
CRI Japan, Inc.
PDF
LoRaWAN小売業DXソリューション ~天候データと人流カウンターを利用して売り上げアップに貢献!
by
CRI Japan, Inc.
歴史好きのスクラム話 JBUG名古屋#5 AI時代のデータドリブンなプロジェクト管理
by
Tatsuya Naiki
How We Operated Ticket-Driven Development in JIRA.pdf
by
akipii ogaoga
論文紹介:"Reflexion: language agents with verbal reinforcement learning", "MA-LMM...
by
Toru Tamaki
論文紹介:"MM-Tracker: Motion Mamba for UAV-platform Multiple Object Tracking", "M...
by
Toru Tamaki
論文紹介:Simultaneous Detection and Interaction Reasoning for Object-Centric Acti...
by
Toru Tamaki
手軽に広範囲でプライバシーを守りながら人数カウントできる ~ LoRaWAN AI人流カウンター PF52 日本語カタログ
by
CRI Japan, Inc.
LoRaWAN小売業DXソリューション ~天候データと人流カウンターを利用して売り上げアップに貢献!
by
CRI Japan, Inc.
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
1.
© 2025 NTT
DATA Group Corporation © 2025 NTT DATA Group Corporation 第52回 PostgreSQLアンカンファレンス 論理レプリケーション アーキテクチャ 2025年3月27日 株式会社NTTデータグループ 松永 創
2.
© 2025 NTT
DATA Group Corporation 2 はじめに 本資料では、論理レプリケーションの以下について、整理しています。 • 論理レプリケーションの概要 • 論理レプリケーションの仕組み 尚、本資料は、鳥越 淳さん が PostgreSQL Conference Japan 2022 にて講演された 『 【B1】 速習!論理レプリケーション ~基礎から最新動向まで~』 の資料※を、許可を頂いて加筆・修正したものです。 資料の利用をご快諾いただき、この場を借りてお礼申し上げます。 ※ 速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料) | PPT https://www.slideshare.net/slideshow/postgresql-logical-replication-postgresql-conference-japan-2022-nttdata/254219341
3.
© 2025 NTT
DATA Group Corporation 3 論理レプリケーションの概要
4.
© 2025 NTT
DATA Group Corporation 4 論理レプリケーションの前に.. 物理レプリケーションの復習 • 概要: 全DBのレプリケーション • 仕組み: WAL転送・リカバリDB • クラスタの一部レプリケーションは不可 例.×特定のテーブルのみレプリケーション • PostgreSQLのメジャーバージョンは同じである必要 • 下流側は参照のみ可能 • ユースケース: HA, 参照分散 上流 DB1 DB2 下流 上流のWAL を転送 レプリケーション対象 DB2 〇参照, ×更新 DB1
5.
© 2025 NTT
DATA Group Corporation 5 論理レプリケーション • 概要: DB単位以下の粒度でレプリケーションの対象を指定できるレプリケーション • 仕組み: WALをデコードして送信 • 対象や操作を絞ったレプリケーションが可能 例. テーブルAのINSERTだけレプリケーション • 異なるメジャーバージョン間でのレプリケーションも可能 • 下流側でも更新が可能 上流 DB1 DB2 table2 下流 DB2 table1 2.下流側へ送信 table1 table3 table2 1.WALを デコード レプリケーション対象 〇参照, 〇更新
6.
© 2025 NTT
DATA Group Corporation 6 柔軟なレプリケーション対象の指定 • 行フィルタ • PUBLICATION定義にWHERE句を指定し、レプリケーション対象行を選択可能 (pub)=# CREATE PUBLICATION pub1 FOR TABLE t1 WHERE (i > 3); • UPDATE、DELETEをレプリケーションする場合、WHERE句はREPLICA IDENTITYに含まれるカラムのみ指定可 • INSERTの場合、この制約はない (pub)=# CREATE PUBLICATION pub1 FOR TABLE t1 WHERE (i > 3 AND t = 'aaa’); (pub)=# INSERT INTO t1 VALUES (13, 'insert’), (15, ‘aaa’); INSERT 0 2 (pub)=# UPDATE t1 SET i = 6 WHERE i = 5; ERROR: cannot update table "t1" DETAIL: Column used in the publication WHERE expression is not part of the replica identity. • WHERE句内では単純な式のみ利用可。ユーザ定義関数などは利用不可 v.15
7.
© 2025 NTT
DATA Group Corporation 7 論理レプリケーションのしくみ
8.
© 2025 NTT
DATA Group Corporation 8 アーキテクチャの概要 • 上流 • walsender: WALの読み取り・デコード、データを送信※ • 下流 • apply worker: データを受信、適用※ 上流 walsender WAL 1. WAL読込 下流 apply worker※ 2. デコード 3. データ送信 4. データ受信 5. データ適用 ※ walsender・apply worker は、SUBSCRIPTION 単位に生成される ※ streaming=parallel の場合、 apply worker の後ろで parallel apply worker が動作する
9.
© 2025 NTT
DATA Group Corporation 9 初期同期 • レプリケーション開始時に上流側にあったデータをCOPYする • 初期同期用のwalsender, table synchronization worker が起動 • SUBSCRIPTION1つあたり同時に実行できるワーカー数:max_sync_workers_per_subscription 上流 walsender WAL 下流 apply worker※ 初期データを COPY walsender logical replication worker sync table synchronization worker walsender max_sync_workers_per_subscription max_logical_replication_workers TBL TBL ※ streaming=parallel の場合、 apply worker の後ろで parallel apply worker が動作する
10.
© 2025 NTT
DATA Group Corporation 10 初期同期後のレプリケーション • 上流側でWALを読み込み、デコードした内容をトランザクション単位で変更を管理 上流 walsender WAL 1. WAL読込 下流 apply worker begin_cb change_cb … commit_cb outputプラグイン。論理レプリケーションでは pgoutput ReorderBuffer INSERT.. DELETE.. INSERT.. UPDATE.. INSERT..
11.
© 2025 NTT
DATA Group Corporation 11 初期同期後のレプリケーション • 上流側でWALを読み込み、デコードした内容をトランザクション単位で変更を管理 上流 walsender WAL 下流 apply worker begin_cb change_cb … commit_cb outputプラグイン。論理レプリケーションでは pgoutput ReorderBuffer INSERT.. UPDATE.. DELETE.. INSERT.. UPDATE.. INSERT.. 2. デコードし、トランザ クション単位で管理
12.
© 2025 NTT
DATA Group Corporation 12 初期同期後のレプリケーション • COMMITをデコードすると、下流側に送信 上流 walsender WAL 下流 apply worker begin_cb change_cb … commit_cb 3. COMMITされると、各 種コールバック関数が実 行され、下流への送信 outputプラグイン。論理レプリケーションでは pgoutput ReorderBuffer INSERT.. UPDATE.. COMMIT DELETE.. INSERT.. UPDATE.. INSERT.. 行フィルタやカラムリスト、パーティ ション、オリジンフィルタの判定は pgoutput側で実施
13.
© 2025 NTT
DATA Group Corporation 13 変更量の大きいトランザクションの扱い(SUBSCRIPTIONのオプションstreaming=offの場合) • 1レプリケーションが使用するメモリ量がlogical_decoding_work_memを超過した場合、 ファイルに変更を出力し、メモリ逼迫を予防 • 書き出すのは、最もメモリ使用量が大きいトランザクション 上流 walsender WAL 下流 apply worker outputプラグイン。論理レプリケーションでは pgoutput ReorderBuffer INSERT.. UPDATE.. DELETE.. INSERT.. .spill 2. PGDATA/pg_replslot 以下に出力 begin_cb change_cb … commit_cb DELETE.. INSERT.. DELETE.. INSERT.. 1.メモリ使用量が増加し、 Logical_decoding_work_mem を超過
14.
© 2025 NTT
DATA Group Corporation 14 変更量の大きいトランザクションの扱い(SUBSCRIPTIONのオプションstreaming=onの場合) • 1レプリケーションが使用するメモリ量がlogical_decoding_work_memを超過した場合、下流側に送信 • streaming = offの場合に比べ、変更量の大きいトランザクションの下流側への反映が遅延しにくい • ただし、ABORTされた場合は下流側へ送信されたデータは利用されない 上流 walsender WAL 下流 apply worker outputプラグイン。論理レプリケーションでは pgoutput ReorderBuffer INSERT.. UPDATE.. DELETE.. INSERT.. Stream用のコールバック 関数が呼び出され、下 流側へ送信 DELETE.. INSERT.. DELETE.. INSERT.. stream_start_cb stream_stop_cb … stream_commit_cb 受信した変更内容は、 base/pgsql_tmp以下に出力 .cha nges
15.
© 2025 NTT
DATA Group Corporation 15 変更量の大きいトランザクションの扱い(SUBSCRIPTIONのオプションstreaming=parallel) • 1レプリケーションが使用するメモリ量がlogical_decoding_work_memを超過した場合、 下流側に送信し、並列適用 • streaming=on に比べて、変更量の大きいトランザクションの下流側への反映がより遅延しにくい 上流 walsender WAL 下流 apply worker outputプラグイン。論理レプリケーションでは pgoutput ReorderBuffer INSERT.. UPDATE.. DELETE.. INSERT.. DELETE.. INSERT.. DELETE.. INSERT.. stream_start_cb stream_stop_cb … stream_commit_cb v.16 worker pool parallel apply workers parallel apply workers parallel apply worker ※ 割当て可能な parallel apply worker がない場合、変更は下流側で一時ファイルに書き込まれ、コミットされた後に適用 トランザクションの最初のストリーム を受信すると、parallel apply worker を(可能なら)割り当てる※ 受信データを 即時適用