私の会社がデッドロックの問題をトラブルシューティングするために雇ったDBAは、トランザクションレベルをREADUNCOMMITTEDからREADCOMMITTEDに設定すると、OLTPデータベースのロックの問題が改善されると言っていました。
それは100%間違っているのではありませんか?READ COMMITTEDは、より多くのロックを引き起こしますよね?
詳細:
私たちのデータは非常に「サイロ化」されており、ユーザー固有です。すべてのユーザーインタラクションの99.9999999%は独自のデータで機能し、ダーティリードシナリオが発生した場合、ユーザーが実行しようとしていることにほとんど影響を与えません。
すべての回答に感謝し、問題のdbaは役に立たなくなったため、単一のインデックスを追加することでロックの問題を修正しました。
通常の選択ではなく、更新ステートメントでロックの問題が発生していることを指定しなかったことを残念に思います。私のグーグルから、2つの異なるクエリタイプには、ロックの問題に対処する際の明確な解決策があります。