SlideShare a Scribd company logo
8
Most read
11
Most read
20
Most read
© 2020 NTT DATA Corporation 1 © 2020 NTT DATA Corporation
第12回 PostgreSQLアンカンファレンス@オンライン
PostgreSQL13での
pg_stat_statementsの改善について
2020年4月24日
株式会社NTTデータ 藤井雅雄 @fujii_masao
© 2020 NTT DATA Corporation 2
藤井 雅雄 @fujii_masao
Database Technical Lead @ NTTデータ
データベース研究開発、PostgreSQL 技術支援
PostgreSQLコミッタ
レプリケーション(非同期 / 同期 / カスケード / クォーラムコミット)
WAL圧縮
pg_bigm(全文検索モジュール)コミッタ
自己紹介
© 2020 NTT DATA Corporation 3
【宣伝】 PostgreSQL 12 対応の pg_bigm 1.2 最新マイナーバージョンリリース!!
pg_bigm
https://pgbigm.osdn.jp/
https://github.com/pgbigm/pg_bigm
PostgreSQL上で全文検索機能を提供するOSSモジュール
「OSS」を含むタイトルの書籍情報を検索したい!
SELECT * FROM book WHERE title LIKE ‘%OSS%’
シーケンシャル
スキャン
インデックス
スキャン
pg_bigm導入で高速に! 通常、インデックス使えず低速
© 2020 NTT DATA Corporation 4
本講演について
講演資料は、後日、NTTデータのSlideShareアカウント上で公開予定です。
https://www.slideshare.net/nttdata-tech
© 2020 NTT DATA Corporation 5
PostgreSQL13 での
pg_stat_statements の改善について
© 2020 NTT DATA Corporation 6
PostgreSQL 13
• 現在コミュニティで開発中の最新バージョン
• Feature Freeze済
• 5月にβ1、10~11月に正式リリースの予定
今日紹介する内容は、正式リリースまでの間に
変更となる可能性があることにご注意ください!!
© 2020 NTT DATA Corporation 7
pg_stat_statementsとは
• SQLの実行情報を収集・格納するcontribモジュール
postgresql.conf
shared_preload_libraries = 'pg_stat_statements'
$ psql
=# CREATE EXTENSION pg_stat_statements;
© 2020 NTT DATA Corporation 8
pg_stat_statementsの実行例 (PostgreSQL12以前)
=# SELECT * FROM pg_stat_statements;
-[ RECORD 1 ]------+----------------------------------
userid | 10
dbid | 12937
queryid | 3516299150528015379
query | SELECT * FROM test WHERE i = $1
calls | 11
total_time | 1.040068
min_time | 0.03234
max_time | 0.120933
mean_time | 0.09455163636363637
stddev_time | 0.028701163493276168
rows | 11
SQLの基本情報
SQL実行のユーザID、データベースID、
SQL毎のID、SQL文
SQLの実行情報
SQLの実行回数
SQLの実行時間(総時間、最小時間、
最大時間、平均時間、母標準偏差)
SQLで取得・処理した総レコード件数
※PostgreSQL12での実行例
© 2020 NTT DATA Corporation 9
pg_stat_statementsの実行例 (PostgreSQL12以前)
shared_blks_hit | 19
shared_blks_read | 25
shared_blks_dirtied | 0
shared_blks_written | 0
local_blks_hit | 0
local_blks_read | 0
local_blks_dirtied | 0
local_blks_written | 0
temp_blks_read | 0
temp_blks_written | 0
blk_read_time | 0
blk_write_time | 0
SQLのブロックアクセス情報
ブロックアクセスでディスクリードした回数、
キャッシュヒットした回数など
※PostgreSQL12での実行例
© 2020 NTT DATA Corporation 10
新機能(1)
プラン生成の回数と時間の収集
© 2020 NTT DATA Corporation 11
pg_stat_statementsの実行例 (PostgreSQL12以前)
=# SELECT * FROM pg_stat_statements;
-[ RECORD 1 ]------+----------------------------------
userid | 10
dbid | 12937
queryid | 3516299150528015379
query | SELECT * FROM test WHERE i = $1
calls | 11
total_time | 1.040068
min_time | 0.03234
max_time | 0.120933
mean_time | 0.09455163636363637
stddev_time | 0.028701163493276168
rows | 11
※PostgreSQL12での実行例
SQLの実行情報
SQLの実行回数
SQLの実行時間(総時間、最小時間、
最大時間、平均時間、母標準偏差)
SQLで取得・処理した総レコード件数
© 2020 NTT DATA Corporation 12
pg_stat_statementで収集されるSQLの実行時間
① SQLの構文解析
② SQLのプラン生成
③ SQLの実行
SQL文
SQL実行結果
pg_stat_statementsで取集されるのは
「③ SQLの実行」にかかる時間のみ
複雑なSQLで、プラン生成に時間がかかっても、
pg_stat_statementsからはその状況を把握でき
ない
© 2020 NTT DATA Corporation 13
PostgreSQL13では、プラン生成の時間も収集可能に
① SQLの構文解析
② SQLのプラン生成
③ SQLの実行
SQL文
SQL実行結果
PostgreSQL13からは、「② SQLのプラン生成」に
かかる時間も収集可能に!
プラン生成に時間のかかる複雑なSQLについても、
状況をpg_stat_statementsで把握できる
© 2020 NTT DATA Corporation 14
pg_stat_statementsの実行例 (PostgreSQL13以降)
=# SELECT * FROM pg_stat_statements;
userid | 10
dbid | 12924
queryid | 2797858584654623986
query | SELECT * FROM test WHERE i = $1
plans | 11
total_plan_time | 7.356667000000001
min_plan_time | 0.12713
max_plan_time | 5.837887
mean_plan_time | 0.6687879090909091
stddev_plan_time | 1.6347461827809822
calls | 11
total_exec_time | 1.0091139999999998
min_exec_time | 0.03267
max_exec_time | 0.180994
mean_exec_time | 0.09173763636363635
stddev_exec_time | 0.04032989500307034
rows | 7
SQLのプラン生成の情報
プラン生成回数
プラン生成にかかる時間(総時間、最小
時間、最大時間、平均時間、母標準偏
差)
SQL実行時間のカラムについて名前が
変わったため要注意!
© 2020 NTT DATA Corporation 15
新機能(2)
WALの出力量の収集
© 2020 NTT DATA Corporation 16
pg_stat_statementsの実行例 (PostgreSQL12以前)
shared_blks_hit | 19
shared_blks_read | 25
shared_blks_dirtied | 0
shared_blks_written | 0
local_blks_hit | 0
local_blks_read | 0
local_blks_dirtied | 0
local_blks_written | 0
temp_blks_read | 0
temp_blks_written | 0
blk_read_time | 0
blk_write_time | 0
SQLのブロックアクセス情報
ブロックアクセスでディスクリードした回数、
キャッシュヒットした回数など
※PostgreSQL12での実行例
© 2020 NTT DATA Corporation 17
PostgreSQL13では、WAL出力量も収集可能に
shared_blks_hit | 38247417
shared_blks_read | 20
shared_blks_dirtied | 91625
shared_blks_written | 91529
local_blks_hit | 0
local_blks_read | 0
local_blks_dirtied | 0
local_blks_written | 0
temp_blks_read | 17090
temp_blks_written | 17090
blk_read_time | 3.2772180000000004
blk_write_time | 0
wal_records | 20047281
wal_fpw | 148
wal_bytes | 1423133210
PostgreSQL13からは、各SQLで出力
されるWALに関する情報も収集可能に!
SQLのWAL出力情報
出力されたWALレコードの総数、Full
Page Writesの総数、WALの総出力量
© 2020 NTT DATA Corporation 18
まとめ
© 2020 NTT DATA Corporation 19
まとめ
PostgreSQL13から
1. プラン生成の回数と時間
2. WAL出力量
を収集できるようになります。
v13βがリリースされたら、ぜひ機能をお試しいただければ!!
© 2020 NTT DATA Corporation本資料に記載されている会社名、商品名、又はサービス名は、各社の登録商標又は商標です。
Ad

