PostgreSQL Performance Tuning, End to End
遅いクエリと設定不十分なデータベースは、本番環境でのアプリケーションボトルネックの最も一般的な原因です。このトラックでは、最初の EXPLAIN 出力の読み方から、MVCC の内部動作、WAL の動作、論理レプリケーションのトポロジまで、PostgreSQL の診断、チューニング、スケーリングを学びます。すべてのテクニックは一般的なアドバイスではなく、PostgreSQL の実際の動作に基づいています。
学習内容
B-tree、GIN、GiST、BRIN、部分インデックス全体でのインデックス選択をマスターし、その技法を JSONB カラム、全文検索、トライグラムマッチングに適用します。EXPLAIN ANALYZE が生成するクエリプランを読んで解釈し、効率性のためにサブクエリと結合を書き直し、autovacuum と bloat を制御し、接続プーリング用に pg_bouncer を設定し、サーバーメモリとチェックポイント設定をチューニングし、大規模テーブルをパーティションし、拡張統計を使ってプランナーがより良い決定を下すようにします。上級セクションでは、並行実行とロック、並列クエリ実行、論理レプリケーション、あらゆる最適化決定を支える MVCC と WAL の内部について説明します。
学習パス
22 のコースは A2 から B1、B2、C1、そして C2 へと進みます。最初のコースで、パフォーマンスの基本的な概念と用語を確立します。B1 コースでは実践的な基礎をカバーしています:必須のインデックス戦略、EXPLAIN 駆動型の分析、JSONB モデリング、一括ロード スループット、vacuuming による トランザクション管理。B2 コースでは、高度なインデックスタイプ、結合とサブクエリの最適化、サーバー設定、モニタリング、テーブルパーティショニング、ストレージ効率、全文検索パフォーマンス、PgBouncer チューニングへと進みます。C1 コースでは、パフォーマンスのためのデータモデリング、高度なクエリ書き直し、並行実行とロック、拡張統計、並列クエリワークロードへシフトします。C2 の 2 コースでは、スケーリングと高可用性アーキテクチャ、論理レプリケーションパターン、MVCC と WAL 内部の詳細な解説でトラックを閉じます。
学習方法
各コースは、内蔵の SQL エディタで完了する短い焦点を絞ったレッスンに分割されており、リアルタイムフィードバックが提供されます。概念の説明が必要な場合やクエリが期待通りに動作していない場合は、いつでも AI チューターが利用可能です。