株価を追跡する単一のテーブルがあるとします(この問題の簡単な例です)。私は1000ティッカーを追跡し、常に市場データを受け取り、ストアドプロシージャを介してテーブルを更新するプロセスを持っています。頻繁に呼び出される更新SPの分離レベルを修正しますか?
私は、同じティッカーで発生した更新の衝突について心配していません。どんな理由であれ、同じティッカーの2つのアップデートがうまく適用されないと仮定しましょう(これは私のシナリオでは起こりません)。私は、ストアドプロシージャができるだけ少ない競合を持つようにしたいと思います。
現在のシナリオでは、procは同時に多くの時間が呼び出されており、タイムアウトしています。
現在、procは分離レベルとしてREPEATABLE READを使用しています。私はprocを書いていないので、なぜこれが選ばれたのか分からない。
私の質問は:
- それはREPEATABLE READを使用して(間接的に)である可能性が、それはこれらのタイムアウトの原因?
- 上記の基準に基づいてより適切な選択をするのがよいでしょうか?
興味深いことに、私はこれを読み上げます。次の最低隔離レベルであるため、未読は次の最良の選択ですか? –
[READ UNCOMMITTEDは矛盾しています](http://blogs.msdn.com/b/sqlcat/archive/2007/02/01/previously-committedrows-might-be-missed-if-nolock-hint-is- used.aspx) –