Recommended

PostgreSQLの統計情報について(第26回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLの統計情報について(第26回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
オンライン物理バックアップの排他モードと非排他モードについて ~PostgreSQLバージョン15対応版~(第34回PostgreSQLアンカンファレンス...
オンライン物理バックアップの排他モードと非排他モードについて ~PostgreSQLバージョン15対応版~(第34回PostgreSQLアンカンファレンス...
NTT DATA Technology & Innovation
 
PostgreSQLの運用・監視にまつわるエトセトラ
PostgreSQLの運用・監視にまつわるエトセトラ
NTT DATA OSS Professional Services
 
オンライン物理バックアップの排他モードと非排他モードについて(第15回PostgreSQLアンカンファレンス@オンライン 発表資料)
オンライン物理バックアップの排他モードと非排他モードについて(第15回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
祝!PostgreSQLレプリケーション10周年!徹底紹介!!
祝!PostgreSQLレプリケーション10周年!徹底紹介!!
NTT DATA Technology & Innovation
 
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
NTT DATA Technology & Innovation
 
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
NTT DATA Technology & Innovation
 
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
NTT DATA Technology & Innovation
 
PostgreSQL開発コミュニティに参加しよう!(PostgreSQL Conference Japan 2021 発表資料)
PostgreSQL開発コミュニティに参加しよう!(PostgreSQL Conference Japan 2021 発表資料)
NTT DATA Technology & Innovation
 
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)
PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)
NTT DATA Technology & Innovation
 
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
NTT DATA と PostgreSQL が挑んだ総力戦
NTT DATA と PostgreSQL が挑んだ総力戦
NTT DATA OSS Professional Services
 
PostgreSQLモニタリングの基本とNTTデータが追加したモニタリング新機能(Open Source Conference 2021 Online F...
PostgreSQLモニタリングの基本とNTTデータが追加したモニタリング新機能(Open Source Conference 2021 Online F...
NTT DATA Technology & Innovation
 
Memoizeの仕組み(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
Memoizeの仕組み(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
NTT DATA Technology & Innovation
 
PostgreSQL 14 モニタリング新機能紹介(PostgreSQL カンファレンス #24、2021/06/08)
PostgreSQL 14 モニタリング新機能紹介(PostgreSQL カンファレンス #24、2021/06/08)
NTT DATA Technology & Innovation
 
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
NTT DATA Technology & Innovation
 
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
NTT DATA Technology & Innovation
 
Vacuum徹底解説
Vacuum徹底解説
Masahiko Sawada
 
PostgreSQL: XID周回問題に潜む別の問題
PostgreSQL: XID周回問題に潜む別の問題
NTT DATA OSS Professional Services
 
あなたの知らないPostgreSQL監視の世界
あなたの知らないPostgreSQL監視の世界
Yoshinori Nakanishi
 
統計情報のリセットによるautovacuumへの影響について(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
統計情報のリセットによるautovacuumへの影響について(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
Hironobu Suzuki
 
PostgreSQLモニタリング機能の現状とこれから(Open Developers Conference 2020 Online 発表資料)
PostgreSQLモニタリング機能の現状とこれから(Open Developers Conference 2020 Online 発表資料)
NTT DATA Technology & Innovation
 
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
Trainocate Japan, Ltd.
 
PostgreSQL9.3新機能紹介
PostgreSQL9.3新機能紹介
NTT DATA OSS Professional Services
 
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 

More Related Content

What's hot (20)

PostgreSQL開発コミュニティに参加しよう!(PostgreSQL Conference Japan 2021 発表資料)
PostgreSQL開発コミュニティに参加しよう!(PostgreSQL Conference Japan 2021 発表資料)
NTT DATA Technology & Innovation
 
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)
PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)
NTT DATA Technology & Innovation
 
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
NTT DATA と PostgreSQL が挑んだ総力戦
NTT DATA と PostgreSQL が挑んだ総力戦
NTT DATA OSS Professional Services
 
PostgreSQLモニタリングの基本とNTTデータが追加したモニタリング新機能(Open Source Conference 2021 Online F...
PostgreSQLモニタリングの基本とNTTデータが追加したモニタリング新機能(Open Source Conference 2021 Online F...
NTT DATA Technology & Innovation
 
Memoizeの仕組み(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
Memoizeの仕組み(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
NTT DATA Technology & Innovation
 
PostgreSQL 14 モニタリング新機能紹介(PostgreSQL カンファレンス #24、2021/06/08)
PostgreSQL 14 モニタリング新機能紹介(PostgreSQL カンファレンス #24、2021/06/08)
NTT DATA Technology & Innovation
 
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
NTT DATA Technology & Innovation
 
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
NTT DATA Technology & Innovation
 
Vacuum徹底解説
Vacuum徹底解説
Masahiko Sawada
 
PostgreSQL: XID周回問題に潜む別の問題
PostgreSQL: XID周回問題に潜む別の問題
NTT DATA OSS Professional Services
 
あなたの知らないPostgreSQL監視の世界
あなたの知らないPostgreSQL監視の世界
Yoshinori Nakanishi
 
統計情報のリセットによるautovacuumへの影響について(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
統計情報のリセットによるautovacuumへの影響について(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
Hironobu Suzuki
 
PostgreSQLモニタリング機能の現状とこれから(Open Developers Conference 2020 Online 発表資料)
PostgreSQLモニタリング機能の現状とこれから(Open Developers Conference 2020 Online 発表資料)
NTT DATA Technology & Innovation
 
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
Trainocate Japan, Ltd.
 
PostgreSQL開発コミュニティに参加しよう!(PostgreSQL Conference Japan 2021 発表資料)
PostgreSQL開発コミュニティに参加しよう!(PostgreSQL Conference Japan 2021 発表資料)
NTT DATA Technology & Innovation
 
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)
PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)
NTT DATA Technology & Innovation
 
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQLモニタリングの基本とNTTデータが追加したモニタリング新機能(Open Source Conference 2021 Online F...
PostgreSQLモニタリングの基本とNTTデータが追加したモニタリング新機能(Open Source Conference 2021 Online F...
NTT DATA Technology & Innovation
 
Memoizeの仕組み(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
Memoizeの仕組み(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
NTT DATA Technology & Innovation
 
PostgreSQL 14 モニタリング新機能紹介(PostgreSQL カンファレンス #24、2021/06/08)
PostgreSQL 14 モニタリング新機能紹介(PostgreSQL カンファレンス #24、2021/06/08)
NTT DATA Technology & Innovation
 
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
NTT DATA Technology & Innovation
 
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
NTT DATA Technology & Innovation
 
あなたの知らないPostgreSQL監視の世界
あなたの知らないPostgreSQL監視の世界
Yoshinori Nakanishi
 
統計情報のリセットによるautovacuumへの影響について(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
統計情報のリセットによるautovacuumへの影響について(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
Hironobu Suzuki
 
PostgreSQLモニタリング機能の現状とこれから(Open Developers Conference 2020 Online 発表資料)
PostgreSQLモニタリング機能の現状とこれから(Open Developers Conference 2020 Online 発表資料)
NTT DATA Technology & Innovation
 
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
Trainocate Japan, Ltd.
 

Similar to PostgreSQL 13でのpg_stat_statementsの改善について(第12回PostgreSQLアンカンファレンス@オンライン 発表資料) (20)

PostgreSQL9.3新機能紹介
PostgreSQL9.3新機能紹介
NTT DATA OSS Professional Services
 
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
pg_bigmを用いた全文検索のしくみ(後編)
pg_bigmを用いた全文検索のしくみ(後編)
NTT DATA OSS Professional Services
 
pg_bigmを用いた全文検索のしくみ(前編)
pg_bigmを用いた全文検索のしくみ(前編)
NTT DATA OSS Professional Services
 
pg_bigm(ピージー・バイグラム)を用いた全文検索のしくみ(後編)
pg_bigm(ピージー・バイグラム)を用いた全文検索のしくみ(後編)
Masahiko Sawada
 
MesonでPostgreSQLをビルドしてみよう!(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
MesonでPostgreSQLをビルドしてみよう!(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
pg_standbyの今後について(第19回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_standbyの今後について(第19回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
pg_bigm(ピージーバイグラム)を用いた全文検索のしくみ
pg_bigm(ピージーバイグラム)を用いた全文検索のしくみ
Masahiko Sawada
 
VSCodeで作るPostgreSQL開発環境(第25回 PostgreSQLアンカンファレンス@オンライン 発表資料)
VSCodeで作るPostgreSQL開発環境(第25回 PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
【Jpug勉強会】10大ニュースで振り返るpg con2013
【Jpug勉強会】10大ニュースで振り返るpg con2013
Daichi Egawa
 
zozotown real time linkage infrastructure
zozotown real time linkage infrastructure
KeisukeTaniguchi2
 
PostgreSQLのgitレポジトリから見える2022年の開発状況(第38回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのgitレポジトリから見える2022年の開発状況(第38回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
10大ニュースで振り返るpg con2013
10大ニュースで振り返るpg con2013
NTT DATA OSS Professional Services
 
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...
NTT DATA Technology & Innovation
 
[db tech showcase Tokyo 2014] C31: PostgreSQLをエンタープライズシステムで利用しよう by PostgreS...
[db tech showcase Tokyo 2014] C31: PostgreSQLをエンタープライズシステムで利用しよう by PostgreS...
Insight Technology, Inc.
 
PostgreSQL13でのpg_basebackupの改善について(第13回PostgreSQLアンカンファレンス@オンライン)
PostgreSQL13でのpg_basebackupの改善について(第13回PostgreSQLアンカンファレンス@オンライン)
NTT DATA Technology & Innovation
 
Postgres Playground で pgbench を走らせよう!(第35回PostgreSQLアンカンファレンス@オンライン 発表資料)
Postgres Playground で pgbench を走らせよう!(第35回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
NTT DATA Technology & Innovation
 
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQL 12の話
PostgreSQL 12の話
Masahiko Sawada
 
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
pg_bigm(ピージー・バイグラム)を用いた全文検索のしくみ(後編)
pg_bigm(ピージー・バイグラム)を用いた全文検索のしくみ(後編)
Masahiko Sawada
 
MesonでPostgreSQLをビルドしてみよう!(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
MesonでPostgreSQLをビルドしてみよう!(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
pg_standbyの今後について(第19回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_standbyの今後について(第19回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
pg_bigm(ピージーバイグラム)を用いた全文検索のしくみ
pg_bigm(ピージーバイグラム)を用いた全文検索のしくみ
Masahiko Sawada
 
VSCodeで作るPostgreSQL開発環境(第25回 PostgreSQLアンカンファレンス@オンライン 発表資料)
VSCodeで作るPostgreSQL開発環境(第25回 PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
【Jpug勉強会】10大ニュースで振り返るpg con2013
【Jpug勉強会】10大ニュースで振り返るpg con2013
Daichi Egawa
 
zozotown real time linkage infrastructure
zozotown real time linkage infrastructure
KeisukeTaniguchi2
 
PostgreSQLのgitレポジトリから見える2022年の開発状況(第38回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのgitレポジトリから見える2022年の開発状況(第38回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...
NTT DATA Technology & Innovation
 
[db tech showcase Tokyo 2014] C31: PostgreSQLをエンタープライズシステムで利用しよう by PostgreS...
[db tech showcase Tokyo 2014] C31: PostgreSQLをエンタープライズシステムで利用しよう by PostgreS...
Insight Technology, Inc.
 
PostgreSQL13でのpg_basebackupの改善について(第13回PostgreSQLアンカンファレンス@オンライン)
PostgreSQL13でのpg_basebackupの改善について(第13回PostgreSQLアンカンファレンス@オンライン)
NTT DATA Technology & Innovation
 
Postgres Playground で pgbench を走らせよう!(第35回PostgreSQLアンカンファレンス@オンライン 発表資料)
Postgres Playground で pgbench を走らせよう!(第35回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
NTT DATA Technology & Innovation
 
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
Ad

More from NTT DATA Technology & Innovation (20)

PGConf.dev 2025 参加レポート (JPUG総会併設セミナー2025 発表資料)
PGConf.dev 2025 参加レポート (JPUG総会併設セミナー2025 発表資料)
NTT DATA Technology & Innovation
 
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
NTT DATA Technology & Innovation
 
つくって壊して直して学ぶ Database on Kubernetes (CloudNative Days Summer 2025 発表資料)
つくって壊して直して学ぶ Database on Kubernetes (CloudNative Days Summer 2025 発表資料)
NTT DATA Technology & Innovation
 
2025年現在のNewSQL (最強DB講義 #36 発表資料)
2025年現在のNewSQL (最強DB講義 #36 発表資料)
NTT DATA Technology & Innovation
 
Java in Japan: A Journey of Community, Culture, and Global Integration (JavaO...
Java in Japan: A Journey of Community, Culture, and Global Integration (JavaO...
NTT DATA Technology & Innovation
 
Unveiling the Hidden Layers of Java Class Files: Beyond Bytecode (Devnexus 2025)
Unveiling the Hidden Layers of Java Class Files: Beyond Bytecode (Devnexus 2025)
NTT DATA Technology & Innovation
 
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)
実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)
NTT DATA Technology & Innovation
 
Apache Sparkに対するKubernetesのNUMAノードを意識したリソース割り当ての性能効果 (Open Source Conference ...
Apache Sparkに対するKubernetesのNUMAノードを意識したリソース割り当ての性能効果 (Open Source Conference ...
NTT DATA Technology & Innovation
 
PostgreSQL最新動向 ~カラムナストアから生成AI連携まで~ (Open Source Conference 2025 Tokyo/Spring ...
PostgreSQL最新動向 ~カラムナストアから生成AI連携まで~ (Open Source Conference 2025 Tokyo/Spring ...
NTT DATA Technology & Innovation
 
pgbenchのスレッドとクライアント (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
pgbenchのスレッドとクライアント (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQLのgitレポジトリから見える2024年の開発状況 (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのgitレポジトリから見える2024年の開発状況 (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
ストリーム処理はデータを失うから怖い?それ、何とかできますよ! 〜Apahe Kafkaを用いたストリーム処理における送達保証〜 (Open Source...
ストリーム処理はデータを失うから怖い?それ、何とかできますよ! 〜Apahe Kafkaを用いたストリーム処理における送達保証〜 (Open Source...
NTT DATA Technology & Innovation
 
生成AI時代のPostgreSQLハイブリッド検索 (第50回PostgreSQLアンカンファレンス@オンライン 発表資料)
生成AI時代のPostgreSQLハイブリッド検索 (第50回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
DAIS2024参加報告 ~Spark中心にしらべてみた~ (JEDAI DAIS Recap 講演資料)
DAIS2024参加報告 ~Spark中心にしらべてみた~ (JEDAI DAIS Recap 講演資料)
NTT DATA Technology & Innovation
 
PostgreSQLのHTAP適応について考える (PostgreSQL Conference Japan 2024 講演資料)
PostgreSQLのHTAP適応について考える (PostgreSQL Conference Japan 2024 講演資料)
NTT DATA Technology & Innovation
 
静かに変わってきたクラスファイルを詳細に調べて楽しむ(JJUG CCC 2024 Fall講演資料)
静かに変わってきたクラスファイルを詳細に調べて楽しむ(JJUG CCC 2024 Fall講演資料)
NTT DATA Technology & Innovation
 
Gartnerも注目するグリーンソフトウェアの実現に向けて (Green Software Foundation Global Summit 2024 T...
Gartnerも注目するグリーンソフトウェアの実現に向けて (Green Software Foundation Global Summit 2024 T...
NTT DATA Technology & Innovation
 
パーティションのATTACH時の注意ポイント (第49回PostgreSQLアンカンファレンス@東京 発表資料)
パーティションのATTACH時の注意ポイント (第49回PostgreSQLアンカンファレンス@東京 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQL17対応版 EXPLAINオプションについて (第49回PostgreSQLアンカンファレンス@東京 発表資料)
PostgreSQL17対応版 EXPLAINオプションについて (第49回PostgreSQLアンカンファレンス@東京 発表資料)
NTT DATA Technology & Innovation
 
PGConf.dev 2025 参加レポート (JPUG総会併設セミナー2025 発表資料)
PGConf.dev 2025 参加レポート (JPUG総会併設セミナー2025 発表資料)
NTT DATA Technology & Innovation
 
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
NTT DATA Technology & Innovation
 
つくって壊して直して学ぶ Database on Kubernetes (CloudNative Days Summer 2025 発表資料)
つくって壊して直して学ぶ Database on Kubernetes (CloudNative Days Summer 2025 発表資料)
NTT DATA Technology & Innovation
 
Java in Japan: A Journey of Community, Culture, and Global Integration (JavaO...
Java in Japan: A Journey of Community, Culture, and Global Integration (JavaO...
NTT DATA Technology & Innovation
 
Unveiling the Hidden Layers of Java Class Files: Beyond Bytecode (Devnexus 2025)
Unveiling the Hidden Layers of Java Class Files: Beyond Bytecode (Devnexus 2025)
NTT DATA Technology & Innovation
 
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)
実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)
NTT DATA Technology & Innovation
 
Apache Sparkに対するKubernetesのNUMAノードを意識したリソース割り当ての性能効果 (Open Source Conference ...
Apache Sparkに対するKubernetesのNUMAノードを意識したリソース割り当ての性能効果 (Open Source Conference ...
NTT DATA Technology & Innovation
 
PostgreSQL最新動向 ~カラムナストアから生成AI連携まで~ (Open Source Conference 2025 Tokyo/Spring ...
PostgreSQL最新動向 ~カラムナストアから生成AI連携まで~ (Open Source Conference 2025 Tokyo/Spring ...
NTT DATA Technology & Innovation
 
pgbenchのスレッドとクライアント (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
pgbenchのスレッドとクライアント (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQLのgitレポジトリから見える2024年の開発状況 (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのgitレポジトリから見える2024年の開発状況 (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
ストリーム処理はデータを失うから怖い?それ、何とかできますよ! 〜Apahe Kafkaを用いたストリーム処理における送達保証〜 (Open Source...
ストリーム処理はデータを失うから怖い?それ、何とかできますよ! 〜Apahe Kafkaを用いたストリーム処理における送達保証〜 (Open Source...
NTT DATA Technology & Innovation
 
生成AI時代のPostgreSQLハイブリッド検索 (第50回PostgreSQLアンカンファレンス@オンライン 発表資料)
生成AI時代のPostgreSQLハイブリッド検索 (第50回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
DAIS2024参加報告 ~Spark中心にしらべてみた~ (JEDAI DAIS Recap 講演資料)
DAIS2024参加報告 ~Spark中心にしらべてみた~ (JEDAI DAIS Recap 講演資料)
NTT DATA Technology & Innovation
 
PostgreSQLのHTAP適応について考える (PostgreSQL Conference Japan 2024 講演資料)
PostgreSQLのHTAP適応について考える (PostgreSQL Conference Japan 2024 講演資料)
NTT DATA Technology & Innovation
 
静かに変わってきたクラスファイルを詳細に調べて楽しむ(JJUG CCC 2024 Fall講演資料)
静かに変わってきたクラスファイルを詳細に調べて楽しむ(JJUG CCC 2024 Fall講演資料)
NTT DATA Technology & Innovation
 
Gartnerも注目するグリーンソフトウェアの実現に向けて (Green Software Foundation Global Summit 2024 T...
Gartnerも注目するグリーンソフトウェアの実現に向けて (Green Software Foundation Global Summit 2024 T...
NTT DATA Technology & Innovation
 
パーティションのATTACH時の注意ポイント (第49回PostgreSQLアンカンファレンス@東京 発表資料)
パーティションのATTACH時の注意ポイント (第49回PostgreSQLアンカンファレンス@東京 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQL17対応版 EXPLAINオプションについて (第49回PostgreSQLアンカンファレンス@東京 発表資料)
PostgreSQL17対応版 EXPLAINオプションについて (第49回PostgreSQLアンカンファレンス@東京 発表資料)
NTT DATA Technology & Innovation
 
Ad

PostgreSQL 13でのpg_stat_statementsの改善について(第12回PostgreSQLアンカンファレンス@オンライン 発表資料)

  • 1. © 2020 NTT DATA Corporation 1 © 2020 NTT DATA Corporation 第12回 PostgreSQLアンカンファレンス@オンライン PostgreSQL13での pg_stat_statementsの改善について 2020年4月24日 株式会社NTTデータ 藤井雅雄 @fujii_masao
  • 2. © 2020 NTT DATA Corporation 2 藤井 雅雄 @fujii_masao Database Technical Lead @ NTTデータ データベース研究開発、PostgreSQL 技術支援 PostgreSQLコミッタ レプリケーション(非同期 / 同期 / カスケード / クォーラムコミット) WAL圧縮 pg_bigm(全文検索モジュール)コミッタ 自己紹介
  • 3. © 2020 NTT DATA Corporation 3 【宣伝】 PostgreSQL 12 対応の pg_bigm 1.2 最新マイナーバージョンリリース!! pg_bigm https://pgbigm.osdn.jp/ https://github.com/pgbigm/pg_bigm PostgreSQL上で全文検索機能を提供するOSSモジュール 「OSS」を含むタイトルの書籍情報を検索したい! SELECT * FROM book WHERE title LIKE ‘%OSS%’ シーケンシャル スキャン インデックス スキャン pg_bigm導入で高速に! 通常、インデックス使えず低速
  • 4. © 2020 NTT DATA Corporation 4 本講演について 講演資料は、後日、NTTデータのSlideShareアカウント上で公開予定です。 https://www.slideshare.net/nttdata-tech
  • 5. © 2020 NTT DATA Corporation 5 PostgreSQL13 での pg_stat_statements の改善について
  • 6. © 2020 NTT DATA Corporation 6 PostgreSQL 13 • 現在コミュニティで開発中の最新バージョン • Feature Freeze済 • 5月にβ1、10~11月に正式リリースの予定 今日紹介する内容は、正式リリースまでの間に 変更となる可能性があることにご注意ください!!
  • 7. © 2020 NTT DATA Corporation 7 pg_stat_statementsとは • SQLの実行情報を収集・格納するcontribモジュール postgresql.conf shared_preload_libraries = 'pg_stat_statements' $ psql =# CREATE EXTENSION pg_stat_statements;
  • 8. © 2020 NTT DATA Corporation 8 pg_stat_statementsの実行例 (PostgreSQL12以前) =# SELECT * FROM pg_stat_statements; -[ RECORD 1 ]------+---------------------------------- userid | 10 dbid | 12937 queryid | 3516299150528015379 query | SELECT * FROM test WHERE i = $1 calls | 11 total_time | 1.040068 min_time | 0.03234 max_time | 0.120933 mean_time | 0.09455163636363637 stddev_time | 0.028701163493276168 rows | 11 SQLの基本情報 SQL実行のユーザID、データベースID、 SQL毎のID、SQL文 SQLの実行情報 SQLの実行回数 SQLの実行時間(総時間、最小時間、 最大時間、平均時間、母標準偏差) SQLで取得・処理した総レコード件数 ※PostgreSQL12での実行例
  • 9. © 2020 NTT DATA Corporation 9 pg_stat_statementsの実行例 (PostgreSQL12以前) shared_blks_hit | 19 shared_blks_read | 25 shared_blks_dirtied | 0 shared_blks_written | 0 local_blks_hit | 0 local_blks_read | 0 local_blks_dirtied | 0 local_blks_written | 0 temp_blks_read | 0 temp_blks_written | 0 blk_read_time | 0 blk_write_time | 0 SQLのブロックアクセス情報 ブロックアクセスでディスクリードした回数、 キャッシュヒットした回数など ※PostgreSQL12での実行例
  • 10. © 2020 NTT DATA Corporation 10 新機能(1) プラン生成の回数と時間の収集
  • 11. © 2020 NTT DATA Corporation 11 pg_stat_statementsの実行例 (PostgreSQL12以前) =# SELECT * FROM pg_stat_statements; -[ RECORD 1 ]------+---------------------------------- userid | 10 dbid | 12937 queryid | 3516299150528015379 query | SELECT * FROM test WHERE i = $1 calls | 11 total_time | 1.040068 min_time | 0.03234 max_time | 0.120933 mean_time | 0.09455163636363637 stddev_time | 0.028701163493276168 rows | 11 ※PostgreSQL12での実行例 SQLの実行情報 SQLの実行回数 SQLの実行時間(総時間、最小時間、 最大時間、平均時間、母標準偏差) SQLで取得・処理した総レコード件数
  • 12. © 2020 NTT DATA Corporation 12 pg_stat_statementで収集されるSQLの実行時間 ① SQLの構文解析 ② SQLのプラン生成 ③ SQLの実行 SQL文 SQL実行結果 pg_stat_statementsで取集されるのは 「③ SQLの実行」にかかる時間のみ 複雑なSQLで、プラン生成に時間がかかっても、 pg_stat_statementsからはその状況を把握でき ない
  • 13. © 2020 NTT DATA Corporation 13 PostgreSQL13では、プラン生成の時間も収集可能に ① SQLの構文解析 ② SQLのプラン生成 ③ SQLの実行 SQL文 SQL実行結果 PostgreSQL13からは、「② SQLのプラン生成」に かかる時間も収集可能に! プラン生成に時間のかかる複雑なSQLについても、 状況をpg_stat_statementsで把握できる
  • 14. © 2020 NTT DATA Corporation 14 pg_stat_statementsの実行例 (PostgreSQL13以降) =# SELECT * FROM pg_stat_statements; userid | 10 dbid | 12924 queryid | 2797858584654623986 query | SELECT * FROM test WHERE i = $1 plans | 11 total_plan_time | 7.356667000000001 min_plan_time | 0.12713 max_plan_time | 5.837887 mean_plan_time | 0.6687879090909091 stddev_plan_time | 1.6347461827809822 calls | 11 total_exec_time | 1.0091139999999998 min_exec_time | 0.03267 max_exec_time | 0.180994 mean_exec_time | 0.09173763636363635 stddev_exec_time | 0.04032989500307034 rows | 7 SQLのプラン生成の情報 プラン生成回数 プラン生成にかかる時間(総時間、最小 時間、最大時間、平均時間、母標準偏 差) SQL実行時間のカラムについて名前が 変わったため要注意!
  • 15. © 2020 NTT DATA Corporation 15 新機能(2) WALの出力量の収集
  • 16. © 2020 NTT DATA Corporation 16 pg_stat_statementsの実行例 (PostgreSQL12以前) shared_blks_hit | 19 shared_blks_read | 25 shared_blks_dirtied | 0 shared_blks_written | 0 local_blks_hit | 0 local_blks_read | 0 local_blks_dirtied | 0 local_blks_written | 0 temp_blks_read | 0 temp_blks_written | 0 blk_read_time | 0 blk_write_time | 0 SQLのブロックアクセス情報 ブロックアクセスでディスクリードした回数、 キャッシュヒットした回数など ※PostgreSQL12での実行例
  • 17. © 2020 NTT DATA Corporation 17 PostgreSQL13では、WAL出力量も収集可能に shared_blks_hit | 38247417 shared_blks_read | 20 shared_blks_dirtied | 91625 shared_blks_written | 91529 local_blks_hit | 0 local_blks_read | 0 local_blks_dirtied | 0 local_blks_written | 0 temp_blks_read | 17090 temp_blks_written | 17090 blk_read_time | 3.2772180000000004 blk_write_time | 0 wal_records | 20047281 wal_fpw | 148 wal_bytes | 1423133210 PostgreSQL13からは、各SQLで出力 されるWALに関する情報も収集可能に! SQLのWAL出力情報 出力されたWALレコードの総数、Full Page Writesの総数、WALの総出力量
  • 18. © 2020 NTT DATA Corporation 18 まとめ
  • 19. © 2020 NTT DATA Corporation 19 まとめ PostgreSQL13から 1. プラン生成の回数と時間 2. WAL出力量 を収集できるようになります。 v13βがリリースされたら、ぜひ機能をお試しいただければ!!
  • 20. © 2020 NTT DATA Corporation本資料に記載されている会社名、商品名、又はサービス名は、各社の登録商標又は商標です。