第二部 パフォーマンス編 · 第 3 章 · 約 25 分
選択性 — 障害 2: インデックスを追加したらタイムアウトが増えた
9割が同じ値を持つ列にインデックスを貼ると、なぜオプティマイザは判断を誤るのか。カーディナリティ、選択性、統計情報とヒストグラムを学びます。
無料プレビュー
前提: 第1章で作成した idx_customer が存在します。この章では、あえて選択性の低い status 列にインデックスを追加し、トラブルの原因を究明します。
この章で答える問い
- インデックスを追加したのに逆に遅くなるのはなぜか?
- オプティマイザは何を基準にインデックスを選ぶのか?
- 判断根拠となる統計情報が狂っているとき、どう対処するか?
ベースラインの測定: インデックスなしの基準性能
まずはインデックスが存在しない状態で集計クエリを実行し、後で比較するための実行時間と行数を測ります。
無料プレビューはここまで
続きでは、約5秒のクエリがインデックス追加後に150秒超へ悪化する理由を、選択性と統計情報から特定します。
ここからの学習は有料プラン(買い切り)となります
¥500 税込・買い切り(追加費用なし)
ご購入いただくと、第二部 2〜10 章(実行計画、選択性、複合インデックス、InnoDB の内部構造、ソートとページング、JOIN、書き込みコストと DDL、ロック、同時実行)の全編、すべてのラボの計測データ再生機能、および章末の理解度確認クイズをご利用いただけます。
※ ご購入時と同じ Google アカウントでログインすることで、すぐに続きを閲覧いただけます。デジタルコンテンツの性質上、購入後の返金は原則としてお受けできません。まずは無料の 13 章と各有料章のプレビューをお試しいただき、ご納得の上でご購入ください。