Личный кабинет

Home /

Инструмент выравнивания разделов Paragon Alignment Tool: быстрое увеличение производительности систем

 

Введение

 

Традиционно размер сектора (наименьшего блока данных) в любом встроенном хранилище составлял 512 байт. В действительности фрагменты данных, обрабатываемые операционной системой намного больше: это кластеры (или блоки и т.п.). Обычно они имеют размер от одного сектора (512 байт) до 128 секторов (64 Кб).

 

Появление современных дисков с секторами размером 4 Kб сделало проблему выравнивания разделов актуальной не только для большинства IT-специалистов, но и для обычных пользователей. Внедрение виртуальных сред и различных RAID-технологий в компаниях дало толчок к появлению большего количества приложений для выравнивания разделов, поскольку несоответствие между физическим и логическим распределением данных может стать причиной значительного снижения производительности всей системы и срока службы оборудования.

 

Что такое выравнивание разделов?

 

Чтобы объяснить понятие «выравнивание разделов», необходимо сначала проиллюстрировать распределение данных, хранящихся на диске.

 

 

На рисунке представлена упрощенная схема сегментации, где один раздел занимает все место на диске и все сектора. Раздел соотносится с первым сектором, «начало» раздела соответствует «началу» первого сектора. Однако это слишком упрощенная схема. Раздел состоит из нескольких логических единиц – кластеров. Рассмотрим, как они связаны с секторами.

 

 

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

Теперь рассмотрим причины несоответствия разделов секторам и следствия этого явления.

 

Почему несоответствие разделов и секторов негативно влияет на работу жесткого диска?

 

Неправильное распределение разделов возникает потому, что в действительности размер физического сектора может быть не равен 512 байтам, а программное обеспечение этого не учитывает. Размер физических секторов современных жестких дисков, например, Western Digital, составляет 4096 байт, на логическом уровне происходит обработка блоков данных размером 4 Kб, но для внешнего оборудования и программного обеспечения такие диски выглядят как «традиционные», имеющие сектора по 512 байт. Это позволяет обеспечить совместимость с более ранними версиями ПО. В таких случаях добавляется еще один уровень – уровень совместимости. См. рисунок.

 

 

На рисунке показаны три уровня распределения данных. Нижний уровень – это собственно жесткий диск и физические сектора 4 Кб. Второй уровень – абстрактное представление в виде секторов размером 512 байт для внешних систем. А самый верхний уровень – действующая файловая система с кластерами размером 2 Kб, каждый из которых равен четырем абстрактным секторам и половине физического сектора. Таким образом, 1 кластер = 4 абстрактных сектора = ½ физического сектора.

 

Обратите внимание, что все три уровня выровнены относительно друг друга и начала диска. Таким образом, чтение или запись данных одного кластера реализуется с использованием четырех секторов по 512 байт и одного сектора размером 4 Kб. Количество операций чтения – записи минимально; диск работает с максимальной производительностью.

 

Но ситуация меняется в худшую сторону, когда кластеры логического уровня смещаются относительно лежащих ниже слоев. См. рисунок.

 

 

На рисунке раздел смещен относительно начала диска на один сектор размером 512 байт. В результате несколько логических кластеров оказались связанными с двумя физическими секторами 4 Kб (второй, четвертый и шестой), что привело к удвоению количества операций чтения-записи. В данном случае производительность системы снижается, так как для управления данными жесткий диск выполняет две операции в двух секторах вместо одной, как при правильном выравнивании разделов.

 

Каковы причины смещения? Все операционные системы Windows, предшествующие Vista, при создании кластеров тома ориентируются на сектора размером 512 байт и помещают начало раздела в соответствии с ними, а не с секторами 4 Kб, как показано на предыдущем рисунке, где начало раздела сдвинуто на один сектор 512 байт.

 

Обычно раздел начинается с 63 сектора. 63 сектора – устоявшийся размер «цилиндра» диска и некоторые старые версии DOS или Windows требуют, чтобы раздел был выровнен относительно «цилиндра» для правильной адресации и доступа к секторам. Такое смещение делается в целях совместимости с более ранними системами, современные ОС не используют эту устаревшую схему адресации CHS (цилиндр/головка чтения/сектор). Но по ряду причин все ОС Windows, предшествующие Vista, создают разделы по этому правилу.

 

До начала массового использования жестких дисков с разделами 4 Kб для домашних пользователей не существовало проблемы выравнивания разделов. Разделы, выровненные по 63 секторам, по чисто математическим причинам не выравниваются по секторам 4 Kб. Рассмотрим уравнение:

 

 

