26.06.2011 · обновлено: 05.04.2017 · просмотров: 3 · категория: Установка и настройка 1С

Ускорение работы 1С через оптимизацию размещения данных на HDD 

О чем эта статья?

В ней мы поведаем о том, как ускорить работу с 1С путем лучшей реализации ее хранения и обработки на HDD.

Рассматривается только клиент-серверная версия 1С:Предприятие 8.1 с MS SQL Server.

Только кластеры файловой системы NTFS и блоки RAID массива (любого из видов RAID, даже RAID0)    на ОС Windows Server 2003 и XP.

Данная статья не рассматривает RAW-partitions и обычные диски HDD, которые не входят в RAID-массивы с контроллерами, имеет не очень важное отношение к Windows Server 2008 и Windows Vista.

Желательно, чтобы размеры блоков и кластеров были одинаковыми: например, для БД SQL Server часто предлагают выбирать по 64 кб для кластеров и там, и там. Но, правда, первый кластер, то есть MBR - блок начальной загрузки, создает ОС, и его размер – 63 килобайта. Это является особенностью NTFS и ведет к тому, что каждый из последующих кластеров будет смещен на 1 килобайт, то есть все кластеры будут сдвинуты за границы блоков массива; поэтому чтение и запись всегда будут затрагивать не один, а два сектора, что будет увеличивать вдвое количество запросов ввода и вывода.

Почти все распространенные виды нагрузки ввода/вывода на MS SQL Server выигрывают от 9 до 23 процентов от оптимизации, описанной в этой статье

Как определить проблему?

1) Используя утилиту DiskPart. Больше о ней можно узнать на сайте Microsoft: http://www.microsoft.com/downloads/details.aspx?FamilyID=0FD9788A-5D64-4F57-949F-EF62DE7AB1AE&displaylang=en

Ее использование весьма простое: diskpart –i

Когда увидите число 32256, то понимайте, что 32256 разделить на 512 как раз 63; 512 – количество байт в секторе

2) Используя утилиту DiskExt; о ней также можно узнать с сайта Microsoft: http://technet.microsoft.com/en-us/sysinternals/bb896648.aspx

3) а также с использованием обработки NTFS.epf для 1С:Предприятие 8,1

Исправление геометрии RAID массива

1) Для начала, копируем всю, именно всю информацию с локального диска на другой локальный диск; допустим, эти диски у нас обозначены как D и E; для копирования необходимо использовать команду xcopy, указав параметры копирования файлов и папок, в том числе владельца файлов и ACL:

xcopy D:*.* E:DiskD /E /K /O /X

Запускаем управление дисками Disk Management и смотрим, какой именно физический диск соответствует D; например, 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 на сайте Microsoft: http://technet2.microsoft.com/windowsserver/ru/library/edb837cc-e0db-4673-8c79-1a085cb3692c1049.mspx?mfr=true

Все материалы — в разделе статьи.