MS SQL и 1С

Для того, чтобы стало возможным удалять рабочий процесс, клиентский поток которого исполняется на сервере СУБД, необходимо, чтобы пользователь, от имени которого выполняется процесс сервера 1С:Предприятия 8.1 (по умолчанию USR1CV81), обладал необходимыми полномочиями в MS SQL Server. Для этого необходимо его включить в члены фиксированной серверной роли processadmin или sysadmin.

В комплекте с MS SQL Server поставляется утилита SQL Trace. С ее помощью можно решать задачу нахождения основных источников блокировок при работе 1С:Предприятия 8.1 в случае использования в качестве СУБД MS SQL Server.

Создание фильтра.

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

Для этого следует включить в набор записываемых событий событие Lock:Acquired и установить фильтр на запись событий Lock:Acquired со значением Duration больше или равным 1 (может быть установлено любое значение больше 0) и запустить трейс.

После того, как измерения будут закончены в колонке ObjectID будет находится идентификаторы заблокированных объектов, время ожидания для которых превышало 1 мс.

С помощью функции OBJECT_NAME можно определить имя таблицы, соответствующей данному ObjectID.

Для анализа результатов удобнее сохранить результаты в таблицу SQL Server, а затем, с помощью запросов получить интересующие данные в удобной для анализа форме.

Например:

SELECT
    ObjectID, SUM(Duration)
FROM
    TRACE
GROUP BY
    ObjectID
ORDER BY SUM(Duration) desc
В результате будет получена выборка, в которой записи будут отсортированы в порядке убывания времени ожидания блокировки.


Анализ степени фрагментации индексов при работе с MS SQL Server 2005

Обновлено: 15.11.2007

Чрезмерная фрагментация индексов создает проблемы для больших операций ввода-вывода. В MS SQL Server 2005 появились новые средства для контроля этого параметра.

Функция таблицы динамического управления sys.dm_db_index_physical_stats возвращает процент фрагментации в столбце avg_fragmentation_in_percent. Если значение в этом столбце превышает 25%, то для восстановления исходных параметров производительности рекомендуется выполнить дефрагментацию этого индекса. От снижения фрагментации индексов могут выиграть операции сканирования больших диапазонов данных, обычные в приложениях хранилищ данных и отчетов.

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

http://its.1c.ru/db/metod81#browse:-1:1981:1985



Бэкапы

Добавить комментарий