28.10.2006, 16:01 | #1 |
Участник
|
aEremenko: Излучая оптимизм
Источник: http://blogs.msdn.com/aeremenk/archi...15/666245.aspx
============== В обновлении ядра Kernel Rollup для версии 3.0 был впервые использован механизм Optimistic Concurrency Control (OCC), более подробно о механизме можно почитать в SQL Server 2005 Books Online Строго говоря, в Kernel Rollup OCC был задействован только для источников данных форм, остальные области, порождающие запросы к базе данных, не оптимизированы. Для поддержки OCC (а именно для обработки версий записей), в Kernel Rollup появилось поле RecVersion. С точки зрения Microsoft Dynamics Ax модель OCC, реализованная в 4.0 и частично (как описано выше) в Kernel Rollup, состоит из следующих областей:
"In a database scenario, there are two types of concurrency control mechanisms:
В 4.0 возможны следующие параметры работы OCC:
Что в итоге? В зависимости от нужд, можно оптимизировать производительность работы с базой данных. И это классно! Однако надо учесть, что для оптимальной работы версионности записей (помните о RecVersion?) и, соответственно, OCC в Microsoft SQL Server 2005 необходимо включить уровень изоляции Read Committed Snapshot Isolation (RCSI). Сделать это можно следующим запросом: ALTER DATABASE SET READ_COMMITTED_SNAPSHOT ON; По умолчанию, данный уровень выключен, поведение Microsoft SQL Server 2005 при выключенном режиме соответсвует предыдущим версиям. Однако, данный механизм работает и в режиме совместимости (т.е. при работе базы с типом 80 на Microsoft SQL Server 2005). Часто задаваемый вопрос: "А поможет ли включение READ_COMMITED_SHAPSHOT для Microsoft Dynamics Ax 3.0"? Вообще-то, версия 3.0 не поддерживает Read Committed Snapshot Isolation (RCSI) в Microsoft SQL Server 2005. В заключение. Если код написан неоптимально, транзакция длится часами, то, чтобы не оптимизировал и не предлагал вендор со стороны ядра - большого выигрыша не достичь. Пишите оптимальный код, следите за селективностью создаваемых индексов... Источник: http://blogs.msdn.com/aeremenk/archi...15/666245.aspx |
|
|
|