Формат сектора 512e что это
Поддержка Advanced Format — оптимальная работа с дисками высокой емкости
Advanced Format — это новый формат разметки жестких дисков, необходимый для адресации больших объемов дисковой памяти. Все производители современных жестких дисков, в том числе HGST, переходят на этот формат.
Одна из основных особенностей Advanced Format — увеличение размера сектора с 512 до 4096 байт. Для сохранения совместимости с программами, рассчитанными на прежний формат, новые диски имеют режим эмуляции, который называется «512e».
Большая часть современных операционных систем поддерживает Advanced Format. Для достижения оптимального быстродействия ввода-вывода необходимо, чтобы разбивка диска была осуществлена корректно, и чтобы данные записывались 4-килобайтными блоками как операционной системой, так и прикладными программами. Новейшие операционные системы по умолчанию выполняют все условия, необходимые для эффективной работы с Advanced Format. При использовании же более старого программного обеспечения для настройки дисковой подсистемы на оптимальное быстродействие могут потребоваться специальные утилиты.
Устройство Advanced Format
В средней части рисунка 1 изображены восемь идущие подряд 512-байтных секторов. Помимо пользовательских данных, каждый сектор содержит служебную информацию: данные разметки и код коррекции ошибок. При замене восьми 512-байтных секторов одним 4-килобайтным количество необходимой служебной информации сокращается (см. нижнюю часть рисунка). Таким образом, при работе с большими файлами (а средний размер файлов по сравнению со временами, когда использовался 512-байтный формат, вырос) дисковое пространство используется эффективнее. Кроме того, под код коррекции ошибок выделено больше места, благодаря чему лучше обеспечивается целостность данных.
Рис. 1. Сравнение 512-байтного и 4-килобайтного форматов(1).
Обеспечение совместимости
Значительная часть находящихся в эксплуатации технических и программных средств рассчитаны на размер сектора 512 байт и ожидают, что данные будут пересылаться 512-байтными блоками. Эмуляция такого обмена реализована в новых дисках на уровне интерфейса. При запросе на чтение блока диск считывает сектор целиком (на что не уходит много времени) и передает программе только необходимый блок. Если же от программы поступает запрос на запись блока, то диск считывает целый сектор, помещает в него полученный блок и перезаписывает сектор целиком (см. рис. 2). Между считыванием и записью проходит время, диск может за это время совершить несколько оборотов.
Рис. 2. В режиме эмуляции при записи 512-байтного блока диск вначале считывает сектор, помещает в него блок и затем записывает сектор
Обеспечение быстродействия
Для достижения наивысшего быстродействия необходимо, чтобы формат записи на диск соответствовал формату диска. В идеальном случае запись должна выполняться 4-килобайтными блоками и каждый блок должен записываться в один сектор. Это условие выполняется в том случае, если и операционная система, и прикладные программы настроены на работу с 4-килобайтными блоками, а разбиение диска выполнено корректно.
Большинство современных операционных систем используют файловые системы, в которых дисковое пространство выделяется 4-килобайтными блоками, или кластерами. 4-килобайтный блок соответствует восьми 512-байтным секторам (см. рис. 3).
Рис. 3. Соответствие кластера сектору в режиме эмуляции.
Выравнивание границ разделов
При использовании операционных систем, записывающих данные 4-килобайтными кластерами (большинство современных ОС), важно, чтобы их границы были выровнены по границам секторов диска. В режиме эмуляции 512e диск не может предотвратить размещение раздела с блока, номер которого не кратен восьми. Если такое произойдет, один кластер будет размещаться в двух секторах (см. рис. 4). Таким образом, при чтении или записи 4-килобайтного кластера потребуется соответственно считать или записать 8 килобайт — вдвое больше. И если при чтении разница в скорости будет не большая, то при записи она окажется заметной.
Рис. 4. Размещение кластера не с начала сектора.
Операционные системы, поддерживающие Advanced Format
В следующих операционных системах размер кластера составляет 4 Кбайт, а при установке разбиение диска выполняется корректно:
• Microsoft Windows Vista SP1 и новее;
• Microsoft Windows 7;
• Microsoft Server 2008;
• Mac OS X 10.4 и новее;
• Linux Ubuntu 8.04+, SUSE, Linux kernel 2.6.34+ (необходимо использовать Linux Partitioning Utility).
Операционные системы, не обеспечивающие автоматическое соответствие кластеров секторам:
• Microsoft Windows XP;
• Microsoft Server 2003;
• Microsoft Windows Home Server V1.
HGST Align Tool
Для исправления логической разметки дисков, разделы на которых не выровнены по границам секторов, можно использовать выпускаемую HGST утилиту для Windows. Ее можно загрузить по адресу www.hgst.com/support/downloads.
Кроме того, Advanced Format поддерживается рядом утилит работы с дисками, выпускаемых сторонними производителями:
Для Windows:
Acronis Disk Director Home 11 или Paragon Partition Manager 11.
Для Mac:
Disk Utility (в комплекте с Mac OS X 10.4+), создает раздел GPT (GUID Partition Table).
СОДЕРЖАНИЕ
История
Использование длинных секторов данных было предложено в 1998 году в техническом документе, выпущенном Национальным консорциумом индустрии хранения данных (NSIC), в котором обращалось внимание на конфликт между продолжающимся увеличением плотности записи и традиционным форматом 512 байт на сектор, используемым на жестком диске. диски. Прогнозировалось, что без революционных достижений в технологиях систем магнитной записи, плотности записи, а вместе с ней и емкости хранения, жесткие диски будут стагнировать.
Международная ассоциация производителей дискового оборудования и материалов (IDEMA) отреагировала на это, организовав в 2000 году комитет IDEMA по сектору длинных данных, где IDEMA и ведущие поставщики аппаратного и программного обеспечения совместно работали над определением и разработкой стандартов, регулирующих секторы длинных данных. включая методы, с помощью которых будет поддерживаться совместимость с устаревшими компьютерными компонентами. В августе 2005 года компания Seagate отправила своим отраслевым партнерам тестовые диски с 1 тыс. Физических секторов для тестирования. В 2010 году были завершены отраслевые стандарты для первого официального поколения длинных секторов данных с использованием конфигурации 4096 байт на сектор, или 4K. Все производители жестких дисков обязались поставлять к январю 2011 года новые платформы жестких дисков для настольных ПК и ноутбуков с секторным форматированием Advanced Format.
Advanced Format был придуман, чтобы охватить то, что, как ожидалось, станет несколькими поколениями технологий длинных секторов данных, а его логотип был создан, чтобы отличать жесткие диски на основе длинных секторов данных от жестких дисков, использующих устаревшие 512-, 520- или 528-диски. байтовые сектора.
Обзор
Описание | 512-байтовый сектор | 4096-байтовый сектор |
---|---|---|
Разрыв, синхронизация, адресная метка | 15 байт | |
Данные пользователя | 512 байт | 4096 байт |
Код исправления ошибок | 50 байт | 100 байт |
Общий | 577 байт | 4211 байт |
Эффективность | 88,7% | 97,3% |
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
Физический сектор 1 | Физический сектор 2 |
Поскольку до середины 2010 года было отгружено огромное количество устаревших жестких дисков с 512-байтным сектором, многие системы, программы и приложения, обращающиеся к жесткому диску, спроектированы на основе соглашения о 512-байтном секторе. Раннее взаимодействие с Комитетом по сектору длинных данных дало возможность поставщикам компонентов и программного обеспечения подготовиться к переходу на расширенный формат.
Категории
Среди инициатив Advanced Format, предпринятых Комитетом по сектору длинных данных, также были рассмотрены методы обеспечения обратной совместимости с устаревшими вычислительными решениями. Для этого было создано несколько категорий устройств Advanced Format.
Эмуляция 512 (512e)
Преобразование 4096-байтового физического формата в виртуальное 512-байтовое приращение прозрачно для объекта, обращающегося к жесткому диску. Команды чтения и записи выдаются дискам расширенного формата в том же формате, что и старые диски. Однако во время процесса чтения жесткий диск расширенного формата загружает весь 4096-байтовый сектор, содержащий запрашиваемые 512-байтовые данные, в память, расположенную на диске. Прошивка эмуляции извлекает и повторно форматирует определенные данные в 512-байтовый блок перед отправкой данных на хост. Весь процесс обычно происходит с незначительным ухудшением производительности или без него.
Процесс перевода усложняется при записи данных, которые не кратны 4 КБ или не выровнены по границе 4 КБ. В этих случаях жесткий диск должен прочитать весь 4096-байтовый сектор, содержащий целевые данные, во внутреннюю память, интегрировать новые данные в ранее существовавшие данные и затем перезаписать весь 4096-байтовый сектор на дисковый носитель. Эта операция, известная как чтение-изменение-запись (RMW), может потребовать дополнительного вращения магнитных дисков, что приведет к заметному снижению производительности для пользователя системы. Анализ производительности, проведенный IDEMA и поставщиками жестких дисков, показывает, что приблизительно от пяти до десяти процентов всех операций записи в типичной пользовательской среде бизнес-ПК могут быть неправильно согласованы, что может привести к снижению производительности RMW.
При использовании дисков Advanced Format с устаревшими операционными системами важно повторно настроить диск с помощью программного обеспечения, предоставленного производителем жесткого диска. Перестройка диска необходима, чтобы избежать ухудшения производительности, известного как разделение кластера, когда смещенный раздел заставляет кластеры файловой системы занимать частичные секторы физического диска. Поскольку выравнивание кластера по сектору определяется при создании разделов жесткого диска, программное обеспечение для выравнивания используется после разделения диска. Это может помочь уменьшить количество невыровненных записей, генерируемых вычислительной экосистемой. Дальнейшие действия по подготовке приложений к переходу на технологии Advanced Format были инициированы Комитетом по технологиям Advanced Format (ранее Комитетом сектора длинных данных ) и производителями жестких дисков.
Исходное разрешение 4K (4Kn)
Готовность поддержки логических секторов размером 4 КБ в операционных системах различается в зависимости от их типа, производителя и версии. Например, Microsoft Windows поддерживает собственные диски 4K, начиная с Windows 8 и Windows Server 2012 (оба выпущены в 2012 году), а Linux поддерживает собственные диски 4K, начиная с версии ядра Linux 2.6.31 и util-linux-ng версии 2.17 (выпущенной в 2009 и 2010 г. соответственно).
Цветная версия логотипа, указывающая на собственный диск 4K, несколько отличается от логотипа 512e, с четырьмя закругленными углами, синим фоном и текстом «4Kn» в центре логотипа.
Диски, контроллеры, ОС и Advanced Format
Что такое Advanced Format
Advanced Format — новый формат разметки секторов, используемый в некоторых жёстких дисках. Вместо традиционного сектора размером 512 байт используется 4096 байт. Некоторые диски SCSI/SAS/FC могут использовать 520- и 528-байтные «толстые» сектора для дополнительного контроля целостности данных, но это не относится к теме данной статьи.
Увеличение размера сектора в 8 раз связано с необходимостью повышения эффективности размещения данных на современных дисках. Накладные расходы, связанные с 512-байтной разметкой, начинают мешать дальнейшему увеличению ёмкости HDD. Помимо служебных полей в каждом 512-байтном секторе присутствует поле с кодом коррекции ошибок (ECC) длиной в 50 байт. В 4096-байтном секторе длина ECC-поля составляет 100 байт. Общее эффективность хранения данных удалось улучшить примерно на 10%.
Естественно, поддержка нестандартных секторов требуется со стороны дисковых контроллеров и операционных систем. Для решения проблем с совместимостью был ввёден дополнительный стандарт 512E, который обозначает диски с физическим размером сектора 4096 байт, но при этом эмулирующие обычный размер сектора в 512 байт. Advanced Format диски без эмуляции обозначаются 4KN. Таким образом, сейчас существует три варианта разметки:
Формат | Логический размер сектора | Физический размер сектора |
512 байт | 512 байт | |
512 байт | 4096 байт (4КиБ) | |
4096 байт (4КиБ) | 4096 байт (4КиБ) |
Совместимость
Операционные системы
На первый взгляд кажется, что использование эмуляции 512-байтного сектора снимает все проблемы с совместимостью, но это не так. Во-первых, сразу же возникает проблема с производительностью. Что произойдет при записи блока размером 512 байт на диск с размером сектора 4096 байт (пусть и эмулирующий наличие секторов 512 байт)? Произойдёт классический процесс read-modify-write, вместо одной операции понадобится две: прочитать сектор 4096 байт, поменять в нём 512 байт (записываемый блок) и записать 4096 байт обратно. Аналогичная проблема проявляется и при отсутствии выравнивания, когда записываемый блок данных может быть достаточно большим и даже кратным 4096 байт, но при этом сдвинут относительно границ реальных секторов:
В современных условиях операции записи блоками меньше 4096 байт встречаются крайне редко, а вот проблема с выравниванием остаётся. Например, в старых Windows (до Windows Server 2008) при установке загрузочный раздел создаётся со смещением в 63 сектора. Так уж исторически сложилось с тех времён, когда BIOS использовал реальную геометрию диска вместо LBA. Разумеется, смещение в 63×512 не делится на 4096, что приводит к нарушению выравнивания для всех последующих разделов и снижению производительности. Впервые на данную проблему обратили внимание в связи с использованием RAID-контроллеров и необходимостью выравнивания разделов по границам страйпа и она была решена в Windows Vista/ Windows Server 2008 (и примерно в то же время — в других ОС) введением выравнивания по границам в 1024КиБ (1МиБ), т.е. первый раздел создается со смещением в 2048 512-байтных секторов.
Почему именно 1МиБ, если подойдёт меньшее смещение (главное — чтобы делилось на 4096 байт)? Просто потому, что нужен запас, ведь помимо физического диска в качестве блочного устройства могут выступать тома на RAID-контроллерах (с размером страйпа по умолчанию, например, у Adaptec в 256КиБ), SSD (с большим размером страниц) или образы дисков при использовании виртуализации, рекомендуемый размер NTFS-кластера для SQL или Exchange равен 64КиБ и т.д.
Проблема номер два — возможная потеря данных для сценариев с синхронной записью. Для ситуаций с записью блока меньше 4096 байт или невыравненного блока синхронной записи по факту не получится. Остаётся «научить» ОС не использовать при записи блоки меньше 4096 байт на диски 512E, но с этим есть определённые проблемы.
Microsoft
Проверить выравнивание существующих разделов и задать смещение для новых разделов в Windows можно при помощи diskpart. Пример (раздел на диске 0 со смещением в 1024КиБ или 2048 512-байтных секторов):
Проверить проще всего через WMI (пример):
В колонке StartingOffset должно быть 1024КиБ для первого раздела, для остальных — должно делиться на 1024КиБ, это означает, что и на 4096 байт и все другие «хорошие числа» (размеры страйпов и NTFS-кластеров) всё будет делиться.
Напомню, что в современных Windows смещение в 1024КиБ и так используется по умолчанию, так что проверять/выставлять его вручную нужно лишь для ОС из «63-секторной» эпохи. При автоматическом создании GPT-разметки (через Disk Management) на 512N или 512E диске вы увидите смещение для первого раздела в 17КиБ. Это не повод для тревоги, так как это служебный раздел MSR. Первый стандартный раздел будет создан со смещением в 135266304 байт (129МиБ) — прекрасно делится на любое из наших «хороших чисел».
Linux
Пример для GNU Parted (для 512N/512E дисков):
В LVM всё хорошо: смещение по умолчанию равно 1МиБ и размер PE (physical extent) кратен 1МиБ.
VMware
Статья в базе знаний VMware утверждает, что ни 512E, ни 4KN диски не поддерживаются. Поддержка дисков 4KN заявлена в vSphere 6.0.
С появлением VMFS-5 мы получили единый размер блока — 1МиБ и правильное 1МиБ-смещение для первого раздела. Раньше использовалось не всегда подходящее смещение в 64КиБ. Но всё это не отменяет заявления VMware о том, что 512E диски не поддерживаются. Видимо, это связано с тем, что формат VMDK хранит данные с гранулярностью 512 байт.
Прочие ОС
Mac OSX поддерживает Advanced Format начиная с Tiger. Остаются ещё FreeBSD и прочие *BSD, Oracle Solaris и множество других ОС, но детальное рассмотрение ситуации с Advanced Format дисками в них выходит за рамки данной статьи.
Сервисы Microsoft
Hyper-V
Exchange Server
SQL Server
Ситуация та же, что и для Exchange Server — в отказоустойчивых конфигурациях для баз и логов на всех узлах должы использоваться диски с одинаковым физическим размером сектора.
При использовании Storage Spaces возникает интересная ситуация: презентуемый размер физического сектора оказывается равным 4КиБ вне зависимости от того, из каких дисков собран Storage Spaces (том Storage Spaces можно создать из разных дисков — 512N и 512E, смешивать с 4KN, естественно, нельзя, кроме случаев использования tiering’а с SSD). Формат VHDX (виртуальный диск) по умолчанию создаётся как 512E. В этом можно убедиться, запустив fsutil fsinfo ntfsinfo :
При использовании VHDX на томе Storage Spaces (или аппаратном RAID), состоящем из 4KN дисков, сам VHDX тоже желательно сделать 4KN:
Безопасно ли это для SQL и других приложений, использующих синхронную запись? Ответ — да, так как большая гранулярность хранения не нарушает целостности данных, на производительность это тоже не влияет, так как 4096 делится на 512.
Сервисы, использующие ESENT
Не совсем актуальная проблема в Windows Server 2008. Сервисы, использующие в работе Extensible Storage Engine API (AD, WINS, DHCP) могут упасть при изменении размера физического сектора (например, при миграции с 512N-диска на 512E). Подробное описание и хотфикс смотрите тут.
Прочее ПО
Контроллеры
Adaptec by PMC
LSI/Avago
Это свойство как раз и отвечает за презентуемые хосту размеры блоков:
Default (0): при наличии в томе дисков 512E он презентуется как 512E. Если все диски — 512N, тогда том презентуется как 512N
Disabled (1): Том всегда презентуется как 512N несмотря на наличие дисков 512E
Forced (2): Том всегда презентуется как 512E даже при отсутствии дисков 512E
Emulation Type был портирован и на SAS2 контроллеры (LSI 2108/2208), но без значения Forced (2).
Программный RAID в чипсетах Intel (RST/RSTe)
4KN не поддерживается совсем, Intel RST на дисках 512E требует свежих драйверов.
Advanced Format в дисках корпоративного класса. Что нас ждёт?
Речь пойдёт о дисках корпоративного класса последний серий. Десктопные HDD и позиционируемые для NAS или видеонаблюдения сюда не попали.
Вендор | Серия | Форм-фактор | Интерфейсы | Скорость вращения шпинделя, об/мин | Дополнительно | |||
Seagate | Enterprise Performance 10K HDD (10k.8) | 2.5″ | SAS | 10000 | Y | Y | Y | для 512N ёмкость ограничена: 600/1200ГБ |
Seagate | Enterprise Performance 15K HDD (15k.5) | 2.5″ | SAS | 15000 | Y | Y | Y | 32ГБ встроенного SSD-кэша |
Seagate | Enterprise Capacity 2.5 HDD (V.3) | 2.5″ | SAS, SATA | 7200 | Y | Y | ||
Seagate | Enterprise Capacity 3.5 HDD (V.4) | 3.5″ | SAS, SATA | 7200 | Y | Y | ||
Seagate | Archive HDD | 3.5″ | SATA | 7200 | Y | Позиционируются для архивного применения, меньше MTBF и хуже BER | ||
Seagate | Terascale HDD | 3.5″ | SATA | 5900/7200 | Y | Позиционируются для облачного применения, меньше MTBF и хуже BER | ||
HGST | Ultrastar C10K1800 | 2.5″ | SAS | 10000 | Y | Y | Y | для 512N ёмкость ограничена: 300/600/900/1200ГБ |
HGST | Ultrastar C15K600 | 2.5″ | SAS | 15000 | Y | Y | Y | |
HGST | Ultrastar C7K1000 | 2.5″ | SAS | 7200 | Y | |||
HGST | Ultrastar He 8 | 3.5″ | SAS, SATA | 7200 | Y | Y | ||
HGST | Ultrastar He 6 | 3.5″ | SAS, SATA | 7200 | Y | |||
HGST | Ultrastar 7K6000 | 3.5″ | SAS, SATA | 7200 | Y | Y | ||
HGST | MegaScale DC 4000.B | 3.5″ | SATA | 5400 | Y | Позиционируются для облачного применения, меньше MTBF и хуже BER | ||
WD | Xe | 2.5″/3.5″ | SAS | 10000 | Y | |||
WD | Re | 3.5″ | SATA | 7200 | Y | |||
WD | Se | 3.5″ | SATA | 7200 | Y | Позиционируются для облачного применения, меньше MTBF и хуже BER | ||
WD | Ae | 3.5″ | SATA | 5760 | Y | ? | Позиционируются для архивного применения, меньше MTBF и хуже BER | |
Toshiba | AL13SE | 2.5″ | SAS | 10000 | Y | |||
Toshiba | AL13SX | 2.5″ | SAS | 15000 | Y | |||
Toshiba | AL13SEL | 3.5″ | SAS | 10000 | Y | |||
Toshiba | MG03ACA/MG03SCA | 3.5″ | SAS, SATA | 7200 | Y | |||
Toshiba | MG04ACA | 3.5″ | SATA | 7200 | Y | Y | ||
Toshiba | MG04SCA | 3.5″ | SAS | 7200 | Y | Y | ||
Toshiba | MC04ACA | 3.5″ | SATA | 7200 | Y | Позиционируются для облачного применения, меньше MTBF и хуже BER |
Тенденцию вы видите сами — Advanced Format окончательно проник из десктопного сегмента в корпоративный. Быстрые SAS диски 10/15 тыс. об/мин ещё выпускаются в варианте 512N, но наращивание плотности заставляет производителей использовать 4КиБ-сектора: Seagate 10k.8 и HGST Ultrastar C10K1800 ёмкостью 1800ГБ доступны только в вариантах 512E и 4KN. Все диски объёмом больше 5ТБ за исключением HGST Ultrastar He 6 — только Advanced Format.
SSD имеют свои особенности. Читать и записывать данные можно страницами, размер которых составляет 2–4–8–16КиБ в зависимости от архитектуры SSD. При этом для записи нужно обеспечить предварительное стирание ячеек, которое осуществляется не постранично, а блоками по несколько сотен страниц. Например, Samsung 840 EVO имеет блоки по 2МиБ, каждый из которых состоит из 256-ти страниц по 8КиБ. При этом, естественно, любой презентуемый хосту размер блока — 512 или 4096 байт — будет абстракцией.
Некоторые из современных SAS/SATA SSD эмулируют 512E-диск, но большая часть из соображений совместимости — 512N. Каких-либо особых мер в связи с этим предпринимать не требуется, так как в SSD корпоративного класса содержимое кэша обязательно защищается от потери питания. Достаточно обеспечить выравнивание по размеру страницы.
Некоторые PCI-E SSD, например, производства Fusion IO дают возможность при помощи фирменных утилит изменить при форматировании размер логического сектора, т.е. переключаться между 512E и 4KN режимами. Для некоторых SSD с интерфейсом SAS это тоже возможно, например, Seagate 1200 поддерживает изменение размера сектора обычным sg_format. Переход на 4КиБ сектор в некоторых сценариях может существенно поднять производительность.