table・indexの更新
DELETE、INSERTを頻繁に繰り返すような使い方をするとBツリーの構造がぐちゃぐちゃになりパフォーマンスが落ちる。
解説
indexでランダムに挿入、削除が行われると、indexがフラグメント化される事がある。
フラグメントの弊害
- テーブルサイズが必要以上に大きくなる
- IndexにないカラムをWHEREした場合、時間がかかる
解決策
インデックスを最適化する
- OPTIMIZE TABLE
- ANALIZE TABLE
- mysqlcheck -a
- ALTER TABLEする※
- dump突っ込みなおす
※innodb_file_per_tableの場合、テーブルサイズも小さくなる