【PostgreSQL】CREATE INDEX CONCURRENTLYでサービス無停止でインデックスを作成する通常のCREATE INDEXが取得するロック 通常のCREATE INDEXは対象テーブルにShareLockを取得する。ShareLockはINSERT・UPDATE・DELETEが取得するRowExclusiveLockと競合するため、インデックス作成が完了するまで書き込みがブロックされる。DATABASE 2026-07-22 2026-07-22
【PostgreSQL】INCLUDE句でIndex Only Scanを実現するIndex Only Scanとは Index Only Scanはインデックスだけを読んでテーブル本体(ヒープ)にアクセスせず結果を返す実行方式である。テーブルへのアクセスが不要な分、通常のIndex Scanより高速になる。DATABASE 2026-07-22 2026-07-22
【PostgreSQL】pg_stat_statementsで重いクエリを特定するpg_stat_statementsの有効化 pg_stat_statementsは、実行されたSQL文ごとに実行回数や実行時間を集計する拡張機能である。postgresql.confのshared_preload_librariesに追加し、PostgreSQLを再起動してからCREATE EXTENSIONで有効化する。DATABASE 2026-07-22 2026-08-21
【PostgreSQL】EXPLAIN (ANALYZE, BUFFERS)でキャッシュヒット率を確認するBUFFERSオプションとは EXPLAINにBUFFERSオプションを付けると、クエリの実行中に読み込んだブロック数が表示される。ANALYZEと併用することで、実行計画の各ノードがどれだけ共有バッファ(キャッシュ)を使ったかを確認できる。DATABASE 2026-07-22 2026-07-22
【PostgreSQL】EXPLAIN ANALYZEの読み方の基本EXPLAIN ANALYZEとは EXPLAINはクエリの実行計画を表示するコマンドである。ANALYZEオプションを付けると、実際にクエリを実行し実行時間や実際の処理件数も表示する。DATABASE 2026-07-21 2026-07-22
【PostgreSQL】pg_stat_activityで実行中クエリとロック待ちを確認する参考: 【MySQL】SHOW PROCESSLISTで実行中クエリとロック待ちを確認する 実行中のクエリを確認する PostgreSQLで現在実行中のクエリを確認するにはpg_stat_activityビューをSELECTする。DATABASE 2026-07-21 2026-08-22
【Hugo】sectionページを使ってプライバシーポリシーページを作る実現したいこと ブログにプライバシーポリシーのような固定ページを追加したいとする。記事一覧は不要で、本文だけを表示したいが、タイトルや日付、TOCなど通常記事と同じ見た目には揃えたい。HUGO 2026-07-20 2026-07-20
【Hugo】特定セクションだけ独自のsection.htmlを適用する方法実現したいこと content/recipes/のように、レシピ記事だけを集めたセクションを追加したとする。他のセクションは記事タイトルだけの一覧で構わないが、レシピ記事の一覧では調理時間をひと目でわかるように表示したい。HUGO 2026-07-20 2026-07-20
【Hugo】SEO対策としてJSON-LD構造化データを組み込む方法JSON-LDとは JSON-LDは、ページの内容を検索エンジンに構造的に伝えるための構造化データ記法である。schema.orgの語彙をJSON形式で記述し、<script type="application/ld+json">としてHTMLに埋め込む。HUGO 2026-07-19 2026-07-20
【Hugo】enableGitInfoによるlastmodがCIのcloneした日時になっていた問題発生していた問題 当ブログでは各記事に更新日(.Lastmod)を表示している。この更新日はenableGitInfoを有効にし、Gitのコミット履歴から取得する設定にしていた。HUGO 2026-07-19 2026-07-19