2014-11-07 2 views
1

Привет, можете ли вы рассказать, какая изоляция проблемы может помочь мне?Изоляция моментальных снимков в SQL Server

Как если бы я установил это для БД, чем преимущества и недостатки?

ALTER DATABASE MyDatabase 
SET ALLOW_SNAPSHOT_ISOLATION ON 

ALTER DATABASE MyDatabase 
SET READ_COMMITTED_SNAPSHOT ON 
+0

ли вы пытайтесь читать документацию, которая объясняет это? – TomTom

+0

Существуют страницы и страницы [документация] (http://msdn.microsoft.com/en-us/library/tcbchxcb (v = vs.110) .aspx), и вы ожидаете, что кто-то волшебным образом определит ваши требования и удалось обобщить все это на ответ? –

+1

Значит, вы оба не знаете, когда включить это ALLOW_SNAPSHOT_ISOLATION и READ_COMMITTED_SNAPSHOT? Хорошо. Помимо страниц документации, кто-нибудь может ответить на это в нескольких строках, когда вы обычно включаете эти два и какие недостатки? – pritamS

ответ

1

Мы должны использовать SET ALLOW_SNAPSHOT_ISOLATION ON.

Причина этого заключается в том, что нам необходимо обеспечить, чтобы отчет, хранящийся в procs, не терпел неудачу, когда в промежуточных таблицах происходят вставки, что может произойти, если отчет выполняется, когда служба ETL выполняет загрузку файла , Используя изоляцию моментальных снимков, мы можем гарантировать, что отчет работает с копией данных до начала транзакции вставки и, следовательно, не будет затронут транзакцией вставки.

Обратите внимание, что мы будем использовать изоляцию моментальных снимков, а не считывание выделенной изоляции моментальных снимков.

Вот приличная статья, которая объясняет уровни изоляции моментальных снимков:

http://www.brentozar.com/archive/2013/01/implementing-snapshot-or-read-committed-snapshot-isolation-in-sql-server-a-guide/

+0

Большое спасибо Раджешу. Я понял. – pritamS

Смежные вопросы