С большим количеством более современных компьютеров, использующих SSD (твердотельные накопители), один вопрос, который я часто слышу – нужно ли дефрагментировать SSD? Большинство из нас задаются вопросом, следует ли дефрагментировать SSD в Windows 10/7 и может ли сама Windows дефрагментировать их во время автоматического обслуживания. Жёсткие диски работают с использованием физического вращающегося диска с расположенными над ним головками привода, которые должны располагаться над правильными данными. Данные хранятся на разных участках диска в последовательно упорядоченных блоках. Чтобы получить доступ к блоку для чтения или записи, головки привода должны быть расположены над правильным сектором (время поиска), а затем требуемый блок должен пройти под головками привода (задержка вращения).
В совокупности эти два шага дают время доступа к диску. Для типичного привода 7200 об/мин задержка вращения составляет 4,17 мс (половина одного оборота), а время поиска составляет около 8-12 мс.
При использовании данные, которые когда-то последовательно упорядочивались на диске, могут разделяться на разные блоки. Это называется фрагментацией, и когда это происходит, головкам дисков требуется доступ к данным из двух (или более, а иногда и многих других) разных разделов диска, что резко снижает производительность. Дефрагментация упорядочивает блоки данных последовательно и пытается восстановить исходную производительность вашего жесткого диска.
А как насчёт твердотельных накопителей – они получают выгоду от дефрагментации? Простой ответ – нет. Вся основа фрагментированных данных основана на том факте, что ваше устройство хранения использует движущиеся части для доступа к данным. Поскольку твердотельные накопители не имеют движущихся частей, следовательно, у твёрдотельного накопителя нет времени на поиск или задержки вращения. Вместо этого твёрдотельные накопители получают доступ к флэш-памяти (NAND) на гораздо более высоких скоростях, обычно менее 50 мкс – по сравнению с обычным жёстким диском со средним временем доступа 15 мс, примерно в 300 раз быстрее. Но в этой истории есть нечто большее, чем просто скорость.
Твёрдотельные накопители не только устраняют движущиеся части и сокращают время доступа, они также имеют встроенные алгоритмы выравнивания износа. Причина в том, что вентили NAND со временем изнашиваются и рассчитываются в циклах программы/стирания. Каждая ячейка в современном SSD может быть записана от 1000 до 3000 раз, прежде чем ячейка перестанет работать должным образом. Чтобы избежать быстрого износа отдельных ячеек, содержащих часто изменяемые данные, твердотельные накопители отслеживают использование каждого блока, а алгоритмы выравнивания износа гарантируют, что со временем ячейки на твердотельном накопителе записываются одинаковое количество раз. Существуют также дополнительные блоки, недоступные для пользователя (называемые резервной областью), которые алгоритмы могут использовать для предотвращения износа накопителей.
Из-за того, как работают твердотельные накопители, данные не только не становятся фрагментированными, но и запускается утилита дефрагментации, которая фактически проходит циклы программирования/стирания и может привести к преждевременной «смерти» твердотельного накопителя. Но это не происходит очень быстро: Samsung 850 Evo объёмом 500 ГБ в качестве примера рассчитан на 150 ТБ общего объема записи или эквивалент записи в каждый блок накопителя не менее 300 раз. При том, что обычные пользователи пишут в среднем менее 20 ГБ в день, для записи 150 ТБ записей потребуется более 20 лет. Но дефрагментация может легко записать сотни ГБ данных, что изнашивает SSD намного быстрее.
Хорошей новостью является то, что любая программа дефрагментации, которую стоит использовать, должна также обнаруживать наличие SSD и предупреждать о том, что его не следует дефрагментировать. Поэтому сэкономьте своё время и сделайте что-нибудь более полезное, например, поиграйте в игры вместо дефрагментации.