[pgsql-jp: 34744] Re: 最良のチューニング
lee
g_lee_1013 @ yahoo.co.jp
2005年 1月 28日 (金) 14:12:31 JST
こんにちは、
leeと申します。
下記の順番、拝見させて頂きました。
まとめがよくて勉強になりました。
順の2ついて私の意見ですが、
full scanしているといってさっそくindexをつけるより、その前に
もうちょっと分析したらもっとよいのではないかと思います。
indexをつける作業は非常に慎重に行うべきだと私は思います。
チューニング中のその部分だけでなくプロジェクト全般に影響を与える
可能性もあるでしょう。
indexをつけようとする項目の使用される頻繁度、データの分布
状況(損益臨界点10%〜15%?の考慮)、発行されるSQL形の推測
(たとえばBetweenやlikeの場合?)、あとは結合INDEXの場合など?
いろんな要素が直接影響してくると思います。
indexをつけてもつけなかった場合に比べてパフォーマンスが落ちる
こともよくありますね。
特にcost baseのRDMBSでは実行の統計情報や実績データにもとめて
アクセス経路を探しているので実行プランがなかなか自分の思う
とおりにいかないこともよくあるようです。
以上、私の意見でした。おかしな点があればご指摘ください。
> キャスターマイルドさん。
>
> こんにちは。いそと申します。
>
> 私見ですがチューニングは以下の順だと思います。
>
> (1) SQLチューニング
> → Explainの結果でコストの大きいいFull Scanを探す
>
> (2) Index付与
> → Full ScanしているSQLを見つけたらそこにIndexを付与してみる
> → (1)に戻って改めてExplainしてみる。
> → Indexをつかって検索コストが減ったらOK
> → Indexを使わずに相変わらずFull ScanならSQL見直し
>
> (3) パラメータチューニング
> → 私の経験からいって、パラメータチューニングで性能が大幅に変ることって
> ありませんでした。。。
>
> (4) バージョンアップ
> → オプティマイザの性能が確実に上がるという保障があればですが…
> (私はバージョンアップをしてのチューニングを試したことが無いので、
> 識者の方のご意見をお願いいたします…)
>
> H/Wの見直しとかも含まれると思いますが、以上の順と考えております。。
> おかしな点があればご指摘ください。。
__________________________________
Let's Celebrate Together!
Yahoo! JAPAN
http://pr.mail.yahoo.co.jp/so2005/
pgsql-jp メーリングリストの案内