06.Запросы и методы их оптимизации |
06.01 При помощи каких инструментов возможно получить план запроса, формируемый SQL Server? |
5 | Верны варианты 1,2,3. |
06.02 Какой элемент должен присутствовать в настройках технологического журнала для включения сбора планов запросов? |
2 | plansql |
06.03 Какая пара событий в SQL Server Profiler позволяет получить как графическое, так и текстовое представление плана запроса? |
1 | Performance\Showplan Statistics Profile и Performance\Showplan XML Statistics Profile |
06.04 Что такое Index Scan? |
3 | Логический и физический оператор, который извлекает все строки из некластеризованного индекса, указанного в колонке Argument. |
06.05 Что такое план запроса? |
1 | Последовательность физических и логических операций, необходимых для получения результата SQL-запроса. |
06.06 Что такое Index Seek? |
1 | Логический и физический оператор, который использует возможность поиска индексов с целью извлечения строк из некластеризованного индекса. |
06.07 Что такое Clustered Index Scan? |
2 | Логический и физический оператор, который сканирует кластеризованный индекс, определенный в колонке Argument. |
06.08 Что такое Clustered Index Seek? |
4 | Логический и физическая оператор, использующий поисковую способность индексов извлекать хранимые строки из кластеризованного индекса. |
06.09 Что такое Table Scan? |
4 | Логический и физический оператор, возвращающий все строки из таблицы, указанной в колонке Argument. |
06.10 В чем отличие Clustered Index Scan от Table Scan? |
5 | Верны ответы 1 и 3. |
06.11 В чем отличие Clustered Index Scan от Index Scan? |
4 | Clustered Index Scan - операция, выполняемая над кластерным индексом, а Index Scan - операция, выполняющая сканирование некластерного индекса |
06.12 Чтобы найти длительный запрос MS SQL Server, получение какого события следует прописать в файле настроек технологического журнала? |
2 | DBMSSQL с фильтром по полю Durationus. |
06.13 Будет ли событие записано в технологический журнал в момент своего начала (например, при начале выполнения запроса)? |
2 | Нет. |
06.14 Выберите верное утверждение. |
2 | Конструкция ДЛЯ ИЗМЕНЕНИЯ используется, чтобы вместо разделяемой блокировки установить блокировку обновления. |
06.15 Конструкция ДЛЯ ИЗМЕНЕНИЯ в запросах используется для защиты от взаимоблокировки, которая возникает при повышении уровня блокировки в транзакциях с уровнем изоляции: |
5 | Верны варианты 1 и 3 |
06.16 Что такое DDL? |
4 | Язык определения данных, предназначенный для создания, удаления и модификации таблиц базы данных. |
06.17 Что такое DCL? |
2 | Язык управления данными, предназначенный для обеспечения защиты базы данных. |
06.18 Что такое DML? |
1 | Семейство компьютерных языков, используемых в компьютерных программах или пользователями баз данных для получения, вставки, удаления или изменения данных в базах данных. |
06.19 План запроса нужен для: |
4 | формирования последовательности операций, необходимых для получения результата запроса в СУБД. |
06.20 Информацию о каких событиях рекомендуется получить в трассировке SQL Profiler для того, чтобы получить текстовый и графический план запроса, текст запроса, длительность выполнения? |
3 | SQL:BatchCompleted, RPC:Completed, Showplan Statistic Profile, Showplan XML Statistic Profile. |
06.21 Чем отличаются события Showplan XML и Showplan XML Statistic Profile? |
2 | Showplan XML - скомпилированный план запроса, полученный до выполнения по этому плану, Showplan XML Statistic Profile - план, включающий реальную статистику после выполнения запроса по этому плану. |
06.22 Чем отличаются события Showplan XML и Showplan XML for Query Compile? |
2 | Showplan XML - показывается перед каждым выполнением запроса, Showplan XML for Query Compile - не показывается при повторном исполнении, т.к. план берется из кэша. |
06.23 Чем отличается Nested loops от Hash join? |
1 | Nested loops соединяет таблицы вложенным циклами, Hash join соединяет таблицы хешированием неотсортированных таблиц. |
06.24 Как происходит соединение хешированием? |
1 | • Таблица table2 сканируется и размещается в хеш-таблице. • Значения из таблицы table1 отбираются по хеш-таблице. |
06.25 Как происходит соединение слиянием? |
3 | Одновременно считываются и сравниваются два отсортированных входных потока, по одной строке за шаг. На каждом из этих шагов происходит сравнение со следующей строкой входного потока. Если строки равны, выводится присоединяемая строка, и процесс продолжается дальше. Если строки не равны, исключается меньшее из двух входных значений, и процесс продолжается. |
06.26 Как происходит соединение вложенными циклами? |
1 | Сравнивается каждая строка одной таблицы (называемой внешней таблицей) с каждой строкой другой таблицы (называемой внутренней таблицей), ищутся те строки, которые удовлетворяют предикату соединения. |
06.27 Чем отличается Merge join от Nested loops? |
1 | Merge join соединяет отсортированные таблицы слиянием, а Nested loops соединяет таблицы вложенными циклами. |
06.28 К каким негативным последствиям может привести запрос, который содержит соединения с подзапросами? |
1 | Запрос может выполнятся крайне медленно. |
06.29 Почему не рекомендуется использовать соединения с подзапросами? |
3 | Оптимизатор сервера СУБД не всегда может правильно оптимизировать такой запрос, ему может быть трудно понять какое количество записей может быть возвращено в подзапросе. В этом случае СУБД может ошибиться с планом запроса. |
06.30 Если неоптимальный длительно выполняющийся запрос использует соединения с подзапросами, то его следует переписать с использованием: |
3 | временных таблиц (заменив подзапросы временными таблицами) |
06.31 Если в неоптимальном медленно выполняющемся запросе используется соединение с виртуальной таблицей, то следует вынести такое обращение к виртуальной таблице в отдельный запрос: |
4 | с записью результата во временную таблицу. |
06.32 Для оптимизации запроса с получением данных через точку от полей составного типа рекомендуется: |
3 | в запросе использовать условие "ВЫБОР", а затем фильтр "ВЫРАЗИТЬ". |
06.33 Если в запросе используется получение данных через точку от полей составного типа, то при выполнении такого запроса будет выполняться соединение: |
2 | с таблицами объектов, входящих в составной тип. |
06.34 Какие основные причины неоптимальных запросов? |
1 | Соединения с подзапросами, соединения с виртуальными таблицами, несоответствие индексов и условий запросов, использование подзапросов в условии соединения, получение данных через точку от полей составного типа, фильтрация виртуальных таблиц без использования параметров, условия, не предполагающие поиск по индексу ("ИЛИ", "не равно" и пр.). |
06.35 Подходящим является индекс, удовлетворяющий следующим требованиям: |
4 | должны выполняться условия 1 и 3. |
06.36 Каковы критерии неоптимального запроса? |
6 | Все варианты верны. |
06.37 Чем JOIN отличается от UNION? |
1 | JOIN добавляет столбцы в результирующую таблицу, а UNION добавляет таблицу с тем же составом столбцов. |
06.38 Чем UNION отличается от UNION ALL? |
2 | при UNION полностью одинаковые строки заменяются одной, на что затрачивается дополнительное время, даже в случаях, когда одинаковых строк в запросах заведомо быть не может. |
06.39 Выберите правильный вариант запроса с SELECT: |
1 | select * from dbo._document180 where _number like 'ТД00%' order by _number |
06.40 Выберите правильный вариант запроса с DELETE: |
3 | delete from dbo._document180 where _number = 'ТД00-000003' |
06.41 Выберите правильный вариант запроса с UPDATE: |
1 | update dbo._document180 set _number = 'ТД00-000003' where _number= 'ТД00-000002' |
06.42 Выберите правильный вариант запроса с UNION: |
2 | select _number, posted from dbo._document180 where _number like 'ТД00%' union all select _number, posted from dbo._document182 order by _number |
06.43 Выберите правильный вариант запроса с JOIN: |
1 | select * from dbo.document180 inner join dbo.document180_vt4131 on dbo.document180._idrref = dbo.document180_vt4131._idrref where dbo.document180._number like 'ТД00%' |
06.44 Чтобы найти длительный запрос Oracle, получение какого события следует прописать в файле настроек технологического журнала? |
3 | DBORACLE. |
06.45 Чтобы найти длительный запрос DB2, получение какого события следует прописать в файле настроек технологического журнала? |
3 | DB2 |
06.46 Чтобы найти длительный запрос PostgreSQL, получение какого события следует прописать в файле настроек технологического журнала? |
3 | DBPOSTGRS. |
06.47 Чтобы найти длительный запрос к файловой базе, получение какого события следует прописать в файле настроек технологического журнала? |
4 | DBV8DBEng. |
06.48 Чтобы найти длительный запрос к внешнему источнику данных, получение какого события следует прописать в файле настроек технологического журнала? |
2 | EDS. |
07.Индексы |
07.01 Структуру индексов регистра сведений можно определить: |
2 | в режиме 1С:Предприятия, использовав функцию глобального контекста "ПолучитьСтруктуруХраненияБазыДанных". |
07.02 Для периодического регистра сведений, в т.ч. подчиненного регистратору, кластерным индексом является (кроме регистров с периодичностью "по позиции регистратора") для 8.3: |
4 | [Хэш-функция разделителей | Независимый разделитель 1 + ] [Измерение 1 + ...] + Период |
07.03 Для периодического регистра сведений, подчиненного регистратору, с периодичностью "по позиции регистратора" кластерным индексом является: |
5 | [Хэш-функция разделителей | Независимый разделитель 1 + ] [Измерение 1 + ...] + Период + Регистратор + НомерСтроки |
07.04 Кластерный индекс для баз на платформе 8.3 и СУБД MS SQL Server периодического регистра сведений, подчиненного регистратору, начинается с (если нет общих реквизитов, являющихся разделителями): |
2 | первого измерения |
07.05 Для ведущего измерения регистра сведений 1С возможность включения индексирования в Конфигураторе отключена. Это означает, что: |
1 | индексы аналогичны и создаются автоматически. |
07.06 Для периодического регистра сведений всегда будет создаваться индекс: |
1 | по периоду. |
07.07 Для чего нужны индексы? |
6 | Верны ответы 2 и 3. |
07.08 Какие индексы создаются средствами платформы? |
5 | Верны ответы 1, 2 и 3. |
07.09 Что такое кластеризованный индекс? |
4 | Индекс, по которому отсортированы и хранятся строки данных в таблицах. |
07.10 Чем кластеризованный индекс отличается от кластерного? |
4 | Это одно и то же. |
07.11 Что такое уникальный индекс? |
3 | Индекс, обеспечивающий отсутствие повторяющихся значений ключа индекса. |
07.12 Кластерный индекс: |
3 | может быть как уникальным, так и не уникальным (обеспечивается СУБД путем добавления служебных данных). |
07.13 Уникальный индекс: |
3 | может быть либо кластерным, либо не кластерным. |
07.14 В чем отличие кластерного индекса от некластерного? |
1 | Кластерные индексы сортируют и хранят строки данных в таблицах или представлениях на основе их ключевых значений, некластерные не трогают сами таблицы. |
07.15 Обязательно ли наличие индексов? |
1 | Нет. |
07.16 Индексирование первого измерения регистра, если это измерение имеет составной тип: |
3 | может улучшить план запроса. |
07.17 Чем B-tree отличается от Binary tree? |
6 | Верны ответы 2, 3 и 4. |
07.18 Двоичное дерево поиска (binary search tree) это двоичное дерево, у которого: |
6 | наличествуют свойства 1, 2 и 3. |
07.19 Двоичная куча (binary heap) это двоичное дерево, у которого: |
6 | наличествуют свойства 1 и 3. |
07.20 Структура внутренних и листовых страниц B-tree: |
1 | обычно различается. |
07.21 Что такое ссылочная целостность? |
1 | качество реляционной базы данных, заключающееся в отсутствии в любой её таблице (отношении) внешних ключей, ссылающихся на несуществующие кортежи. |
07.22 Что такое кортеж? |
1 | упорядоченный набор фиксированной длины. |
07.23 Что такое внешний ключ (foreign key)? |
1 | Совокупность атрибутов таблицы (отношения), совпадающий по типам атрибутов (и при возможности переименования - по именам) с потенциальным ключом другой или этой же таблицы (отношения). |
07.24 Какие требования предъявляются к потенциальному ключу в реляционной модели данных? |
5 | Требования 1 и 2. |
07.25 Что такое целостность базы данных (database integrity)? |
1 | соответствие имеющейся в базе данных информации её внутренней логике, структуре и всем явно заданным правилам. |
07.26 Что такое первичный ключ (primary key)? |
1 | Один из потенциальных ключей отношения, выбранный в качестве основного ключа (или ключа по умолчанию) - который наиболее удобен для тех или иных практических целей, и с наибольшей вероятностью не утратит уникальность со временем. |
07.27 Часть индексов могут содержать значения хэш-функции значений разделителей. Когда такое используется? |
2 | Если тип разделителя - Строка, или разделитель независимый и совместный, или разделителей больше одного. |
07.28 Как можно увидеть, включен ли общий реквизит в состав индекса? |
1 | С помощью MS SQL Management Studio. |
07.29 Общий реквизит, последовательность общих реквизитов, хэш-функция общих реквизитов включаются в состав индекса: |
1 | первым полем (полями). |
07.30 Если в конфигурации используется более одного общего реквизита, являющихся независимыми разделителями (ОРНР): |
5 | верны ответы 1 и 4 |
07.31 Для непериодического регистра сведений, подчиненного регистратору, кластерным индексом является: |
5 | [Хэш-функция разделителей | Независимый разделитель 1 + ] Регистратор + НомерСтроки |
07.32 Для справочников, документов, планов видов характеристик, планов обменов, планов счетов, планов видов расчета, бизнес-процессов, точек маршрута бизнес-процессов, задач, кластерным индексом является: |
1 | [Последовательность независимых разделителей + ] Ссылка |
07.33 Часть индексов могут содержать значения хэш-функции значений разделителей. Что является альтернативой? |
1 | В конфигурации определен единственный независимый разделитель, тип которого не Строка. Тогда в соответствующих индексах используется его значение. |
07.34 Каким по счету полем разделитель итогов (Splitter) включается в состав индекса? |
2 | Последним. |
07.35 В каком случае разделитель итогов (Splitter) включается в состав индекса? |
2 | Если для регистра разрешено разделение итогов, и неважно - включено оно или нет. |
07.36 Как можно увидеть, включен ли разделитель итогов (Splitter) в состав индекса? |
4 | Верны ответы 1 и 2. |
07.37 Применяется ли разделитель итогов (Splitter) в индексе таблицы оборотов регистра накопления? |
1 | Да, для регистра типа "Обороты". |
07.38 Применяется ли разделитель итогов (Splitter) в индексе таблицы остатков регистра накопления? |
3 | Да, для регистра типа "Остатки" |
07.39 По какой схеме при индексировании измерения ИзмерениеN регистра накопления, регистра бухгалтерии, регистра сведений с периодичностью "по позиции регистратора" будет создан индекс по таблице движений? |
1 | [Хэш-функция разделителей | Независимый разделитель 1 + ] ИзмерениеN + Период + Регистратор + НомерСтроки |
07.40 Индексы некоторых регистров содержат поле SimpleKey. Что это? |
1 | Короткий ключ записи регистра. Поле присутствует у непериодических регистров сведений, имеющих хотя бы одно измерение. |
07.41 Индексы некоторых регистров содержат поле Splitter. Что это? |
3 | Разделитель итогов. |
07.42 Некоторые индексы первым полем содержат поле с именем, не относящимся к колонкам таблиц регистра, и не являющимся ни периодом, ни регистратором. В составе имени поля есть "Field". Что это может быть? |
4 | Общий реквизит, являющийся независимым разделителем. |
07.43 Можно ли индексировать ресурсы регистра? |
3 | Можно только у регистра сведений. |
07.44 Можно ли индексировать реквизиты регистра? |
1 | Да, у регистров всех типов. |
07.45 Что и куда добавится в индекс, создаваемый для реквизита, если для реквизита справочника вместо "Индексировать" задать "Индексировать с доп. упорядочиванием"? |
5 | Верны ответы 1 и 2. |
07.46 Можно ли индексировать измерение регистра? |
2 | Да, если оно не ведущее. |
07.47 По какой схеме при индексировании измерения ИзмерениеN периодического регистра сведений (НЕ с периодичностью "по позиции регистратора") будет создан индекс? ИзмерениеN не первое и не единственное. |
2 | [Хэш-функция разделителей | Независимый разделитель 1 + ] ИзмерениеN + Период + Измерение1 + [Измерение2 +...] |
07.48 По какой схеме при индексировании измерения ИзмерениеN непериодического регистра сведений будет создан индекс? ИзмерениеN не первое и не единственное. |
3 | [Хэш-функция разделителей | Независимый разделитель 1 + ] ИзмерениеN + Измерение1 + [Измерение2 +...] |
07.49 Некоторые индексы первым полем содержат поле с именем DataSeparationHash. Что это может быть? Выберите наиболее точный правильный ответ. |
2 | Хэш-функция общих реквизитов, являющихся разделителями. |
08.Транзакции |
08.01 Информационная клиент-серверная система на платформе 1С:8.3 работает в управляемом режиме блокировок данных с включенным режимом совместимости с 8.2. Какие уровни изоляции транзакций при этом будут использоваться в СУБД MS SQL Server? |
3 | Read Uncommitted, Read Сommitted |
08.02 Информационная клиент-серверная система на платформе 1С:8.3 работает в управляемом режиме блокировок данных без режима совместимости с 8.2. Какие уровни изоляции транзакций при этом будут использоваться в СУБД MS SQL? |
4 | Read Сommitted Snapshot |
08.03 Информационная клиент-серверная система на платформе 1С:8.3 работает в автоматическом режиме блокировок данных со снятым режимом совместимости. Какие уровни изоляции транзакций при этом будут использоваться в СУБД MS SQL Sever? |
5 | Read Uncommitted, Repeatable Read, Serializable |
08.04 Информационная клиент-серверная система на платформе 1С:8.3 работает в автоматическом режиме блокировок данных. Какие уровни изоляции транзакций при этом будут использоваться в СУБД MS SQL Server для операций записи? |
3 | Repeatable Read для ссылочных типов данных и Serializable для остальных. |
08.05 WAL применительно к транзакциям это: |
1 | протокол журнализации (и управления буферизацией) Write Ahead Log (WAL) - "пиши сначала в журнал". |
08.06 Протокол WAL имеет следующий смысл: |
3 | если во внешней памяти базы данных находится некоторый объект базы данных, по отношению к которому выполнена операция модификации, то во внешней памяти журнала обязательно находится запись, соответствующая этой операции. |
08.07 Что такое транзакция? |
4 | Верны ответы 1 и 2 |
08.08 UNDO логи хранят: |
3 | старые версии данных. |
08.09 Consistency (Согласованность) в ACID |
2 | является необходимым условием для обеспечения надежности |
08.10 REDO логи хранят: |
2 | новые версии данных. |
08.11 Atomicity (Атомарность) в ACID |
1 | гарантирует, что никакая транзакция не будет зафиксирована в системе частично |
08.12 Уровень изоляции транзакции это: |
2 | то, насколько в транзакции допускаются несогласованные данные. |
08.13 Код на встроенном языке содержит одну транзакцию, вложенную в другую. Какие действия будут отменены в результате выполнения ОтменитьТранзакцию() в коде вложенной транзакции? |
4 | Будут отменены и вложенная, и внешняя транзакция. |
08.14 Используется ли при работе с 1С уровень изоляции Repeatable Read? |
2 | Используется в автоматическом режиме управления блокировками. |
08.15 База работает в управляемом режиме управления блокировками, используется СУБД MS SQL Server 2012, платформа 8.3 без режима совместимости, все настройки соответствуют настройкам по умолчанию. В одной из транзакций произошла эскалация блокировок СУБД на регистре бухгалтерии "Хозрасчетный". Другая транзакция пытается прочитать данные из этого регистра. Что произойдет? |
3 | Без ожиданий будет прочитана версия данных, согласованная на момент начала второй транзакции. |
08.16 База работает в управляемом режиме управления блокировками, используется СУБД MS SQL Server, платформа 8.2 без режима совместимости, все настройки соответствуют настройкам по умолчанию. В одной из транзакций произошла эскалация блокировок СУБД на регистре бухгалтерии "Хозрасчетный". Другая транзакция пытается прочитать данные из этого регистра. Что произойдет? |
4 | Возможно развитие события по варианту 1 или 2. |
08.17 RCSI для MS SQL Server это: |
2 | уровень изоляции транзакции. |
08.18 Куда записывается снимок при использовании Read Committed Snapshot для MS SQL Server? |
3 | В базу tempdb. |
08.19 Какие проблемы решает уровень изоляции Read Committed? |
3 | "Грязного" чтения. |
08.20 Какие проблемы решает, а какие не решает уровень изоляции Read Uncommitted? |
1 | Возможны "грязные", неповторяемые чтения и фантомы. |
08.21 Какие проблемы решает, а какие не решает уровень изоляции Read Committed Snapshot? |
2 | "Грязные" чтения невозможны, возможны неповторяемые чтения и фантомы. |
08.22 Какие проблемы решает, а какие не решает уровень изоляции Repeatable Read? |
3 | "Грязные" и неповторяемые чтения невозможны. Возможны фантомы. |
08.23 Используется ли технологической платформой уровень изоляции Snapshot? |
3 | Нет. |
08.24 Какие проблемы решает, а какие не решает уровень изоляции Serializable? |
4 | "Грязные" и неповторяемые чтения, а также фантомы невозможны. |
08.25 Что такое проблема потерянного обновления? |
1 | Если один и тот же блок данных одновременно изменяют две разные транзакции, то будет зафиксировано только одно изменение, второе потеряется. |
08.26 Что такое проблема "грязного" чтения? |
3 | Чтение данных, добавленных или измененных транзакцией, может дать не точный результат, потому что та транзакция впоследствии не подтвердится (откатится). |
08.27 Что такое проблема неповторяющегося чтения? |
1 | При повторном чтении в рамках одной и той же транзакции оказывается, что ранее прочитанные данные изменены или удалены. |
08.28 Что такое проблема чтения фантомов? |
4 | При повторном чтении в рамках одной и той же транзакции оказывается, что прочитаны строки, которых при предыдущих чтениях не было. |
08.29 Как определить, что используется именно автоматический режим управления блокировками? |
6 | Посмотреть свойство конфигурации "Режим управления блокировкой данных" |
08.30 Как определить, что используется именно автоматический режим управления блокировками? |
4 | Верны ответы 1 и 2. |
08.31 ACID применительно к транзакциям это: |
3 | верны ответы 1 и 2. |
08.32 Атомарность применительно к транзакциям это: |
1 | все или ничего; транзакция должна или пройти или не пройти полностью. |
08.33 Какой из ответов правильно описывает свойство согласованности (Consistency) применительно к транзакциям? |
1 | Каждая успешная транзакция по определению фиксирует только допустимые результаты, не нарушает бизнес-логику и отношения между элементами данных. |
08.34 Изолированность транзакции - это: |
2 | обеспечение целостности данных независимо от действий других пользователей |
08.35 Устойчивость (Durability) применительно к транзакции это: |
3 | после своего завершения она сохраняется в системе, которую ничто не может вернуть в исходное (до начала транзакции) состояние. |
08.36 Как связаны блокировки и транзакции? |
3 | Транзакции и блокировки тесно связаны друг с другом. Транзакции накладывают блокировки на данные, чтобы обеспечить выполнение требований ACID. |
08.37 Наиболее распространенным в централизованных СУБД (включающих системы, основанные на архитектуре "клиент-сервер"): |
2 | является подход, основанный на соблюдении двухфазного протокола синхронизационных захватов объектов баз данных (Two-Phase Locking Protocol, 2PL). |
08.38 В общих чертах подход двухфазного протокола синхронизационных захватов объектов баз данных (Two-Phase Locking Protocol, 2PL) состоит в следующем: |
3 | первая фаза транзакции - накопление захватов; вторая фаза (фиксация или откат) - освобождение захватов. |
08.39 Пессимистичная блокировка устанавливается: |
3 | расширением формы. |
08.40 Оптимистичная блокировка устанавливается: |
2 | платформой, например, при вызове метода ПолучитьОбъект(). |
08.41 Оптимистичная блокировка снимается: |
3 | будет держаться, пока объект есть в памяти (например, до конца процедуры). |
08.42 Вложенные транзакции: |
2 | не поддерживаются. |
08.43 Как найти длительную транзакцию? |
2 | В технологическом журнале собирать события "SDBL" с фильтром по свойствам Func=CommitTransaction или RollbackTransaction, содержащие всю необходимую информацию по длительности транзакций. |
09.Блокировки, избыточные блокировки и методы оптимизации |
09.01 Будет ли в технологическом журнале TLOCK, если управляемую блокировку установить не удалось? |
3 | Будет. |
09.02 В простых случаях, чтобы найти виновника таймаута или взаимоблокировки на управляемых блокировках, достаточно найти: |
1 | какую именно управляемую блокировку, несовместимую с блокировкой-жертвой, установило соединение, указанное в WaitConnections. |
09.03 В чем отличие поведения эскалации блокировок СУБД MS SQL Server от эскалации управляемых блокировок 1С? |
3 | Если другие транзакции держат часть нужных для эскалации ресурсов на СУБД, то при попытке эскалации блокировок СУБД MS SQL Server будет продолжать блокировать ресурсы "по одному" и ждать, пока вся таблица не освободится. При попытке эскалации управляемых блокировок "эскалирующая транзакция" попадет в ожидание от всех, кто еще держит управляемые блокировки на этом ресурсе. |
09.04 Возможна ли эскалация объектной блокировки при работе в разделенном сеансе? |
4 | Нет, эскалация объектной блокировки не возможна |
09.05 Для регистра сведений, подчиненного регистратору, пространства блокировок "DIMS" и "RECORDER": |
1 | не конфликтуют. |
09.06 Возможно ли запретить эскалацию управляемых блокировок? |
3 | Нет, нельзя |
09.07 Возникнет ли эскалация управляемой блокировки по всему пространству блокировок какого-то ресурса в случае включения в этот ресурс общих реквизитов при работе из разделенного сеанса? |
2 | Эскалация возникнет только в рамках области данных |
09.08 Выберите верное утверждение: |
5 | Верны варианты 2 и 4 |
09.09 Если метод Заблокировать() коллекции БлокировкаДанных выполняется вне транзакции: |
1 | блокировки установлены не будут. |
09.10 Как определить время, которое управляемая блокировка ожидала освобождения ресурса? |
1 | По свойствам события Lock:Aсquired в профайлере. |
09.11 Для того чтобы минимизировать влияние блокирующего чтения остатков на производительность системы, надо: |
2 | выяснить, какие остатки нуждаются в блокирующем чтении, в начале транзакции в явном виде записать движения по всем регистрам, которые не требуют контроля остатков (БлокироватьДляИзменения ставить ЛОЖЬ), выполнить все остальные действия, в самом конце транзакции в явном виде записать движения по тем регистрам, которые требуют контроля остатков (БлокироватьДляИзменения ставить ИСТИНА), для каждого регистра выполнить запрос контроля остатков (считывать только отрицательные остатки). |
09.12 Есть непериодический независимый регистр сведений с тремя измерениями. Транзакция устанавливает исключительную управляемую блокировку сперва, в одной процедуре, только по первому измерению, затем, в другой процедуре, только по второму измерению. К чему это приведет? |
1 | На этот регистр в других транзакциях нельзя будет поставить блокировки, которые будут принадлежать плоскости "первой" или "второй" блокировок, установленных в первой транзакции. |
09.13 Как определить, какие именно управляемые блокировки были установлены? |
4 | По технологическому журналу по событию TLOCK. |
09.14 Есть непериодический независимый регистр сведений с тремя измерениями. Транзакция устанавливает разделяемую управляемую блокировку сперва, в одной процедуре, только по первому измерению, затем, в другой процедуре, только по второму измерению. К чему это приведет? |
1 | На этот регистр в других транзакциях нельзя будет поставить исключительные блокировки, которые будут принадлежать плоскости первого и второго измерения одновременно. |
09.15 Как решать проблему эскалации блокировки? |
1 | Блокировать необходимые данные партиями, каждую - в отдельной транзакции, контроль успешности выполнения действий со всеми партиями делать внешними средствами. |
09.16 Как узнать, что произошла эскалация блокировок в MS SQL Server? |
2 | С помощью класса событий Locks:Lock:Escalation профайлера |
09.17 Как узнать, что произошла эскалация управляемых блокировок? |
1 | С помощью событий TLOCK в технологическом журнале |
09.18 Какие бывают режимы управляемых блокировок 1С? |
1 | Разделяемый и исключительный. |
09.19 Какие виды объектных блокировок поддерживаются в системе 1С:Предприятие? |
2 | Оптимистичный и пессимистичные. |
09.20 Какие есть поля пространства блокировок для следующих объектов: Константа.<имя> ? |
2 | Нет полей. |
09.21 Какие есть поля пространства блокировок для следующих объектов: Перерасчет.<имя> ? |
3 | ВидРасчета. |
09.22 Какие есть поля пространства блокировок для следующих объектов: Перерасчет.<имя>.НаборЗаписей ? |
5 | ОбъектПерерасчета. |
09.23 Какие есть поля пространства блокировок для следующих объектов: Последовательность.<имя> ? |
5 | <имя измерения>. |
09.24 Какие есть поля пространства блокировок для следующих объектов: Последовательность.<имя>.НаборЗаписей ? |
4 | Регистратор. |
09.25 Какие есть поля пространства блокировок для следующих объектов: РегистрБухгалтерии.<имя> ? |
5 | Период; <вид движения> - значение системного перечисления ВидДвиженияБухгалтерии; Счет - обязательное поле; Субконто; <вид субконто>; <имя измерения> |
09.26 Какие есть поля пространства блокировок для следующих объектов: РегистрБухгалтерии.<имя>.НаборЗаписей ? |
4 | Регистратор. |
09.27 Какие есть поля пространства блокировок для следующих объектов: РегистрНакопления.<имя> ? |
2 | Период; <имя измерения>. |
09.28 Какие есть поля пространства блокировок для следующих объектов: РегистрНакопления.<имя>.НаборЗаписей ? |
4 | Регистратор. |
09.29 Что такое избыточная блокировка? |
2 | Блокировка, не обусловленная бизнес-логикой приложения. |
09.30 Какие есть поля пространства блокировок для следующих объектов: РегистрРасчета.<имя> ? |
5 | ПериодРегистрации; ПериодДействия; <имя измерения> |
09.31 Какие есть поля пространства блокировок для следующих объектов: РегистрРасчета.<имя>.НаборЗаписей ? |
4 | Регистратор. |
09.32 Какие есть поля пространства блокировок для следующих объектов: РегистрСведений.<имя> ? |
2 | Период - если есть; <имя измерения>. |
09.33 Какие есть поля пространства блокировок для следующих объектов: РегистрСведений.<имя>.НаборЗаписей (только для регистра сведений, подчиненного регистратору)? |
4 | Регистратор. |
09.34 Какие проблемы были бы возможны, если бы не было пессимистических блокировок? |
5 | Верны ответы 1 и 3. |
09.35 Какие по умолчанию есть поля пространства блокировок для следующих объектов: Справочник.<имя> Документ.<имя> ПланОбмена.<имя> ПланСчетов.<имя> БизнеcПроцесс.<имя> Задача.<имя> ПланВидовРасчета.<имя> ПланВидовХарактеристик.<имя> ? |
1 | Ссылка |
09.36 Какие ресурсы блокируются при эскалации блокировок СУБД при работе с информационными системами на платформе 1С? |
2 | Блокируется таблица. |
09.37 Какие события в технологическом журнале будут указывать на то, что управляемую блокировку установить не удалось? |
1 | TTIMEOUT и TDEADLOCK |
09.38 Какие существуют способы задания условий на поля пространств блокировки? |
3 | Верны ответы 1 и 2. |
09.39 Какие типы управляемых блокировок бывают? |
3 | Разделяемые и исключительные блокировки |
09.40 Когда оказывается заблокированной таблица целиком? Выберите наиболее полный правильный ответ. |
4 | В файловом режиме, всегда при эскалации блокировок, при работе с Oracle Database и PostgreSQL в автоматическом режиме блокировок, при использовании Clustered Index Scan или Table Scan в плане запроса, при записи пустого набора в пустую таблицу в автоматическом режиме блокировок. |
09.41 Когда снимаются управляемые блокировки? |
2 | При окончании транзакции. |
09.42 Когда технологической платформой устанавливаются неявные управляемые блокировки? |
3 | При чтении наборов записей. При записи любых объектов. |
09.43 Когда устанавливаются неявные управляемые разделяемые блокировки? |
3 | При чтении набора записей |
09.44 Механизм объектных блокировок 1С:Предприятия позволяет: |
2 | оповестить пользователей о захвате объектных данных 1С:Предприятия (справочников, документов, планов счетов и т.д.). |
09.45 Может ли информация, какую именно управляемую блокировку, несовместимую с блокировкой-жертвой, установило соединение, указанное в WaitConnections, находиться не в том же файле, где есть событие TDEADLOCK или TTIMEOUT? |
1 | Да, она может быть в логах другого часа, другого рабочего процесса, и даже, если в кластере несколько серверов – в логах другого сервера. |
09.46 Можно ли явно снять определенную транзакционную блокировку? |
5 | Нет, встроенный язык не поддерживает такую возможность, т.к. это противоречит 2pl |
09.47 Объектная оптимистичная блокировка предполагает, что: |
1 | во время обновления записи в базе мы единственные, кто меняет эту запись. |
09.48 Объектная пессимистичная блокировка предполагает, что: |
2 | если данные во-время записи в базу могут "поломаться" из-за конкурентного доступа, то они "поломаются", т.е. данные нельзя давать записывать в базу одновременно. |
09.49 Почему поля пространства блокировок Регистратор и <имя измерения> не пересекаются? |
1 | Потому что поле пространства блокировок Регистратор относится к пространству Регистр(Сведений | Накопления | Бухгалтерии).<имя>.НаборЗаписей, а поле <имя измерения> относится к пространству Регистр(Сведений | Накопления | Бухгалтерии).<имя>. |
09.50 Пространства блокировок: |
1 | определены в платформе 1С:Предприятия 8.1 и выше и соответствуют структуре прикладных объектов конфигурации. |
09.51 Пространство блокировок без суффикса НаборЗаписей: |
2 | используется в тех случаях, когда анализируются некоторые данные этого объекта (например, остатки регистра), или когда выполняются какие-либо операции, приводящие к изменению существующих данных объекта (например, восстановление границы последовательности). |
09.52 Пространство блокировок с суффиксом НаборЗаписей: |
1 | используется в тех случаях, когда необходимо заблокировать сами записи данного объекта (например, при добавлении новых записей). |
09.53 Разделение итогов регистров накопления и бухгалтерии: |
2 | работает и в автоматическом режиме управления блокировками, и в управляемом, но в автоматическом режиме свойство БлокироватьДляИзменения вызывает исключительную ситуацию |
09.54 С какого числа записей в наборе начинается эскалация управляемых блокировок 1С в 8.2? |
1 | Начинается с 20 000 записей в одной транзакции |
09.55 С какого числа записей в наборе начинается эскалация управляемых блокировок 1С в 8.3? |
3 | Начинается со 100 000 записей в одной транзакции в информационной базе |
09.56 С помощью каких событий расследуется таймаут на управляемых блокировках? |
2 | TLOCK и TTIMEOUT. |
09.57 Свойство БлокироватьДляИзменения: |
1 | при попытке использования в автоматическом режиме блокировки вызывает исключительную ситуацию. |
09.58 Укажите правильный порядок событий в технологическом журнале при возникновении таймаута на управляемых блокировках: |
2 | TLOCK виновника ...(возможно, другие TLOCK)... TTIMEOUT TLOCK жертвы ...(возможно, другие TLOCK)... |
09.59 Устаналиваются ли управляемые блокировки при выполнении запроса? |
6 | Нет, не устанавливаются |
09.60 Чем уровень (mode) блокировки отличается от уровня изоляции транзакции? |
4 | Верны ответы 1 и 2. |
09.61 Что произойдет, если в момент эскалации управляемой блокировки по определенному пространству блокировок в этом пространстве уже установлена какая-то несовместимая управляемая блокировка? |
4 | Возникнет ожидание при эскалации блокировки, пока несовместимая блокировка не будет снята либо не будет превышено время ожидания предоставления возможности установки блокировки |
09.62 Что такое блокировка? |
1 | Это механизм, с помощью которого сервер (СУБД, а также 1С) синхронизирует одновременный доступ нескольких пользователей к одному фрагменту данных. |
10.Взаимоблокировки и методы их исправления |
10.01 Конфигурация в режиме совместимости с 8.2. СУБД MS SQL Server. Для исправления взаимоблокировки вида "захват ресурсов в разном порядке", когда она возникает на исключительных блокировках СУБД, необходимо: |
3 | Найти второй ресурс и вторую транзакцию и изменить порядок захвата ресурсов |
10.02 При борьбе с взаимоблокировками и необходимости перевода базы в управляемый режим управления блокировками правильная последовательность действий: |
2 | сначала перевести базу в управляемый режим управления блокировками, только потом заниматься избавлением от взаимоблокировок. |
10.03 Что такое взаимоблокировка? |
1 | Ситуация, когда две или более транзакции ждут друг друга из-за того, что каждая из сторон блокирует ресурс, необходимый другой стороне. |
10.04 Какая схема представляет собой схему взаимоблокировки с повышением уровня блокировки ресурса (T1,T2 – транзакции, S/X –разделяемая/исключительная, Р1,Р2 – ресурсы)? |
3 | Т1: S(P1) -> X(P1), T2: S(P1) -> X(P1). |
10.05 Каковы наиболее типичные причины взаимоблокировок? |
2 | Захват ресурсов в разном порядке, повышение уровня блокировки в рамках одной транзакции, неоптимальная работа запроса. |
10.06 Для чего на практике бывает нужно использовать свойство БлокироватьДляИзменения? |
2 | Установка управляемой блокировки без учета разделения итогов ухудшает параллельность записи, но защищает от взаимоблокировок при контроле остатков. |
10.07 Какая схема представляет собой схему взаимоблокировки с установкой блокировок в различном порядке (T1,T2 – транзакции, S/X – разделяемая/исключительная, Р1,Р2 – ресурсы)? |
5 | Верны ответы 2 и 3. |
10.08 Если взаимоблокировка возникает по причине попыток эскалаций блокировок СУБД SQL Server в двух параллельных транзакциях (наборы не пересекаются), какая это будет взаимоблокировка? |
4 | Взаимоблокировки не произойдет. |
10.09 Если взаимоблокировка возникает по причине чтения остатков по регистру с включенным режимом разделения итогов после отмены проведения документов в двух параллельных транзукциях, какая это будет взаимоблокировка? |
1 | Захват ресурсов в разном порядке. |
10.10 Есть регистр сведений с подчинением регистратору и периодичностью по позиции регистратора. Два сеанса пытаются записать одинаковые значения измерений. Т.к. регистр с подчинением регистратору и периодичностью по позиции регистратора, то запись проходит успешно. Далее в транзакции оба сеанса хотят получить срез последних по измерению. Что произойдет? Используется платформа 8.2, управляемый режим управления блокировками, SQL Server. |
2 | Взаимоблокировка СУБД "захват ресурсов в разном порядке". |
10.11 Есть регистр сведений с подчинением регистратору и периодичностью по позиции регистратора. Два сеанса пытаются записать одинаковые значения измерений. Т.к. регистр с подчинением регистратору и периодичностью по позиции регистратора, то запись проходит успешно. Далее в транзакции оба сеанса хотят получить срез последних по измерению. Как предотвратить взаимоблокировку СУБД? Используется платформа 8.2, управляемый режим управления блокировками, SQL Server. |
1 | Ставить явную управляемую исключительную блокировку перед записью движений в базу. Это позволит организовать очередь. |
10.12 Отличие взаимоблокировки от таймаута: |
3 | при таймауте "жертва" получает сообщение об ошибке по умолчанию через 20 секунд, при взаимоблокировке - через 100 мс - 5 с, в некоторых случаях - немедленно. |
10.13 С помощью каких событий расследуется взаимоблокировка на управляемых блокировках? |
3 | TLOCK и TDEADLOCK |
10.14 Уменьшить вероятность возникновения взаимоблокировок могут следующие соглашения: |
2 | осуществлять доступ к объектам в одинаковом порядке, избегать взаимодействия с пользователем в транзакциях, уменьшать длительность транзакций, блокировка в транзакции должна изначально осуществляться с максимально необходимым уровнем изоляции. |
10.15 В информации о событии TDEADLOCK: |
1 | в явном виде указано, кто кого ждет (DeadlockConnectionIntersections='7 6). |
10.16 Наличие буквы "I" в графе взаимоблокировки SQL Server (напр. IX): |
4 | говорит о том, что взаимоблокировка была распознана на уровне блокировок намерений. |
10.17 Есть регистр сведений с подчинением регистратору и периодичностью по позиции регистратора. Два сеанса пытаются записать одинаковые значения измерений. Т.к. регистр с подчинением регистратору и периодичностью по позиции регистратора, то запись проходит успешно. Далее в транзакции оба сеанса хотят получить срез последних по измерению. Как предотвратить управляемую взаимоблокировку? Используется платформа 8.2, управляемый режим управления блокировками, SQL Server. |
2 | Управляемой взаимоблокировки не будет, но будет взаимоблокировка на уровне СУБД |
10.18 Какой инструмент позволяет проводить расследование взаимоблокировок СУБД MS SQL Server? |
5 | Верны ответы 3 и 4. |
10.19 Укажите правильный порядок событий в технологическом журнале при возникновении взаимоблокировки на управляемых блокировках: |
3 | TLOCK-1 участника 1 ...(возможно, другие TLOCK)... TLOCK-1 участника 2 ...(возможно, другие TLOCK)... TDEADLOCK TLOCK-2 участника 1 TLOCK-2 участника 2 |
10.20 Есть регистр сведений с подчинением регистратору и периодичностью по позиции регистратора. Два сеанса пытаются записать одинаковые значения измерений. Т.к. регистр с подчинением регистратору и периодичностью по позиции регистратора, то запись проходит успешно. Далее в транзакции оба сеанса хотят получить срез последних по измерению. Как предотвратить взаимоблокировку СУБД? Используется платформа 8.3, управляемый режим управления блокировками, PostgreSQL. |
2 | Взаимоблокировки не будет |
11.Нагрузочное тестирование |
11.01 Какие задачи решают нагрузочные тесты? |
5 | Верны варианты 1, 2 и 3. |
11.02 Какие задачи решает функциональное тестирование? |
3 | Проверка работоспособности конфигурации информационной системы. |
11.03 Из чего состоит сценарий тестирования? |
1 | Роль, количество пользователей, перечень операций, интенсивность, права пользователей, тип клиентского приложения. |
11.04 Как максимально точно определить частоту выполнения операций в информационной системе? |
3 | По данным подсистемы БСП Оценка Производительности. |
11.05 Если контроль остатков мешает выполняться нагрузочному тесту: |
2 | его надо выполнять, но можно игнорировать его результаты. |
11.06 Как выбрать оборудование для проведения нагрузочного тестирования? |
1 | Система для нагрузочного теста должна совпадать с целевой по: варианту использования 1С:Предприятия (файловая или клиент-серверная), расположению компонентов системы, версию программных продуктов (в т.ч. СУБД,технологической платформы, конфигураций). Эталонная система работает на реальном оборудовании, параметры которого известны. |
11.07 Что нужно знать для того, чтобы более точно посчитать требования к оборудованию для нагрузочного теста? |
1 | Сценарий выполнения операций, действия пользователей в рамках каждой операции, загрузку оборудования при выполнении каждой операции, количество пользователей каждой операции. |
11.08 Рекомендуется считать операцию ключевой при выполнении одного из следующих условий: |
1 | Операция выполняется одновременно значительным количеством пользователей (более 10) |
11.09 Стоит ли тестировать нагрузочным тестом конфигурацию в режиме автоматических блокировок? |
4 | Стоит всегда, если возникнут проблемы, то причины некоторых проблем могут быть заранее известны. |
11.10 Можно ли подключиться отладчиком к работающему витруальному рабочему месту (ВРМ) в ходе теста? |
1 | Можно. |
11.11 Если во всех регистрах накопления и бухгалтерии выключено разделение итогов, и если по регистру бухгалтерии и по одному из регистров накопления была явно зафиксирована работа с пересекающимися данными и таймауты из-за этого, то при проведении нагрузочного теста: |
3 | могут быть применены оба подхода. |
11.12 Укажите верное утверждение |
3 | Нагрузочный тест позволяет выявлять проблемы параллельной работы |
11.13 Сколько агентов тест-центра должно быть запущено на сервере, на котором планируется запускать виртуальные рабочие места в 4 сеансах RDP? |
1 | 4 |
11.14 Можно ли запустить виртуальное рабочее место тест-центра с ключом, например /TestManager? |
2 | Можно. |
11.15 Какую задачу решают агенты ТестЦентра? |
1 | Агенты ТестЦентра используются для запуска ВРМ на конкретном сервере в конкретной сессии ОС |
11.16 Можно ли использовать номер порта 1540 для управления клиентом тестирования с менеджера тестирования? |
2 | Нельзя, если на компьютере установлен сервер 1С:Предприятия с установками по умолчанию. |
11.17 Мы хотим автоматизировать в сценарии нагрузочного тестирования проведение документа из открытой формы документа и открытой формы списка документа с динамическим списком. Нам необходимо встроить счетчики замеров времени выполнения операции проведения документа из формы документа, открытого из формы списка. Мы точно хотим замерить время проведения документа и время обновления списка. Куда должно быть встроено окончание замера? |
3 | В отдельную процедуру, исполняющуюся по обработчику ожидания, запущенного из процедуры ТЦВыполнить после выполнения проведения документа и используемого для продолжения выполнения сценария. |
11.18 Как точно получить частоту (интенсивность) формирования определенных отчетов для сценария тестирования? |
3 | С помощью подсистемы БСП ОценкаПроизводительности, встроив замер для определенного отчета |
11.19 Общий индикатор прогресса теста в ТестЦентре показывает прогресс для: |
3 | прошедшего времени относительно настроек "Ограничений" сценария |
11.20 Действия на этапе "Инициализация" (тест-центр старше 2.0): |
1 | выполняются каждым рабочим местом. |
11.21 Нужно ли запускать отдельное приложение для запуска агента ТестЦентра, если все ВРМ, в т.ч. управляющее, запускаются из сеанса одного пользователя? |
2 | Нет, в данной ситуации можно запускать из управляющей сессии. |
11.22 Что такое ВРМ в ТестЦентре? |
1 | Виртуальные рабочие места |
11.23 Обработка с ИТС, преобразующая записанные платформой 8.3 действия пользователя в код на языке 1С:Предприятия, называется: |
1 | UILogToScript.epf |
11.24 Чтобы настройки тестовой обработки, заданные на форме обработки (по кнопке "Настроить..." справочника Роли), оказались сохраненными и применились при проведении нагрузочного теста, они должны быть: |
2 | реквизитами обработки. |
11.25 Требуется провести нагрузочное тестирование конфигурации в обычных формах. После встраивания ТестЦентра и подготовки обработок переходим к первому запуску. Должен ли агент и управляющий сеанс ТестЦентра быть запущен в обычных формах для запуска нагрузочного теста? |
4 | Управляющий сеанс обязательно должен быть запущен в управляемых формах. Агент должен быть запущен в любом режиме. |
11.26 Один менеджер тестирования 8.3 может управлять: |
1 | только одним клиентом тестирования. |
11.27 Если менеджер тестирования 8.3 управляет несколькими клиентами тестирования, и в каждом из клиентов он "нажимает" ровно одну кнопку на форме, начинающую длительную транзакцию (строки, вызывающие "нажатия", идут подряд друг за другом), то как они выполнятся? |
3 | Менеджер тестирования 8.3 может управлять только одним клиентом тестирования. |
11.28 Если в ходе нагрузочного теста ключевая операция начинается и заканчивается на сервере, после чего выполнение тестовой обработки продолжается, начатый замер времени: |
3 | надо принудительно завершить методом ОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремени(КлючеваяОперация, ВремяНачала). |
11.29 Если в ходе нагрузочного теста ключевая операция проведения документа начинается и заканчивается на клиенте, после чего выполнение тестовой обработки продолжается, начатый замер времени: |
4 | надо принудительно завершить методом ОценкаПроизводительностиКлиентСервер.ЗакончитьРучнойЗамерВремени(Идентификатор), который нужно вызвать из обработчика ожидания в тестовой обработке. |
12.Методики расследования проблем производительности |
12.01 У проблем производительности есть два обычных подозреваемых. Это: |
1 | плохая работа кода и плохая работа запросов. |
12.02 Наиболее точный и полный показатель недостаточной производительности это: |
4 | совокупность перечисленных показателей. |
12.03 Установка параметра "Время ожидания блокировки данных (в секундах)" : |
4 | верны ответы 1 и 2. |
12.04 Установка значения параметра "Время ожидания блокировки данных (в секундах)" в 180 секунд: |
3 | Фактически, "заметание грязи под ковер". |
12.05 Можно ли выполнять подсчет и анализ клиент-серверных вызовов с помощью замера производительности в конфигураторе? |
3 | Да, но нужно учитывать, что этот режим показывает только вызовы, которые выполняются непосредственно в ходе выполнения модулей и не показывает вызовы, которые выполняются платформой вне выполнения модулей. |
12.06 Как режим сжатия тонкого клиента влияет на производительность? |
4 | Зависит от баланса пропускной способности сети и мощности клиентского компьютера. При наличии явной зависимости подбирается экспериментально. |
12.07 Чем плохо большое количество клиент-серверных вызовов? |
2 | Это замедляет работу - на каждый клиент-серверный вызов тратится время (в т.ч. на переустановку соединения), наиболее ощутимое на медленных каналах связи |
12.08 Как изменить режим сжатия при работе тонкого клиента? |
6 | Верны ответы 2 и 4. |
12.09 Как пропускная способность канала влияет на производительность? Выберите наиболее полный правильный ответ. |
1 | Каждый вид клиента в условиях конкретного прикладного решения имеет свою границу пропускной способности сети, выше которой влияния на производительность нет, ниже которой производительность последовательно снижается. |
12.10 Каковы рекомендованные требования к пропускной способности сети для производительной работы 1С? |
4 | Требований нет, т.к. они определяются из задачи работоспособности, а не производительности. Единственное требование - сеть должна быть работоспособной. |
12.11 При прочих равных более существенным для производительности сервера приложений 1С для целей многозадачной работы является: |
4 | Суммарное количество ядер процессоров. |
12.12 Влияет ли антивирусное программное обеспечение на производительность клиент-серверного режима работы 1С? |
2 | Может существенно влиять и на сервере, и на клиенте. |
12.13 Какой командой проверяется отсутствие промежуточных точек маршрутизации? |
2 | tracert имя_целевого_хоста |
12.14 Влияют ли межсетевые экраны на производительность клиент-серверного режима работы 1С? |
4 | Могут влиять, вплоть до полной неработоспособности. |
12.15 Оказывает ли влияние на производительность размещение серверов ландшафта 1С в разных подсетях? |
3 | Верны ответы 1 и 2. |
12.16 Какие показатели производительности можно увидеть в окне показателей производительности? Выберите наиболее полный правильный ответ. |
4 | Текущее и накопленное: количество вызовов сервера, длительность вызова сервера, объем отправленных данных, объем принятых данных. В отдельных окнах - историю текущих и историю накопленных значений. |
12.17 Сервера 1С и СУБД находятся в разных виртуальных подсетях. Маршрутизация осуществляется средствами активного оборудования. Достаточно ли беспроблемного прохождения команды ping для исключения возможного негативного влияния маршрутизации на производительность комплекса? |
6 | Верны ответы 2, 3, 4. |
12.18 Как получить точное число клиент-серверных вызовов? |
1 | С помощью окна показателей производительности. |
12.19 Как включить режим отображения показателей производительности? |
6 | Верны ответы 1, 2 и 4. |
12.20 Укажите правильную формулу, указывающую насколько изменится Apdex всей информационной системы в случае оптимизации выбранной ключевой операции? Приняты обозначения: • N – общее число выполнений данной операции; • NS – число выполнений операции с временем от 0 до Т; • NT – число выполнений операции с временем от T до 4T; • NF – число выполнений операции с временем больше 4T; • T – требуемое время, за которое должна выполняться операция; • Nall – число выполнений всех операций. |
1 | DeltaApdex = (NF + NT/2)/Nall |
13.Методики расследования проблем параллельной работы |
13.01 Разделение итогов регистров позволяет повысить параллельность операций: |
1 | записи |
13.02 Включение режима разделения итогов при использовании платформы 8.2: |
4 | увеличивает параллельность операций записи, но на практике это существенно только для тех транзакций, где нет чтения записываемых данных. |
13.03 После включения режима разделения итогов регистра в системе на платформе 8.2: |
3 | записи в регистр потребуется выполнять со свойством "БлокироватьДляИзменения = Истина" в случаях, когда после записи выполняется чтение итогов регистра. |
13.04 После включения режима разделения итогов регистра накопления "ТоварыВРезерве" в системе на платформе 8.2 начали возникать взаимоблокировки. Укажите способ решения проблемы. |
5 | Все операции записи в данный регистр проводить с установкой свойства "БлокироватьДляИзменения = Истина", если после записи выполняется чтение итогов регистра. |
13.05 Когда снимаются разделяемые управляемые блокировки? |
2 | В конце транзакции |
13.06 Независимое разделение данных позволяет: |
1 | использовать одну базу с одной конфигурацией для учета в нескольких организациях или подразделениях, при этом доступ к разделённым данным возможен только в пределах своей области данных. |
13.07 Независимое разделение данных в информационной базе применяется: |
4 | только к выбранным планам обмена, регламентным заданиям, константам, справочникам, документам, планам счетов, планам видов характеристик, планам видов расчета, регистрам всех видов, бизнес-процессам и задачам. |
13.08 Независимое и совместное разделение данных наиболее оптимально с точки зрения производительности подходит для решения задачи: |
1 | использовать одну базу с одной конфигурацией для учета в нескольких организациях или подразделениях, при этом доступ к разделённым данным возможен только в пределах своей области данных. |
13.09 Для независимого разделения данных в информационной базе используется: |
5 | объект метаданных "общий реквизит" с использованием разделяемых данных "Независимо". |
13.10 Независимое и совместное разделение данных в информационной базе применяется: |
4 | только к выбранным планам обмена, регламентным заданиям, константам, справочникам, документам, планам счетов, планам видов характеристик, планам видов расчета, регистрам всех видов, бизнес-процессам и задачам. |
13.11 Для независимого разделения данных в информационной базе используется: |
1 | объект метаданных "общий реквизит" с использованием разделяемых данных "Независимо и совместно". |
13.12 Использование режима разделения данных "независимо и совместно" в информационной базе в качестве способа ограничения доступа к данным рядовых пользователей при полном доступе для руководства организации при использовании версий 8.3.5 и младше: |
2 | технически возможно, но производительность работы пользователей с полным доступом может оказаться неприемлемо низка. |
13.13 В случае необходимости создания информационной системы с ограничением доступа рядовых пользователей к части данных, но при полном доступе руководства, лучше рассматривать вариант: |
1 | RLS. |
13.14 В неразделенном режиме низкая производительность информационной системы, использующей независимое и совместное разделение данных, для пользователей, имеющих доступ ко всем областям данных, обусловлена: |
1 | Отсутствием подходящих индексов в СУБД, т.к. разделитель идёт первым полем для всех индексов таблиц разделённых данных, и для таких пользователей чтение разделённых данных всегда будет происходить сканированием таблиц. |
13.15 Как проверить, что при проведении документа не возникает избыточной блокировки? |
4 | Провести два таких документа с непересекающимися данными, при этом вставать под отладкой в конце транзакции проведения одного из них. |
13.16 При включении использования текущих итогов параллельность записи наборов регистров бухгалтерии и накопления (остатков), отличающихся только периодом (месяцем) в управляемом режиме управления блокировками (разделение итогов запрещено): |
1 | Прекращается. |
13.17 При включении использования текущих итогов параллельность записи наборов регистров бухгалтерии и накопления (остатков), отличающихся только периодом (месяцем) в автоматическом режиме управления блокировками, разделение итогов выключено: |
1 | прекращается. |
13.18 Может ли одна транзакция читать константу, а другая в это же время ее записывать? |
2 | Да, если используется 8.3 без режима совместимости с 8.2, управляемый режим управления блокировками и MS SQL Server 2005 и старше. |
13.19 Может ли одна транзакция записывать одну константу, а другая в это же время записывать другую? |
5 | Да, если используется 8.2.14 и старше без режима совместимости. |
13.20 Выполнение какого действия является узким местом при перемещении границы последовательности? |
6 | Верны ответы 2 и 3. |
13.21 Каковы возможности по параллельной записи для наборов записей регистра расчета с использованием фактического периода действия? |
1 | Возможна параллельная запись, если отличается период действия (месяц) или измерение, у которого стоит признак "базовое". |
13.22 Какая таблица является узким местом при перемещении границы последовательности? |
4 | При перемещении назад - таблица границ последовательности, при перемещении вперед - могут быть как обе таблицы, так и только таблица границ последовательности. |
13.23 Необходимо обеспечить отражение документов в некотором учете строго последовательно. При этом прогнозируется высокая параллельность работы. Какой вариант реализации выбрать для уменьшения числа возможных проблем параллельной работы? |
2 | Использовать последовательности, но отключить движение границы последовательности при проведениии документов. Восстанавливать работу с последовательностью в фоне. |
13.24 Каковы возможности по параллельной записи для наборов записей регистра бухгалтерии? Разделение итогов выключено. Текущие итоги не используются. Режим управления блокировками - управляемый. |
1 | Возможна параллельная запись, только если отличается период (месяц), или счет, или хотя бы одно измерение. |
13.25 Каковы возможности по параллельной записи для наборов записей регистра бухгалтерии? Разделение итогов выключено. Используются текущие итоги. Режим управления блокировками - управляемый. |
2 | Возможна параллельная запись, только если отличается счет, или хотя бы одно измерение. |
13.26 Каковы возможности по параллельной записи для наборов записей регистра бухгалтерии? Разделение итогов разрешено и включено. |
3 | Возможна параллельная запись совпадающих данных. |
13.27 Каковы возможности по параллельной записи для наборов записей регистра сведений (независимого непериодического)? |
1 | Возможна параллельная запись, если отличается хотя бы одно измерение. |
13.28 Каковы возможности по параллельной записи для наборов записей регистра накопления (остатков)? Разделение итогов выключено. Текущие итоги не используются. Дата актуальности итогов установлена раньше, чем период любой записи наборов записей. Режим управления блокировками - управляемый. |
1 | Возможна параллельная запись, только если отличается период (месяц), или хотя бы одно измерение. |
13.29 Каковы возможности по параллельной записи для наборов записей регистра накопления (остатков)? Разделение итогов выключено. Используются текущие итоги. Режим управления блокировками - управляемый. |
2 | Возможна параллельная запись, только если отличается хотя бы одно измерение. |
13.30 Каковы возможности по параллельной записи для наборов записей регистра накопления (остатков)? Разделение итогов разрешено и включено. |
3 | Возможна параллельная запись совпадающих данных. |
13.31 Каковы возможности по параллельной записи для наборов записей регистра накопления (оборотов)? Разделение итогов выключено. Текущие итоги не используются. Режим управления блокировками - управляемый. Граница актуальности итогов установлена позже любой записи в наборах записей. |
2 | Возможна параллельная запись, только если отличается хотя бы одно измерение. |
13.32 Каковы возможности по параллельной записи для наборов записей регистра накопления (оборотов)? Разделение итогов выключено. Используются текущие итоги. Режим управления блокировками - управляемый. |
2 | Возможна параллельная запись, только если отличается хотя бы одно измерение. |
13.33 Каковы возможности по параллельной записи для наборов записей регистра накопления (остатков)? Разделение итогов разрешено и включено. |
3 | Возможна параллельная запись совпадающих данных. |
13.34 Каковы возможности по параллельной записи для наборов записей регистра сведений (независимого периодического)? Флаги "разрешить итоги" не используются. |
1 | Возможна параллельная запись, только если отличается период (месяц), или хотя бы одно измерение. |
13.35 Каковы возможности по параллельной записи для наборов записей регистра расчета без использования фактического периода действия? |
4 | Возможна параллельная запись наборов с разными регистраторами |
13.36 Каковы возможности по параллельной записи для наборов записей регистра сведений (подчиненного регистратору)? Флаги "Разрешить итоги" не используются. |
3 | Возможна параллельная запись наборов с разными регистраторами. |
13.37 Каковы возможности по параллельной записи для элементов объектных типов: справочников, документов, планов видов характеристик, планов счетов (т. е. счета), планов видов расчета, бизнес-процессов, задач, планов обмена (т. е. узлов обмена)? |
4 | Верны ответы 1 и 3. |
13.38 Какие симптомы (или симптом) могут указывать на возникновение очередей в информационной системе? |
2 | Частые ошибки о превышении времени предоставления управляемых блокировок |
13.39 Каковы обычные подозреваемые при решении проблем параллельности? |
6 | Верны ответы 1, 2 и 3. |
13.40 Что может находиться за "расшитым" "бутылочным горлышком"? |
1 | Каскад из неопределенного числа других "бутылочных горлышек". |
13.41 Чтобы ответить на вопрос: имеем мы дело с проблемой производительности или проблемой параллельности: |
1 | найти наиболее типичного представителя действий, выполненных по ключевой операции, для которой требуется улучшать APDEX, и в нерабочее время его выполнить. |
14.Стандарты разработки |
14.01 В общем случае, при объединении в запросе результатов нескольких запросов следует использовать конструкцию: |
1 | "ОБЪЕДИНИТЬ ВСЕ". |
14.02 Всегда ли можно переносить условие из секции ГДЕ в параметры фильтрации виртуальной таблицы? |
1 | Да, всегда. |
14.03 Вызов модальных окон в транзакциях: |
3 | всегда - грубая ошибка. |
14.04 Вынос в серверный общий модуль тысячекратно выполняемой процедуры, вычисляющей строковую переменную (это единственное, что она делает): |
2 | если тысячекратный вызов идет с клиента, замедляет работу и создает ненужную нагрузку на оборудование. |
14.05 Если в запросе используется получение значения через точку от поля составного ссылочного типа, общая рекомендация заключается: |
3 | Ограничивать количество возможных типов при помощи метода ВЫРАЗИТЬ |
14.06 Если в запросе используется получение значения через точку от поля составного ссылочного типа, то при выполнении этого запроса: |
4 | верны ответы 1 и 2. |
14.07 Если в регистре измерение указано ведущим, то при удалении объекта удаляется и запись в регистре. Если такое происходит параллельно в нескольких сеансах: |
1 | возникают конфликты блокировок. Для исключения требуется отказаться от непосредственного интерактивного удаления объектов в транзакциях и при интерактивных действиях пользователей , ставить только пометку на удаление. |
14.08 Если запрос содержит соединения с подзапросами, то это может привести к следующим негативным последствиям: |
5 | Верны ответы 2 и 3. |
14.09 Если пользователь включен в состав трех ролей, использующих полностью одинаковые ограничения RLS на определенный справочник, сколько соединений допишет механизм RLS к запросу к этому справочнику для этого пользователя? |
5 | 3 одинаковых. |
14.10 Запись других объектов (других элементов справочиков и документов) внутри транзакции: |
5 | верны ответы 3 и 4. |
14.11 Запрос ВЫБРАТЬ Товар.Наименование ИЗ Справочник.Товары КАК Товар ГДЕ Артикул = "001" ИЛИ Артикул = "002" следует заменить на запрос: |
1 | ВЫБРАТЬ Товар.Наименование ИЗ Справочник.Товары КАК Товар ГДЕ Артикул = "001" ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ Товар.Наименование ИЗ Справочник.Товары КАК Товар ГДЕ Артикул = "002" |
14.12 Использование конструкций Попытка...Исключение…КонецПопытки внутри транзакций: |
6 | Верны ответы 2, 3 и 4. |
14.13 Исправление очень плохо написанного, медленно выполняющиегося неоптимального кода в рамках работ по оптимизации производительности: |
4 | нужно проводить, если он себя проявляет в рамках проблем производительности, в порядке согласованной очередности приоритетов и выявленной степени вляния на производительность. |
14.14 К каким проблема может привести наличие OR в условии? |
2 | СУБД не сможет использовать индексы таблиц и будет выполнять сканирование, что увеличит время работы запроса и вероятность возникновения блокировок |
14.15 Как гарантированно избежать блокировок на "пустых таблицах" в MS SQL Server? |
4 | Верны ответы 2 и 3. |
14.16 Как изменится производительность тестовой информационной базы при переводе тестовой информационной базы с СУБД MS SQL Server на СУБД PostgreSQL? |
4 | Надо проверять именно на той информационной базе, производительность которой требуется оценить, например, провести нагрузочное тестирование. Все СУБД, с которыми может работать 1С:Предприятие, имеют бесплатные редакции. |
14.17 Как можно избавиться от запроса в цикле? |
5 | Верны ответы 2 и 3. |
14.18 Как ограничить размер выборки в запросе? |
5 | Верны ответы 1, 2, 3. |
14.19 Как определить, выполнялся отчет в транзакции или нет? |
1 | По событиям BEGIN TRANSACTION и COMMIT TRANSACTION в SQL Server Profiler. |
14.20 Как получить время проведения документов из динамического списка при многопользовательской работе? |
1 | Подсистемой БСП ОценкаПроизводительности |
14.21 Каким образом можно, не добавляя намеренно таблиц в запрос, превысить ограничение на 256 таблиц в запросе при использовани SQL Server? |
5 | Верны ответы 1, 2 и 3. |
14.22 Какое максимальное количество таблиц может участвовать в запросе при использовании Microsoft SQL Server? |
2 | 256 |
14.23 Кардинально снижено влияние проведения документов в десятки тысяч строк на параллельность работы пользователей в системе (использовалась СУБД MS SQL Server). Что было сделано? |
1 | Документы на десятки тысяч строк разбиты на нужное количество документов по 1000 строк. |
14.24 Когда не следует использовать подзапросы? |
6 | Верны ответы 1, 2, 3, 4. |
14.25 Конструкция Ссылка.Ссылка: |
4 | Всегда является ошибкой и в коде на встроенном языке, и в запросах на языке запросов. |
14.26 Конфликт блокировок на "пустых таблицах" в MS SQL Server происходит: |
1 | В автоматическом режиме управления блокировками при записи пустых наборов в пустую таблицу. |
14.27 Ликвидация запросов в цикле: |
1 | это нечастый случай, когда оптимизация реально снижает нагрузку на оборудование сервера приложений 1С. |
14.28 Может ли порядок перечисления логических выражений в составном логическом выражении влиять на то, все ли их придется проверять? |
4 | Да, и в коде на встроенном языке, и в коде на языке запросов. |
14.29 Обращение к реквизитам регистратора регистра (например, ТоварыНаСкладах.Регистратор.Дата): |
4 | всегда влияет на производительность. |
14.30 Ошибки блокировок в форме списка (обычные формы): |
3 | возможны, если в событиях ПриПолученииДанных() и в ПриВыводеСтроки() есть запросы через объектную модель. |
14.31 Ошибки блокировок при формировании отчета: |
3 | возможны, например, при использовании построителя отчета, если отчету требуется получать согласованные данные (например по неделям), он будет выполняться в транзакции. |
14.32 Получение метаданных объекта конфигурации следует выполнять с помощью: |
1 | метода Метаданные() этого объекта ( СправочникОбъект.Метаданные() ), это существенно быстрее. |
14.33 При использовании в коде программы через объектную модель объекта, содержащего реквизит с типом Хранилище значения, содержащий файл Word объемом 50 MБ: |
1 | этот реквизит будет считан из базы, даже если к этому реквизиту не обращались. |
14.34 При использовании конструкции Попытка...Исключение… КонецПопытки внутри вложенной транзакции, если внутри этой конструкции возникла восстановимая исключительная ситуация: |
2 | на уровне общей транзакции исключительная ситуация также будет расценена как восстановимая. |
14.35 При использовании конструкции Попытка...Исключение… КонецПопытки снаружи вложенной транзакции, если внутри этой транзакции возникла восстановимая исключительная ситуация: |
3 | при возврате в транзакцию верхнего уровня исключительная ситуация будет представлена как откат вложенной транзакции, что будет расценено как невосстановимая ошибка. |
14.36 При использовании конструкций Попытка...Исключение… КонецПопытки внутри транзакций ошибка по причине "В данной транзакции уже происходили ошибки!" появляется: |
3 | при первом обращении к данным после исключительной ситуации. |
14.37 При копировании строк между различными таблицами значений (табличными частями и т.п.) со схожим составом колонок следует использовать: |
2 | метод глобального контекста ЗаполнитьЗначенияСвойств(). |
14.38 При необходимости поиска большого числа элементов одной таблицы значений в другой большой таблице значений в качестве одного из путей оптимизации можно использовать: |
1 | помещение таблиц-источников во временные таблицы СУБД, а затем получение целевой таблицы запросом, соединяющим временные таблицы. |
14.39 При нескольких чтениях через объектную модель реквизитов одного и того же объекта внутри одной процедуры долго выполняется: |
1 | первое обращение. |
14.40 При формировании табличного документа в качестве параметров ячеек с типом заполнения "Параметр" указывать ссылочные значения: |
1 | запрещено, но есть исключения. |
14.41 Применение ДЛЯ ИЗМЕНЕНИЯ без указания таблиц в тексте запроса приводит к тому, что: |
1 | блокировка обновления U будет установлена на все таблицы, перечисленные в запросе, даже на те, в которые дальше не будет записи. Это будет мешать другим пользователям работать с ними. |
14.42 Проверку того, что результат выполнения запроса не содержит строк, следует выполнять: |
1 | с помощью метода Пустой(). Поскольку на получение выборки из результата запроса (или выгрузку его в таблицу значений) будет затрачиваться дополнительное время |
14.43 Работа с регистром бухгалтерии - это почти всегда: |
1 | работа с пересекающимися данными (работа с одним и тем же счетом). |
14.44 Сколько таблиц регистраций изменений в конфигурации? |
2 | По одной у каждого объекта метаданных, включенного хотя бы в один план обмена, у остальных - отсутствуют. |
14.45 Соединять виртуальные таблицы с реальными, а также виртуальные с виртуальными: |
2 | не следует. Правильно сначала результат получения данных из виртуальной таблицы записывать во временную таблицу, индексировать эту временную таблицу по полям соединения, а затем уже соединять. |
14.46 Соединять подзапросы с реальными таблицами, а также подзапросы с подзапросами: |
1 | не ошибка. |
14.47 Укажите, в чем может быть проблема в следующей процедуре из общего модуля с включенными свойствами: "Сервер" и "Вызов сервера" Процедура УстановитьЗначение (Знач Имя, Знач Значение) Экспорт УстановитьПривилегированныйРежим(Истина); Константы[Имя].Установить(Значение); УстановитьПривилегированныйРежим(Ложь); КонецПроцедуры |
5 | Процедура позволяет изменить значение любой константы в независимости от прав пользователя |
14.48 Что в тексте запроса, полученного в помощью профайлера, однозначно говорит о том, что в формировании текста запроса участвовал механизм RLS? |
1 | Подстрока SDBL_DUMMY. |
14.49 Что и какой блокировкой блокирует выгрузка изменений по плану обмена? |
3 | Таблицу регистрации изменений разделяемой блокировкой. |
14.50 Что рекомендуется для исключения конфликтов блокировок при выгрузке изменений по плану обмена? |
4 | Верны ответы 1 и 2. |
14.51 Что рекомендуется при использовании объекта РегистрСведений.МенеджерЗаписи? |
1 | Объект РегистрСведенийМенеджерЗаписи следует применять только тогда, когда выполнение операций с регистром сведений требует использования отбора одновременно по всем измерениям. |
14.52 Что рекомендуется при необходимости получения данных из базы в событиях формы: • ОбновлениеОтображения(). и событиях табличного поля: • ПриВыводеСтроки(), • ПриАктивацииСтроки(). |
2 | Следует минимизировать обращение к данным информационной базы в обработчиках этих событий. Как обход части проблем - перенести код в обработчики других событий, и получать данные запросами на языке запросов, а не через объектную модель. |
14.53 Чтобы реквизит динамического списка не оказывал постоянного негативного влияния на время открытия формы, для него надо: |
1 | в настройках управляемой формы в режиме 1С:Предприятия отключить вывод. |
Комментарии 8