В неофициальной (то есть журналистской) прессе, посвященной технологиям, а также в блогах и дискуссионных форумах, посвященных технологическим технологиям, часто встречаются неподтвержденные советы о том, чтобы на жестких дисках или твердотельных дисках оставалось свободное место. Приводятся разные причины, а иногда и вовсе нет причин. Как таковые, эти заявления, хотя, возможно, и разумны на практике, имеют мифический характер. Например:
Как только ваши диски заполнены на 80%, вы должны считать их заполненными , и вы должны немедленно либо удалить объекты, либо обновить их. Если они заполнены на 90% , вы должны считать, что ваши личные штаны в настоящий момент в огне, и реагировать с соответствующей скоростью, чтобы исправить это. ( Источник .)
Чтобы обеспечить максимальную эффективность сбора мусора, традиционные рекомендации направлены на то, чтобы от 20 до 30 процентов вашего диска было пустым. ( Источник .)
Мне сказали, что я должен оставить около 20% свободного места на HD для лучшей производительности, что HD действительно замедляется, когда он близок к полному. ( Источник .)
Вы должны оставить место для файлов подкачки и временных файлов. В настоящее время я оставляю на 33% свободного места и клянусь, что не буду меньше 10 ГБ свободного места на жестком диске. ( Источник .)
Я бы сказал, как правило, 15%, однако, с учетом того, насколько большие жесткие диски сейчас подходят, если у вас достаточно временных файлов и файла подкачки, технически вы в безопасности. ( Источник .)
Я бы порекомендовал 10% плюс для Windows, потому что дефрагментация не запустится, если на диске не так много свободного места при запуске. ( Источник .)
Как правило, вы хотите оставить около 10% свободного, чтобы избежать фрагментации ( Источник .)
Если ваш накопитель постоянно заполнен более чем на 75 или 80 процентов, стоит подумать о переходе на SSD большего размера. ( Источник .)
Проводились ли какие-либо исследования, предпочтительно опубликованные в рецензируемом журнале, в процентном отношении или абсолютном объеме свободного пространства, необходимого для определенных комбинаций операционных систем, файловой системы и технологии хранения (например, магнитного диска в твердом состоянии)? (В идеале, такое исследование также должно объяснить причину не превышать определенный объем используемого пространства, например, чтобы предотвратить исчерпание пространства подкачки в системе или избежать потери производительности.)
Если вам известно о каком-либо таком исследовании, я был бы признателен, если бы вы ответили со ссылкой на него, а также с кратким изложением результатов. Спасибо!
источник
Ответы:
Для этого нужно вернуться намного дальше, чем на 20 лет, системного администрирования или чего-то еще. Это была горячая тема, по крайней мере, в мире операционных систем для персональных компьютеров и рабочих станций, более 30 лет назад; время, когда специалисты BSD разрабатывали Berkeley Fast FileSystem, а Microsoft и IBM разрабатывали высокопроизводительную файловую систему.
В литературе, посвященной обоим создателям, обсуждается, как эти файловые системы были организованы таким образом, чтобы политика выделения блоков обеспечивала более высокую производительность, пытаясь сделать последовательные блоки файлов непрерывными. Вы можете найти обсуждения этого и того факта, что количество и расположение свободного пространства, оставшегося для выделения блоков, влияет на размещение блоков и, следовательно, производительность, в современных статьях по этой теме.
Например, из описания алгоритма распределения блоков FFS Беркли должно быть достаточно очевидно, что если в текущей и вторичной группе цилиндров нет свободного места, и алгоритм, таким образом, достигает отступления четвертого уровня («применить исчерпывающий поиск») всем группам цилиндров ") пострадает производительность выделения дисковых блоков, а также фрагментация файла (и, следовательно, производительность чтения).
Именно эти и аналогичные анализы (далеко не единственные проекты файловых систем, которые были направлены на улучшение политики компоновки проектов файловых систем того времени) были основаны на мудрости, полученной за последние 30 лет.
Например: изречение в оригинальной статье о том, что тома FFS должны быть заполнены менее чем на 90%, чтобы не сказалось снижение производительности, основанное на экспериментах, проведенных создателями, можно найти без критических повторений даже в книгах по файловым системам Unix, опубликованным в этом веке (например, Pate2003, стр. 216) . Мало кто сомневается в этом, хотя на самом деле Амир Х. Меджидимер делал это столетие назад, говоря, что на практике Хе не наблюдал заметного эффекта; не в последнюю очередь из-за обычный механизм Unix , что резервы, окончательные 10% для использования привилегированного, а это означает , что на 90% диск эффективен на 100% для не-суперпользователь равно (Majidimehr1996 стр. 68), Как и Билл Калкинс (Bill Calkins), который предполагает, что на практике можно заполнить до 99% с размерами дисков 21-го века, прежде чем наблюдать эффектное влияние низкого свободного пространства, потому что даже 1% дисков современного размера достаточно, чтобы иметь много нефрагментированного свободного пространства. все еще играть с (Calkins2002 стр. 450) .
Последнее является примером того, как полученная мудрость может стать неправильной. Есть и другие примеры этого. Точно так же, как миры SCSI и ATA с адресацией логических блоков и зонированной битовой записью выбрасывают из окна все тщательные расчеты задержки вращения при проектировании файловой системы BSD, так и физическая механика твердотельных накопителей скорее выбрасывает из окна свободное пространство. получил мудрость, которая относится к дискам Винчестер.
В случае SSD объем свободного места на устройстве в целом , т. Е. На всех томах диска и между ними , влияет как на производительность, так и на срок службы. И сама основа идеи о том, что файл должен храниться в блоках с непрерывными адресами логических блоков, подрывается тем фактом, что твердотельные накопители не имеют пластин для вращения и головок для поиска. Правила снова меняются.
С твердотельными накопителями рекомендуемый минимальный объем свободного места на самом деле больше, чем традиционные 10%, полученные в результате экспериментов с дисками Winchester и Berkeley FFS 33 года назад. Например, Ананд Лал Шимпи дает 25%. Это различие усугубляется тем фактом, что это должно быть свободное пространство на всем устройстве , тогда как показатель 10% находится в пределах каждого отдельного тома FFS , и, следовательно, зависит от того, знает ли программа разбиения, чтобы TRIM все пространство, которое не является выделена на действительный том диска с помощью таблицы разделов.
Это также осложняется такими сложностями, как драйверы файловой системы с поддержкой TRIM, которые могут освободить пространство TRIM на томах дисков, и тот факт, что сами производители твердотельных накопителей также уже выделяют различные степени зарезервированного пространства , которое даже не видно с устройства (то есть для хоста). ) для различных целей, таких как сборка мусора и выравнивание износа.
Библиография
источник
Хотя я не могу говорить об «исследованиях», публикуемых «рецензируемыми журналами» - и я не хотел бы полагаться на них в повседневной работе - хотя я могу говорить о реалиях сотен производства серверы под различными операционными системами на протяжении многих лет:
Существует три причины, по которым полный диск снижает производительность:
Первый пункт тривиален, тем более что ни одна здравомыслящая производственная система никогда не будет использовать пространство подкачки при динамическом расширении и сжатии файлов.
Второй момент сильно отличается между файловыми системами и рабочей нагрузкой. Для системы Windows со смешанной рабочей нагрузкой порог в 70% оказывается вполне пригодным для использования. Для файловой системы Linux ext4 с небольшим, но большим количеством файлов (например, систем видеотрансляции), это может увеличиться до 90 +%.
Третий момент зависит от аппаратного и встроенного программного обеспечения, но особенно твердотельные накопители с контроллером Sandforce могут откатиться при свободном удалении блоков при высокой рабочей нагрузке при записи, что приведет к увеличению задержек при записи на тысячи процентов. Мы обычно оставляем 25% свободными на уровне раздела, а затем наблюдаем уровень заполнения ниже 80%.
рекомендации
Я понимаю, что упомянул, как обеспечить максимальную скорость заполнения. Некоторые случайные мысли, ни одна из которых не «рецензировалась» (платная, фальшивая или реальная), но все они из производственных систем.
/var
не относится к корневой файловой системе.df -h
и дайте сигнал тревоги в случае. Это может спасти вас от 30 ядер на root fs с автоматическими обновлениями, установленными и работающими без опции автоматического удаления.источник
/var
заполняется, и ваш сервер падает.За 20 лет системного администрирования я никогда не сталкивался с исследованиями, детализирующими требования к свободному пространству различных конфигураций. Я подозреваю, что это связано с тем, что компьютеры настроены по-разному, и это будет трудно сделать из-за огромного количества возможных конфигураций системы.
Чтобы определить, сколько свободного места требуется системе, необходимо учитывать две переменные:
Минимальное пространство, необходимое для предотвращения нежелательного поведения, которое само по себе может иметь плавное определение.
Обратите внимание, что определять только необходимое свободное пространство одним только этим определением бесполезно, поскольку это эквивалентно утверждению, что безопасно проехать 80 миль в час к кирпичной стене до той самой точки, в которой вы столкнетесь с ней.
Скорость, с которой используется хранилище, что диктует необходимость резервирования дополнительного переменного объема пространства, чтобы система не деградировала, прежде чем администратор успел среагировать.
Конкретная комбинация ОС, файловых систем, базовой архитектуры хранилища, а также поведения приложения, конфигурации виртуальной памяти и т. Д. Создает непростую задачу для тех, кто желает обеспечить определенные требования к свободному пространству.
Вот почему существует так много «самородков» советов. Вы заметите, что многие из них дают рекомендации относительно конкретной конфигурации. Например: «Если у вас есть SSD, из-за которого возникают проблемы с производительностью при приближении к емкости, оставайтесь выше 20% свободного места».
Поскольку на этот вопрос нет простого ответа, правильный подход для определения минимального требования к свободному месту в вашей системе состоит в том, чтобы рассмотреть различные общие рекомендации в свете конкретной конфигурации вашей системы, затем установить пороговое значение, отслеживать его и быть готовым к его настройке. как надо.
Или вы можете просто оставить как минимум 20% свободного места. Если, конечно, у вас нет тома RAID 6 емкостью 42 ТБ, подкрепленного комбинацией SSD и традиционных жестких дисков, и предварительно выделенного файла подкачки ... (это шутка для серьезных людей).
источник
Конечно, сам диск (как жесткий диск, так и твердотельный накопитель) может не заботиться о том, сколько процентов его используется, за исключением того, что твердотельные накопители могут заранее стереть для вас свободное место. Производительность чтения будет точно такой же, а производительность записи на SSD может быть несколько хуже. В любом случае, производительность записи не так важна на почти заполненном диске, так как нет места для записи.
С другой стороны, ваша ОС, файловая система и приложения будут ожидать, что у вас всегда будет свободное место. 20 лет назад для приложения было характерно проверять, сколько места у вас на диске, прежде чем пытаться сохранить свои файлы там. Сегодня приложение создает временные файлы, не спрашивая вашего разрешения, и, как правило, происходит сбой или работает неправильно, если они этого не делают.
Файловые системы имеют аналогичные ожидания. Например, NTFS резервирует большую часть вашего диска для MFT, но все равно показывает это пространство как свободное. Когда вы заполняете диск NTFS более чем на 80% его емкости, вы получаете фрагментацию MFT, которая очень сильно влияет на производительность.
Кроме того, наличие свободного места действительно помогает против фрагментации обычных файлов. Файловые системы имеют тенденцию избегать фрагментации файла , находя правильное место для каждого файла в зависимости от его размера. На почти заполненном диске у них будет меньше вариантов, поэтому им придется делать более плохие выборы.
В Windows вы также должны иметь достаточно места на диске для файла подкачки , который может увеличиваться при необходимости. Если это невозможно, вы должны ожидать принудительного закрытия ваших приложений. Наличие очень небольшого пространства подкачки может действительно ухудшить производительность.
Даже если у вашего свопа фиксированный размер, нехватка свободного места на системном диске может привести к сбоям в вашей системе и / или к невозможности ее загрузки (как в Windows, так и в Linux), поскольку ОС будет ожидать записи на диск во время загрузки. Так что да, если использовать 90% дискового пространства, вы должны считать, что ваши краски горят. Ни разу я не видел компьютеров, которые не загружались должным образом, пока последние загрузки не были удалены, чтобы дать ОС немного дискового пространства.
источник
Для твердотельных накопителей должно быть оставлено некоторое пространство, потому что тогда скорость перезаписи увеличивается и отрицательно влияет на производительность записи на диск. Наполнение на 80% является безопасным значением, вероятно, для всех дисков SSD, некоторые последние модели могут нормально работать даже при заполненной емкости на 90-95%.
https://www.howtogeek.com/165542/why-solid-state-drives-slow-down-as-you-fill-them-up/
источник
«Правила» варьируются в зависимости от ваших требований. И есть особые случаи, такие как, например, ZFS: «При емкости 90% ZFS переключается с оптимизации на производительность и на пространство, что имеет серьезные последствия для производительности». Да, это конструктивный аспект ZFS ... а не что-то полученное с помощью наблюдений или неподтвержденных данных. Очевидно, это не проблема, если ваш пул хранения ZFS состоит исключительно из SSD. Однако даже с вращающимися дисками вы можете с радостью достичь 99% или 100%, когда имеете дело со статическим хранилищем, и вам не нужна первоклассная производительность - например, ваша личная коллекция любимых фильмов, которая никогда не меняется и где безопасность является приоритетом 1.
Далее, btrfs - крайний случай: когда свободного места становится слишком мало (несколько мегабайт), вы можете достичь точки невозврата. Нет, удаление файлов не вариант, как вы не можете. Просто не хватает места для удаления файлов. btrfs - это файловая система COW (копирование при записи), и вы можете достичь точки, когда вы больше не сможете изменять метаданные. На этом этапе вы все еще можете добавить дополнительное хранилище в файловую систему (может работать флэш-накопитель USB), затем удалить файлы из расширенной файловой системы, затем сжать файловую систему и снова удалить дополнительное хранилище). Опять же, это какой-то аспект, вызванный дизайном файловой системы.
Люди, которые могут предоставить вам «реальные (серьезные) данные», вероятно, имеют дело с «настоящим (серьезным) хранением». (Отличный) ответ Twisty упоминает гибридные массивы (состоящие из огромного количества дешевых медленных вращений, большого количества быстрых вращающихся дисков, многих SSD ...), которые работают в корпоративной среде, где основным ограничивающим фактором является скорость, с которой администратор возможность заказать обновления. Переход с 16T на 35T может занять 6 месяцев ... так что в итоге вы получите отчеты с серьезной поддержкой, которые предлагают установить вашу тревогу на 50%.
источник
Есть много, много факторов, которые способствуют получению в очень специфичных для установки количествах. Таким образом, нет точного числа, оно может быть измерено только как функция этих параметров. (Вероятно, именно поэтому другие пользователи сообщают, что никаких конкретных исследований по этому конкретному вопросу не проводилось - слишком много переменных, чтобы составить что-либо убедительное.)
аппаратные средства
Файловая система
Тип нагрузки
источник
С механическими приводами следует учитывать одну вещь: пропускная способность внешнего края выше, чем внутреннего. Это потому, что на один оборот приходится больше секторов для большей окружности снаружи.
Когда накопитель достигнет емкости, производительность снизится, поскольку будут доступны только более медленные внутренние сектора.
Для более глубокого анализа см. Https://superuser.com/a/643634.
источник
Это зависит от предполагаемого использования диска, но в целом свободное место на 20–15% является хорошим ответом для вращающихся дисков, а 10% и более - для твердотельных накопителей.
Если это основной диск компьютера и файлы могут быть перемещены, то свободное пространство на 20% должно предотвратить существенное замедление работы. Это позволит достаточно свободного пространства на диске для перемещения и копирования данных по мере необходимости. Вращающийся диск будет работать лучше всего, когда свободные места ближе к исходным данным, тогда как в SSD физическое местоположение не влияет на ежедневную производительность. Таким образом, на прядильном диске должно быть больше свободного места по чисто эксплуатационным причинам. На SSD уменьшенное свободное пространство уменьшит срок службы диска, но не уменьшит производительность. SSD пытаются хранить временные данные и файлы случайной загрузки в наименее используемых местах, чтобы они могли сбалансировать использование соты по всему диску; в противном случае часть диска будет стареть намного быстрее, чем остальная часть.
Если это носитель или накопитель для длительного хранения, то достаточно 5-10% свободного места, и 10% предпочтительнее, если это вращающийся диск. Вам не нужно так много свободного места, потому что этот диск редко требует перемещения данных, поэтому производительность не так уж важна. Свободное пространство полезно главным образом для того, чтобы сбрасывать и заменять поврежденные сектора, а также для того, чтобы файлы были более непрерывными.
Я бы не стал продвигать диск на 95% больше, чем на один день, если бы не было очень веской и понятной причины.
источник