回答:
いいえ、オプティマイザの監査/レポートの詳細な構造や機能はありません。
あなたの最高のツールは「gdb」です。MS SQL Serverとは異なり、PostgreSQLはオープンソースです。デバッグシンボルを有効にしてビルドし、デバッガーをアタッチして、デバッガーが実行していることを正確に追跡できます。
もちろん、それが簡単なわけではありません。プランナー/オプティマイザが行っていることのトレースを作成するためのブレークポイントとgdbマクロの缶詰のセットは非常に素晴らしいでしょう。現時点では、そのようなツールは知りません。
gdb
のトレースポイント、またはperf
ユーザー空間のトレースポイントは、非常に役立ちます。
詳細なデバッグロギングと一部のトレースパラメータを有効にしてpostgresql.conf
、結果の詳細なログファイルを調べることもできます。
PostgreSQL開発者向けFAQには、いくつかのドキュメント(プランツリーのダンプなどに関する情報を追加しました)があります。https : //wiki.postgresql.org/wiki/Developer_FAQ。これは便利かもしれません。また、メインの開発者ドキュメントも読む必要があります。