KEMBAR78
Daftar
Login
PostgreSQL: XID周回問題に潜む別の問題 | PDF
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
Submit search
EN
NS
Uploaded by
NTT DATA OSS Professional Services
PDF, PPTX
12,015 views
PostgreSQL: XID周回問題に潜む別の問題
『XID周回問題に潜む別の問題』 (PostgreSQLアンカンファレンス@Tokyo 2015/05 発表資料)
Technology
◦
Read more
7
Save
Share
Embed
Download
Download as PDF, PPTX
1
/ 12
2
/ 12
3
/ 12
4
/ 12
Most read
5
/ 12
6
/ 12
7
/ 12
8
/ 12
Most read
9
/ 12
Most read
10
/ 12
11
/ 12
12
/ 12
More Related Content
PPTX
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PDF
アーキテクチャから理解するPostgreSQLのレプリケーション
by
Masahiko Sawada
PPTX
オンライン物理バックアップの排他モードと非排他モードについて ~PostgreSQLバージョン15対応版~(第34回PostgreSQLアンカンファレンス...
by
NTT DATA Technology & Innovation
PDF
統計情報のリセットによるautovacuumへの影響について(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PDF
オンライン物理バックアップの排他モードと非排他モードについて(第15回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PDF
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
by
NTT DATA Technology & Innovation
PDF
Vacuum徹底解説
by
Masahiko Sawada
PDF
コンテナの作り方「Dockerは裏方で何をしているのか?」
by
Masahito Zembutsu
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
アーキテクチャから理解するPostgreSQLのレプリケーション
by
Masahiko Sawada
オンライン物理バックアップの排他モードと非排他モードについて ~PostgreSQLバージョン15対応版~(第34回PostgreSQLアンカンファレンス...
by
NTT DATA Technology & Innovation
統計情報のリセットによるautovacuumへの影響について(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
オンライン物理バックアップの排他モードと非排他モードについて(第15回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
by
NTT DATA Technology & Innovation
Vacuum徹底解説
by
Masahiko Sawada
コンテナの作り方「Dockerは裏方で何をしているのか?」
by
Masahito Zembutsu
What's hot
PDF
Memoizeの仕組み(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PPTX
祝!PostgreSQLレプリケーション10周年!徹底紹介!!
by
NTT DATA Technology & Innovation
PDF
PostgreSQL 15 開発最新情報
by
Masahiko Sawada
PPTX
世の中のPostgreSQLエンジニアのpsql設定(第34回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PPTX
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
by
NTT DATA Technology & Innovation
PDF
あなたの知らないPostgreSQL監視の世界
by
Yoshinori Nakanishi
PPTX
PostgreSQLの統計情報について(第26回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PDF
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...
by
NTT DATA Technology & Innovation
PPTX
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
by
Miki Shimogai
PDF
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
by
Hironobu Suzuki
PDF
PostgreSQL16でのロールに関する変更点(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PPTX
PostgreSQL開発コミュニティに参加しよう!(PostgreSQL Conference Japan 2021 発表資料)
by
NTT DATA Technology & Innovation
PDF
まずやっとくPostgreSQLチューニング
by
Kosuke Kida
PDF
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
by
NTT DATA Technology & Innovation
PPTX
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
by
NTT DATA Technology & Innovation
PDF
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PDF
NTT DATA と PostgreSQL が挑んだ総力戦
by
NTT DATA OSS Professional Services
PDF
PostgreSQL17対応版 EXPLAINオプションについて (第49回PostgreSQLアンカンファレンス@東京 発表資料)
by
NTT DATA Technology & Innovation
PPTX
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
by
NTT DATA Technology & Innovation
PDF
PostgreSQL 15の新機能を徹底解説
by
Masahiko Sawada
Memoizeの仕組み(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
祝!PostgreSQLレプリケーション10周年!徹底紹介!!
by
NTT DATA Technology & Innovation
PostgreSQL 15 開発最新情報
by
Masahiko Sawada
世の中のPostgreSQLエンジニアのpsql設定(第34回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
by
NTT DATA Technology & Innovation
あなたの知らないPostgreSQL監視の世界
by
Yoshinori Nakanishi
PostgreSQLの統計情報について(第26回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...
by
NTT DATA Technology & Innovation
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
by
Miki Shimogai
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
by
Hironobu Suzuki
PostgreSQL16でのロールに関する変更点(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PostgreSQL開発コミュニティに参加しよう!(PostgreSQL Conference Japan 2021 発表資料)
by
NTT DATA Technology & Innovation
まずやっとくPostgreSQLチューニング
by
Kosuke Kida
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
by
NTT DATA Technology & Innovation
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
by
NTT DATA Technology & Innovation
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
NTT DATA と PostgreSQL が挑んだ総力戦
by
NTT DATA OSS Professional Services
PostgreSQL17対応版 EXPLAINオプションについて (第49回PostgreSQLアンカンファレンス@東京 発表資料)
by
NTT DATA Technology & Innovation
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
by
NTT DATA Technology & Innovation
PostgreSQL 15の新機能を徹底解説
by
Masahiko Sawada
More from NTT DATA OSS Professional Services
PDF
Global Top 5 を目指す NTT DATA の確かで意外な技術力
by
NTT DATA OSS Professional Services
PDF
Spark SQL - The internal -
by
NTT DATA OSS Professional Services
PDF
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
by
NTT DATA OSS Professional Services
PDF
Hadoopエコシステムのデータストア振り返り
by
NTT DATA OSS Professional Services
PDF
HDFS Router-based federation
by
NTT DATA OSS Professional Services
PDF
PostgreSQL10を導入!大規模データ分析事例からみるDWHとしてのPostgreSQL活用のポイント
by
NTT DATA OSS Professional Services
PDF
Apache Hadoopの新機能Ozoneの現状
by
NTT DATA OSS Professional Services
PDF
Distributed data stores in Hadoop ecosystem
by
NTT DATA OSS Professional Services
PDF
Structured Streaming - The Internal -
by
NTT DATA OSS Professional Services
PDF
Apache Hadoopの未来 3系になって何が変わるのか?
by
NTT DATA OSS Professional Services
PDF
Apache Hadoop and YARN, current development status
by
NTT DATA OSS Professional Services
PDF
HDFS basics from API perspective
by
NTT DATA OSS Professional Services
PDF
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
by
NTT DATA OSS Professional Services
PDF
20170303 java9 hadoop
by
NTT DATA OSS Professional Services
PPTX
ブロックチェーンの仕組みと動向(入門編)
by
NTT DATA OSS Professional Services
PDF
Application of postgre sql to large social infrastructure jp
by
NTT DATA OSS Professional Services
PDF
Application of postgre sql to large social infrastructure
by
NTT DATA OSS Professional Services
PDF
Apache Hadoop 2.8.0 の新機能 (抜粋)
by
NTT DATA OSS Professional Services
PDF
データ活用をもっともっと円滑に!~データ処理・分析基盤編を少しだけ~
by
NTT DATA OSS Professional Services
PDF
商用ミドルウェアのPuppet化で気を付けたい5つのこと
by
NTT DATA OSS Professional Services
Global Top 5 を目指す NTT DATA の確かで意外な技術力
by
NTT DATA OSS Professional Services
Spark SQL - The internal -
by
NTT DATA OSS Professional Services
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
by
NTT DATA OSS Professional Services
Hadoopエコシステムのデータストア振り返り
by
NTT DATA OSS Professional Services
HDFS Router-based federation
by
NTT DATA OSS Professional Services
PostgreSQL10を導入!大規模データ分析事例からみるDWHとしてのPostgreSQL活用のポイント
by
NTT DATA OSS Professional Services
Apache Hadoopの新機能Ozoneの現状
by
NTT DATA OSS Professional Services
Distributed data stores in Hadoop ecosystem
by
NTT DATA OSS Professional Services
Structured Streaming - The Internal -
by
NTT DATA OSS Professional Services
Apache Hadoopの未来 3系になって何が変わるのか?
by
NTT DATA OSS Professional Services
Apache Hadoop and YARN, current development status
by
NTT DATA OSS Professional Services
HDFS basics from API perspective
by
NTT DATA OSS Professional Services
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
by
NTT DATA OSS Professional Services
20170303 java9 hadoop
by
NTT DATA OSS Professional Services
ブロックチェーンの仕組みと動向(入門編)
by
NTT DATA OSS Professional Services
Application of postgre sql to large social infrastructure jp
by
NTT DATA OSS Professional Services
Application of postgre sql to large social infrastructure
by
NTT DATA OSS Professional Services
Apache Hadoop 2.8.0 の新機能 (抜粋)
by
NTT DATA OSS Professional Services
データ活用をもっともっと円滑に!~データ処理・分析基盤編を少しだけ~
by
NTT DATA OSS Professional Services
商用ミドルウェアのPuppet化で気を付けたい5つのこと
by
NTT DATA OSS Professional Services
Recently uploaded
PDF
FOSS4G Hokkaido - QFieldをランナーのために活用した - QField for runners
by
Raymond Lay
PDF
技育祭2025秋 サボろうとする生成AIの傾向と対策 登壇資料(フューチャー渋川)
by
Yoshiki Shibukawa
PPTX
How to buy a used computer and use it with Windows 11
by
Atomu Hidaka
PPTX
FOSS4G Japan 2025 - QGISでスムーズに地図を比較 - QMapCompareプラグインの紹介
by
Raymond Lay
PDF
FOSS4G Japan 2024 ハザードマップゲームの作り方 Hazard Map Game QGIS Plugin
by
Raymond Lay
PDF
DX人材育成 サービスデザインで実現する「巻き込み力」の育て方 by Graat
by
Graat(グラーツ)
PDF
「似ているようで微妙に違う言葉」2025/10/17の勉強会で発表されたものです。
by
iPride Co., Ltd.
PPTX
「Drupal SDCについて紹介」2025/10/17の勉強会で発表されたものです。
by
iPride Co., Ltd.
FOSS4G Hokkaido - QFieldをランナーのために活用した - QField for runners
by
Raymond Lay
技育祭2025秋 サボろうとする生成AIの傾向と対策 登壇資料(フューチャー渋川)
by
Yoshiki Shibukawa
How to buy a used computer and use it with Windows 11
by
Atomu Hidaka
FOSS4G Japan 2025 - QGISでスムーズに地図を比較 - QMapCompareプラグインの紹介
by
Raymond Lay
FOSS4G Japan 2024 ハザードマップゲームの作り方 Hazard Map Game QGIS Plugin
by
Raymond Lay
DX人材育成 サービスデザインで実現する「巻き込み力」の育て方 by Graat
by
Graat(グラーツ)
「似ているようで微妙に違う言葉」2025/10/17の勉強会で発表されたものです。
by
iPride Co., Ltd.
「Drupal SDCについて紹介」2025/10/17の勉強会で発表されたものです。
by
iPride Co., Ltd.
PostgreSQL: XID周回問題に潜む別の問題
1.
Copyright © 2015
NTT DATA Corporation 2015年5月30日 株式会社 NTTデータ 澤田雅彦 XID周回問題に潜む別の問題 PostgreSQLアンカンファレンス@Tokyo
2.
2Copyright © 2015
NTT DATA Corporation 自己紹介 澤田 雅彦 @sawada_masahiko NTTデータ 基盤システム事業本部 • PostgreSQLの技術開発、技術支援に従事 • 今年PGCon行きます
3.
3Copyright © 2015
NTT DATA Corporation INDEX • XID周回とXID周回問題 • XID周回問題を防ぐ • XID周回問題に潜む”別の問題” • 解決に向けて
4.
4Copyright © 2015
NTT DATA Corporation XID周回とXID周回問題 • 約40億トランザクション経過すると0に戻る(→XID周回) • トランザクションID(XID)は4Byte • ”過去の見えていたデータ”が、見えなくなってしまう(→XID周回問題) • 約20億トランザクション経過すると発生。 • 例えば、200TPSのシステムだと、約115日で訪れる→年に3回発生 XID=100 過去 (見える) 未来 (見えない) XID=100 過去 (見える) 未来 (見えない) 見えない! XID=100 過去 (見える) 未来 (見えない) INSERT。 もちろん見える。 まだ見える。
5.
5Copyright © 2015
NTT DATA Corporation XID周回問題を防ぐ • タプルを凍結(FREEZE) • FREEZEされたタプルはどのXIDよりも古い • FREEZEする契機 • VACUUM/auto-vacuum/CLUSTER/VACUUM FULL • auto-vacuumがXID周回問題防止VACUUMを自動で実施 • (残り1000万トランザクションでWARNING) • (残り100万トランザクションでXIDの払い出しを禁止) XID=100 過去 (見える) 未来 (見えない) XID=100 FREEZE 過去 (見える) 未来 (見えない) XID=100 FREEZE 過去 (見える) 未来 (見えない) FREEZEされてるので 見える! INSERT。 もちろん見える。 まだ見える。 FREEZE処理実施。
6.
6Copyright © 2015
NTT DATA Corporation XID周回問題は防げる。が、 • XID周回防止VACUUMはテーブルのフルスキャンが必要 • これは、更新が全くないテーブルでも必要 → PostgreSQLは定期的にテーブルのフルスキャンが発生することになる XID周回問題に潜む別の問題は、
7.
7Copyright © 2015
NTT DATA Corporation XID周回問題は防げる。が、 • XID周回防止VACUUMはテーブルのフルスキャンが必要 • これは、更新が全くないテーブルでも必要 → PostgreSQLは定期的にテーブルのフルスキャンが発生することになる XID周回問題に潜む別の問題は、 ”XID周回防止VACUUMに伴う大量のI/O” ところで、なぜXID周回防止VACUUMはテーブルをフルスキャンする必要がある?
8.
8Copyright © 2015
NTT DATA Corporation blkno lp vm_info t_xmin 0 1 BIT 60(FREEZE) 0 2 BIT 151 1 1 50(FREEZE) 1 2 52(FREEZE) 2 1 BIT 100 2 2 BIT 100 2 3 BIT 101 3 1 90(FREEZE) 3 2 101 4 1 BIT 120(FREEZE) なぜテーブルをフルスキャンする必要がある? 通常のVACUUMはVisibility Mapにより飛び飛びに実行されることで、 テーブルのrelfrozenxidを更新できないため。 • pg_class.relfrozenxid : FREEZEされていない最小のXID • XID周回防止VACUUMの必要性は主にrelfrozenxidの値で判断 relfrozenxid 100 : スキップされる ブロック
9.
9Copyright © 2015
NTT DATA Corporation 解決に向けて CF9.6でパッチ出してます(★の所) • XIDを8Byteにする • XIDをLSNを結びつける • ★Read-Only Table • ★すべてのタプルがFREEZEされたページを覚えておく
10.
1Copyright © 2015
NTT DATA Corporation VisibilityMapにビットを追加 • これまでは、VMは1ページ当たり1ビットで管理 • ページ内のタプルが全てのトランザクションから見える(all-visible)→ビットを立てる • ビットが立っているページはVACUUM(ゴミ掃除)不要 • VMに1ビットを追加する • つまり1ページ当たり2ビット(all-visible, all-frozen)で管理。CLOGみたいな感じ。 • ページ内のタプルが全てFREEZEされている(all-frozen)→ビットを立てる • ビットが立っているページはVACUUM(タプルFREEZE)不要 • VACUUM(タプルFREEZE)でページをスキップしてもrelfrozenxidを更新できる 9.6ではどちらのVACUUMも高速になる!かも!
11.
1Copyright © 2015
NTT DATA Corporation まとめ • PostgreSQLは更新のないテーブルにも、 定期的にフルスキャン(VACUUM)が走ります。 • 計画的なVACUUM FREEZEである程度防止できる • 9.6で問題が解決するかも
12.
Copyright © 2011
NTT DATA Corporation Copyright © 2015 NTT DATA Corporation Please Review the Patch.
Download