Вопрос 3.1.
Имеется регистр бухгалтерии «Хозрасчетный», с измерением «Организация» и субконто «Контрагенты». Будут ли перечисленные пары операций выполняться параллельно из разных сессий? Возможные блокировки на границах диапазона индекса не учитываются. Что изменится если включить разделитель итогов? (остатки не контролируются).
Параллельность | Операция 1 | Операция 2 |
Запись набора записей: Счет = 41.01
Организация = «Рога и Копыта»
Контрагент «Ромашка»
|
Запись набора записей: Счет = 41.01
Организация = «Рога и Копыта»
Контрагент «Ромашка»
| |
Запись набора записей: Счет = 41.01
Организация = «Рога и Копыта» Контрагент = «ОАО МосИнвест» |
Чтение остатков с условием: Счет = 41.01
Организация «Безенчук и Ко»
Контрагент = «ОАО МосИнвест»
| |
Чтение остатков с условием
Счет = 41.01 Организация = «Безенчук и Ко»
Контрагент = «ОАО МосИнвест»
|
Чтение остатков с условием
Счет = 41.01
Организация - «Безенчук и Ко»
Контрагент = «ОАО МосИнвест»
| |
Ответ:
1) Без разделителя
Параллельность | Операция 1 | Операция 2 |
НЕТ |
Запись набора записей: Счет = 41.01
Организация = «Рога и Копыта»
Контрагент «Ромашка»
|
Запись набора записей: Счет = 41.01
Организация = «Рога и Копыта»
Контрагент «Ромашка»
|
ДА |
Запись набора записей: Счет = 41.01
Организация = «Рога и Копыта» Контрагент = «ОАО МосИнвест» |
Чтение остатков с условием: Счет = 41.01
Организация «Безенчук и Ко»
Контрагент = «ОАО МосИнвест»
|
ДА |
Чтение остатков с условием
Счет = 41.01 Организация = «Безенчук и Ко»
Контрагент = «ОАО МосИнвест»
|
Чтение остатков с условием
Счет = 41.01
Организация - «Безенчук и Ко»
Контрагент = «ОАО МосИнвест»
|
2) С разделителем | ||
ДА |
Запись набора записей: Счет = 41.01
Организация = «Рога и Копыта»
Контрагент «Ромашка»
|
Запись набора записей: Счет = 41.01
Организация = «Рога и Копыта»
Контрагент «Ромашка»
|
ДА |
Запись набора записей: Счет = 41.01Организация = «Рога и Копыта»
Контрагент = «ОАО МосИнвест»
|
Чтение остатков с условием: Счет = 41.01
Организация «Безенчук и Ко»
Контрагент = «ОАО МосИнвест»
|
ДА |
Чтение остатков с условием
Счет = 41.01 Организация = «Безенчук и Ко»
Контрагент = «ОАО МосИнвест»
|
Чтение остатков с условием
Счет = 41.01
Организация - «Безенчук и Ко»
Контрагент = «ОАО МосИнвест»
|
Вопрос 3.2.
Что такое план запроса и зачем он нужен. Кто и когда формирует план запроса? Можно ли повлиять на выбор плана запроса.
Ответ:
План запроса это способ с помощью которого оптимизатор получает данные из таблиц СУБД. Формирует план запроса оптимизатор СУБД перед выполнением запроса. Повлиять на выбор плана запроса нельзя.
Вопрос 3.3 Имеется информационная система работающая в клиент-серверном варианте с использованием MSSQL.
Пользователь 1 выполняет длинный запрос в транзакции.
Пользователь 2 выполняет свой запрос и оказывается заблокированным пользователем 1. Перечислите все известные Вам способы получения информации об этой блокировке. Перечислите информацию которая при этом будет получена.
Ответ:
Информацию можно получить как оперативно:
1) С помощью консоли кластера серверов. Показывает Кто кого заблокировал, длительность блокировки, гранулярность.
2)С помощью монитора активности. Показывает кто кого заблокировал (id сеансов),какой ресурс ,если конфигурация в автоматическом режиме, то можно увидеть и текст запроса на языке SQL, гранулярность, режим(тип блокировки).
И неоперативно
3)Можно запустить ЦУП и собрать анализ ожиданий на блокировках. Можно увидеть всю вышеперечисленную информацию.
4) SQL profiler. С помощью фильтра lock acquired> 1мс; (ресурс, длительность, режим,гранулярность, id кого забокировали.
Комментариев нет:
Отправить комментарий