ElvisPresley
20.01.2011, 10:19
Всем добрый день!
Очень нужна помощь в поиске и устранении проблемы связанной со средней длиной очереди диска продолжительное время во время формирования отчета 1С8.1.
Расклад следущий:
Конфигурация сервера SQL
платформа Intel
CPU Intel Xeon E5410 2 шт
RAM 32Gb (максимум что можно воткнуть в платформу)
Дисковая система:
Raid контролер Intel SRCSAS18E с кеш 256Мб
Жесткие диски: Seagate ST3450857SS SAS 450Gb - 8 шт.
Из 7 HDD построен RAID5 + 1 HDD Global Spare
Внутри RAID5 создано два виртуальных диска: VD1=560Gb и VD2=2Tb
ПО сервера SQL:
Windows Server 2003 STD x64 RUS лицензионный + актуальные обновления
SQL Server 2005 STD X64 ENG лицензионный + актуальные обновления
Для SQL server выделено 31Гб оперативной памяти.
Подробнее о дисковой системе сервера SQL:
На VD1 находятся следующие разделы NTFS:
C: Система + Установочные файлы SQL. Объем 50Гб, свободно 37.
D: Файлы SQL: tempdb(.mdf и .ldf) и остальные системные БД, плюс 3 рабочих базы общим объемом 12Гб. Объем 455Гб, свободно 430Гб.
Z: SWAP. Объем 50Гб, свободно 8Гб.
На VD2 находятся следующие разделы NTFS:
S: Рабочая база SQL: DBSQL_WORK(.mdf и .ldf). Объем 1,9Тб, свободно 1,6Тб.
Регламентные задачи SQL:
ПН-СБ:
Update Statistics и затем
USE DBSQL_WORK;
DBCC FREEPROCCACHE;
exec sp_msforeachtable N'DBCC INDEXDEFRAG (DBSQL_WORK, ''?'')';
backup log DBSQL_WORK with truncate_only;
dbcc SHRINKFILE (DBSQL_WORK_log, 1024);
USE tempdb;
backup log tempdb with truncate_only;
dbcc SHRINKFILE (templog, 100);
ВС:
Update Statistics и затем
USE DBSQL_WORK;
DBCC FREEPROCCACHE;
exec sp_msforeachtable N'DBCC DBREINDEX ("?")';
backup log DBSQL_WORK with truncate_only;
dbcc SHRINKFILE (DBSQL_WORK_log, 1024);
USE tempdb;
backup log tempdb with truncate_only;
dbcc SHRINKFILE (templog, 100);
Recovery Model для всех БД SQL - Simple
В 1С8.1 есть отчет, которым пользуются все сотрудники и очень часто. Этот отчет шестрит всю базу за несколько лет, объем которой составляет 180Гб (сам файл mdf 320Гб сейчас). Сам сервер 1С8 и сервер SQL 2005 разнесены на две разные машины. Во время построения отчета запускаю Системный монитор и на протяжении 20-30 сек счетчик "Cредняя длина очереди диска" показывает пик.
Добавил счетчик "Средняя длина очереди чтения диска" D. Именно он показывает длительное время пиковую нагрузку на графике. Этот же счетчик для диска S (файлы рабочей базы) никакой нагрузки не показывает в этот момент.
Нагрузка процессора в момент формирования этого отчета можно сказать никакая: 2-5%.
Хочу разобраться в чем затык на сервере, но не хватает квалификации. Помогите, пожалуйста.
Очень нужна помощь в поиске и устранении проблемы связанной со средней длиной очереди диска продолжительное время во время формирования отчета 1С8.1.
Расклад следущий:
Конфигурация сервера SQL
платформа Intel
CPU Intel Xeon E5410 2 шт
RAM 32Gb (максимум что можно воткнуть в платформу)
Дисковая система:
Raid контролер Intel SRCSAS18E с кеш 256Мб
Жесткие диски: Seagate ST3450857SS SAS 450Gb - 8 шт.
Из 7 HDD построен RAID5 + 1 HDD Global Spare
Внутри RAID5 создано два виртуальных диска: VD1=560Gb и VD2=2Tb
ПО сервера SQL:
Windows Server 2003 STD x64 RUS лицензионный + актуальные обновления
SQL Server 2005 STD X64 ENG лицензионный + актуальные обновления
Для SQL server выделено 31Гб оперативной памяти.
Подробнее о дисковой системе сервера SQL:
На VD1 находятся следующие разделы NTFS:
C: Система + Установочные файлы SQL. Объем 50Гб, свободно 37.
D: Файлы SQL: tempdb(.mdf и .ldf) и остальные системные БД, плюс 3 рабочих базы общим объемом 12Гб. Объем 455Гб, свободно 430Гб.
Z: SWAP. Объем 50Гб, свободно 8Гб.
На VD2 находятся следующие разделы NTFS:
S: Рабочая база SQL: DBSQL_WORK(.mdf и .ldf). Объем 1,9Тб, свободно 1,6Тб.
Регламентные задачи SQL:
ПН-СБ:
Update Statistics и затем
USE DBSQL_WORK;
DBCC FREEPROCCACHE;
exec sp_msforeachtable N'DBCC INDEXDEFRAG (DBSQL_WORK, ''?'')';
backup log DBSQL_WORK with truncate_only;
dbcc SHRINKFILE (DBSQL_WORK_log, 1024);
USE tempdb;
backup log tempdb with truncate_only;
dbcc SHRINKFILE (templog, 100);
ВС:
Update Statistics и затем
USE DBSQL_WORK;
DBCC FREEPROCCACHE;
exec sp_msforeachtable N'DBCC DBREINDEX ("?")';
backup log DBSQL_WORK with truncate_only;
dbcc SHRINKFILE (DBSQL_WORK_log, 1024);
USE tempdb;
backup log tempdb with truncate_only;
dbcc SHRINKFILE (templog, 100);
Recovery Model для всех БД SQL - Simple
В 1С8.1 есть отчет, которым пользуются все сотрудники и очень часто. Этот отчет шестрит всю базу за несколько лет, объем которой составляет 180Гб (сам файл mdf 320Гб сейчас). Сам сервер 1С8 и сервер SQL 2005 разнесены на две разные машины. Во время построения отчета запускаю Системный монитор и на протяжении 20-30 сек счетчик "Cредняя длина очереди диска" показывает пик.
Добавил счетчик "Средняя длина очереди чтения диска" D. Именно он показывает длительное время пиковую нагрузку на графике. Этот же счетчик для диска S (файлы рабочей базы) никакой нагрузки не показывает в этот момент.
Нагрузка процессора в момент формирования этого отчета можно сказать никакая: 2-5%.
Хочу разобраться в чем затык на сервере, но не хватает квалификации. Помогите, пожалуйста.