Очевидно, что 63 сектора по 512 байт не соответствуют целому числу секторов 4 Kб, таким образом, первый раздел и все следующие за ним разделы диска будут расположены со смещением.

 

 

Что делает Paragon Alignment Tool?

 

Как Вы догадываетесь, инструмент выравнивания разделов PAT компании Paragon просто перемещает разделы на некоторое количество секторов по 512 байт, выравнивая тома. Например, для выравнивания раздела размером 63 сектора необходимо просто переместить его вперед на один сектор размером 512 байт.

 

 

Теперь начало раздела соответствует началу сектора 4 Kб, и этот раздел, и все последующие располагаются правильно.

 

 

PAT смещает начало раздела на 2048 секторов по 512 байт от начала диска; что соответствует 1 Мб, а также прекрасно подходит для секторов 4 Kб.

 

 

Необходимость выравнивания разделов для SSD

 

Для твердотельных дисков SSD проблема неправильного расположения разделов еще более актуальна, чем для традиционных жестких дисков. Размер модулей памяти современных SSD составляет 4096 байт, что является аналогом секторов 4 Kб. Таким образом, все упомянутые ранее проблемы, связанные с выравниванием разделов, возникают и при использовании SSD.

Однако, кроме снижения скорости работы файловой системы, существует еще одна проблема, присущая исключительно SSD. Ячейки памяти твердотельных дисков быстрее выходят из строя при большом количестве операций записи. Таким образом, при неправильном расположении разделов на SSD, снижается не только скорость работы системы, но и подвергается опасности сам твердотельный диск. Выравнивание разделов с помощью PAT устраняет избыточные операции чтения/записи, что позволяет значительно увеличить скорость работы и продлить срок службы SSD.

 

Необходимость выравнивания разделов для SAN и RAID

 

Технология RAID позволяет объединить множество жестких дисков и других устройств хранения информации в один большой массив данных. Система воспринимает этот массив как одно большое устройство хранения, и данные распределяются по всем его ресурсам. Объем данных, по достижении которого данные перестают записываться на один диск массива и начинают записываться на другой, называется размером страйпа. Размер страйпа может быть разным, например, 8 Кб, 16 Кб, 32 Кб или 64 Кб.

 

При использовании программных или аппаратных RAID производительность системы может уменьшиться, если начальное положение раздела не соответствует размеру страйпа. В этом случае увеличивается количество операций с данными на нескольких дисках RAID-массива.

 

Чтобы решить эту проблему, PAT сдвигает разделы на 2048 секторов. Такое смещение подходит для большинства размеров страйпа. Работа с данными становятся быстрее за счет устранения избыточных операций. См. рисунок.

 

 

На рисунке представлен правильно выровненный раздел и массив RAID-0, где каждый блок связан с двумя страйпами (это проиллюстрировано для блока №1). В этой ситуации работа с одним логическим кластером будет вызывать операции с одним блоком и двумя страйпами.

 

Собственно говоря, SAN – это просто большой RAID-массив, распределенный по локальной или оптоволоконной сети. Таким образом, для SAN вопросы выравнивания разделов решаются точно так же, как и для RAID-массивов.

 

Необходимость выравнивания разделов в виртуальных средах

 

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

 

 

На предыдущем рисунке представлена конфигурация сервера VMware Server, использующего хранилище RAID/SAN. Здесь разделы неправильно расположены сразу на двух уровнях, что ведет к серьезному снижению производительности. Например, чтобы считать данные с первого кластера, система должна считать три VMFS блока и четыре RAID-блока (и еще больше страйпов).

 

В данный момент PAT не может перемещать сами тома VMFS, но может выравнивать разделы на виртуальных дисках.

 

 

При такой конфигурации все тома и разделы расположены правильно и общая скорость выполнения операций с данными увеличилась в два раза. Обратите внимание, чтобы получить данные для одного кластера системе необходимо считать только два VMFS-блока и два RAID-блока.

 

Заключение

 

PAT очень прост в использовании. Запустите программу, и она автоматически обнаружит все неправильно расположенные разделы. Пользователь может принять настройки по умолчанию и запустить процесс выравнивания. После его завершения все разделы будут расположены правильно.

 

В этом документе были рассмотрены все основные вопросы, касающиеся неправильного расположения разделов на жестких дисках с разделами 4 Kб, твердотельных накопителях, в RAID-массивах, SAN и виртуальных средах. Также описывались причины и негативные последствия неправильного распределения разделов.