カテゴリ
PostgreSQL 本体・性能設計(パフォーマンスチューニング/インデックス/EXPLAIN/MVCC・VACUUM/JSONB/パーティショニング)の実装ガイド
PostgreSQLの性能は『推測』ではなく『計測 → 正しい順の最適化』で決まります。本クラスタは、pg_stat_statementsとEXPLAIN ANALYZEで重いクエリを特定する計測起点から、適切な型・列順のインデックス設計、実行計画の読解とスロークエリ改善、MVCCが生む肥大化とVACUUM/autovacuumの調整、半構造データを載せるJSONBの索引設計、超大規模表を物理分割するパーティショニングまでを、効く順に体系化します。PostgreSQL 16を中核にマルチテナント・多段商流のB2B SaaSを本番運用した知見を根拠に、専用DBを増やさず本番の要求に応える設計を、PostgreSQL 18公式ドキュメントに忠実な実コードで解説します。バックアップ・レプリケーション・接続プーリング・無停止アップグレード等の本番運用は『PostgreSQL 運用・信頼性』クラスタに、RLS(行レベルセキュリティ)やSupabase・Drizzleに特化した設計は『データベース・RLS』クラスタにまとめています。
全 6 記事
基礎ガイド
基礎ガイド(まずはここから)
PostgreSQL 本番パフォーマンスチューニング総論(v18対応):計測→インデックス→実行計画→メモリ→VACUUM を正しい順で速くする
PostgreSQL を本番で速くするための体系的ガイド。pg_stat_statements での計測起点、EXPLAIN による実行計画の読み方、shared_buffers/work_mem などメモリ設定の意味、MVCC/VACUUM とインデックス、接続プーリング、PostgreSQL 18 の非同期I/O・B-treeスキップスキャンまでを、公式ドキュメント(v18)に忠実な実コードで解説します。
関連する実践記事
- PostgreSQLパフォーマンスアーキテクチャ設計
PostgreSQL インデックス設計の実務(B-tree / GIN / GiST / BRIN・複合列順・カバリング・部分・式インデックス・CONCURRENTLY)
PostgreSQL のインデックスを『どの型を、どの順で、どこまで張るか』で迷わないための実務ガイド。B-tree/Hash/GiST/SP-GiST/GIN/BRIN の使い分け、複合インデックスの列順の鉄則、INCLUDE によるカバリング索引、部分・式インデックス、無停止の CREATE INDEX CONCURRENTLY、PostgreSQL 18 の B-tree スキップスキャンまでを公式ドキュメントに忠実な実コードで解説します。
13分 - PostgreSQLパフォーマンスアーキテクチャ設計
PostgreSQL EXPLAIN ANALYZE の読み方とスロークエリ改善(実行計画の見方・ノード別の意味・auto_explain・v18対応)
PostgreSQL の遅いクエリを EXPLAIN ANALYZE で診断し、確実に速くするための実務ガイド。cost/rows/width の読み方、見積もりと実測のズレ(統計の陳腐化)、Seq Scan・Bitmap・Nested Loop など各ノードの意味、外部ソートや Heap Fetches などの警告サイン、本番で遅いクエリの計画をログに残す auto_explain、PostgreSQL 18 の BUFFERS 既定ON までを公式ドキュメントに忠実に解説します。
11分 - PostgreSQLアーキテクチャ設計パフォーマンス
PostgreSQL の MVCC・トランザクション分離・VACUUM/autovacuum 実務ガイド(肥大化・行ロック・周回防止・v18対応)
PostgreSQL の正しさと性能の土台である MVCC を実務目線で解説。トランザクション分離レベル(Read Committed / Repeatable Read / Serializable)と直列化失敗のリトライ、FOR UPDATE SKIP LOCKED によるジョブキュー、デッドタプルと肥大化、VACUUM と VACUUM FULL の違い、autovacuum のチューニングと PostgreSQL 18 の autovacuum_vacuum_max_threshold、トランザクションID周回の防止までを公式ドキュメントに忠実な実コードで解説します。
13分 - PostgreSQLアーキテクチャ設計TypeScript
PostgreSQL JSONB 実践ガイド(json との違い・演算子・GIN/式インデックス設計・型安全な境界・v18対応)
PostgreSQL の JSONB を本番で正しく使うための実践ガイド。json と jsonb の違い、->/->>/@>/? などの演算子、包含・存在の落とし穴、jsonb_set などの更新、SQL/JSON パス、GIN(jsonb_ops と jsonb_path_ops)と式B-treeの索引設計の判断、正規化列との使い分け、TypeScript/Zod での型安全な境界までを公式ドキュメントに忠実な実コードで解説します。
12分 - PostgreSQLアーキテクチャ設計パフォーマンス
PostgreSQL 宣言的パーティショニング実践(RANGE/LIST/HASH・パーティションプルーニング・ローリングウィンドウ運用・v18対応)
PostgreSQL の宣言的パーティショニングを本番で正しく使うための実践ガイド。いつ分割すべきか(と、すべきでないか)、RANGE/LIST/HASH の構文、上限が排他という境界の罠、主キー制約のルール、パーティションプルーニングの確認方法、ATTACH/DETACH と時系列のローリングウィンドウ運用、partitionwise join、PostgreSQL 18 の改善までを公式ドキュメントに忠実な実コードで解説します。
12分