6月 21, 2007

SQL Serverのパフォーマンスチューニング

今日は社内のSQL Serverに詳しい人と打ち合わせ、とは言っても私がそれを知らされたのは直前で、他の仕事で本番の作業をしていたから参加できるはずも無く…まあ、私は単なるヘルプだからいいけどさ。
それでも、少しはお話できたけど、結局知りたかったこと(インデックスの優先順位のルールとかバッファキャッシュの確認方法とか)はわからないということで…。
さらにSQL文を少し改善作業していたけど、SELECTしている列を全部インデックスにしたら、そのインデックスを使うようになって速くなりました、とか言い出すし…そんな泥臭い解決方法は私は認めたくないな。
もう私はそんなのとは別に
・変な条件を使っている部分を消しなさい
・LEFT(列名,1)とかSUBSTRING(列名,1,6)とかを条件に入れるなら、テーブルに専用の項目を作りなさい。
・副問い合わせはできるだけ、フラットにして使わないようにしなさい。
とか、ごく当たり前な指摘事項を30通り近くあげておいた。
まあ、その内容を受け止めずに、SQL Serverに詳しい方々に頼るようだが…、もう私は知らんぞ。