私はKimballスタイルのDWを持っています(スターモデルのファクトとディメンション - 遅れて到着するファクトの行や列はありません。タイプ2の一部であり、ゆっくりと変化するディメンション)を使用して、行(新しい日付に)と月間および日次のレポート処理を挿入および更新するための大量の毎日処理を実行します。ファクト表は、古いデータの簡単なロールオフのための日付によってパーティション化されています。データウェアハウスのシナリオでは、WITH(NOLOCK)を使用することには不利益があります
WITH(NOLOCK)
は、コミットされていないデータを読み取る可能性があることを理解していますが、ETLプロセスの失敗またはブロックを引き起こすロックを作成したくありません。
すべてのケースで、DWから読んでいるときは、変更されない日付(ファクトテーブルは日付でパーティション化されています)とファクトテーブルから読み取っています。彼らはにリンクされています。
だから何か不利な点はありますか? - おそらく実行計画やそのような操作の場合は、同じテーブルから並列に実行されるクエリだけです。
と関連しています。 http://stackoverflow.com/questions/20047/diagnosing-deadlocks-in-sql-server-2005 –