Влияние HDD на быстродействие 1СПредприятие 8.1
Ускорение 1С путем оптимизации размещения данных на жестком диске
О чем пойдет речь
Только вариант клиент-серверной версии 1C:Предприятие 8 под MS SQL Server.
Только кластеры NTFS и блоки RAID-массива (пусть даже это RAID0 из одного диска) в операционных системах Windows Server 2003 (и Windows XP).
Внимание! Действие статьи не распространяется на RAW-партиции и простые диски HDD, не входящие ни в какой RAID-массив с собственным контроллером.
Также маловероятна проблема в в Windows Server 2008 и Windows Vista.
Предмет оптимизации
«Размер блока и размер кластера желательно устанавливать одинаковыми, например, для баз данных SQL Server очень часто слышны рекомендации выбирать и там и там 64Кб http://www.emc.com/collateral/hardware/technical-documentation/h2370-microsoft-sql-svr-2005-ns-series-iscsi-bp-plan-gde-ldv.pdf. Однако, операционная система создает самый первый кластер (блок начальной загрузки MBR) размером в 63Кб. Эта особенность NTFS означает, что каждый последующий кластер будет сдвинут на 1Кб на предыдущий блок. Т.е. кластеры окажутся смещёнными относительно границ блоков массива. Такая ситуация приводит к тому, что одна операция чтения или записи кластера будет затрагивать два сектора и будет приводить к удвоению числа запросов ввода-вывода.»(цитата Александра Гладченко).
Источник Disk Partition Alignment for SQL Server (eng) http://blogs.msdn.com/jimmymay/attachment/8999719.ashx
Официальное подтверждение проблемы Microsoft http://support.microsoft.com/kb/929491
Средняя степень влияния
Практически все основные типы нагрузки ввода-вывода SQL Server получат выигрыш от этой оптимизации от 9 до 23%
Способы определить наличие проблемы
- С помощью DiskPart http://www.microsoft.com/downloads/details.aspx?FamilyID=0FD9788A-5D64-4F57-949F-EF62DE7AB1AE&displaylang=en (Описание программы http://technet.microsoft.com/ru-ru/library/cc773140.aspx и http://support.microsoft.com/kb/300415/ru). diskpart -i. Наличие цифры 32256 (потому что смещение offset 32256 / 512 байт на сектор = 63).
- С помощью утилиты DiskExt http://technet.microsoft.com/en-us/sysinternals/bb896648.aspx
- С помощью обработки для 1С:Предприятие 8.1 NTFS.epf http://gilev.ru/1c/hardware/NTFS.zip
Необходимо исправить геометрию RAID массива
1. Скопировать ВСЮ информацию с диска (предположим, что имя диска D:) на другой локальный диск (например диск E:) используя команду xcopy с параметрами копирования файлов и каталогов включая ownership и ACL.
xcopy D:*.* E:DiskD /E /K /O /X
Запустить Disk Management и посмотреть какой физический диск соответствует логическому диску D; допустим это диск 1.
Запустить Disk Management и удалить логический раздел D на физическом диске 1. (Т.е. чтобы выровнять раздел, нужно удалить смещённый раздел).
2) Внимание! Утилита DISKPART уничтожит данные на диске.
В командной строке запустить утилиту DISKPART и выполнить следующие команды:
DISKPART> select disk 1
Disk 1 is now the selected disk.
DISKPART> create partition primary align=64 (не работает для динамических дисков)
DiskPart succeeded in creating the specified partition.
DISKPART> exit
Примечание. Команда «create partition primary align=64» создает новый раздел со смещением первого кластера на 64Кб, что позволяет выровнять границы кластеров и блоков и тем самым оптимизировать работу дисковой подсистемы.
3) В Disk Management создать диск (отформатировать)
4) Скопировать файлы обратно (если есть такая необходимость)
xcopy E:DiskD*.* D: /E /K /O /X
Примечание. Описание xcopy http://technet2.microsoft.com/windowsserver/ru/library/edb837cc-e0db-4673-8c79-1a085cb3692c1049.mspx?mfr=true.