プログラム内のデータベース処理高速化TIPS
2010年03月10日-
スポンサード リンク
10 sql tips to speed up your database
プログラム内のデータベース処理高速化TIPSが10個紹介されているエントリのご紹介です。
SQLが適切に設計されていないとすぐにデータベース処理がCPUを圧迫してしまいますので可能な限り知っておきたいですね。
基本的な事から応用的な事まで参考になりそうだったのでメモ程度にご紹介。
- explainでインデックスが使われているかを調べる
- 最も速いクエリは、クエリを発行しないこと、ということでデータをキャッシュしよう
Memcached, CSQL Cache, AdoDB などでそれが可能 - 必要じゃないモノをselect しないようにする
select * from table;
↓
select id from table; - limit を使って取得する結果を少なくする
- foreach ループなどの中でsqlクエリをループさせないで1回にまとめられるのはまとめる
- サブクエリの代わりにjoinを使う
- ワイルドカードを使う場合は注意する。インデックスが使われないものは低速になる
- OR の代わりに UNIONを使う
- インデックスを適切に使う
具体的な部分は元エントリを参照してみて下さい。
スポンサード リンク
Advertisements
SITE PROFILE