[ Страница назад | Страница вперед | Содержание | Индекс | Библиотека | Юридическая информация | Поиск ]

Руководство по настройке производительности


Изменение атрибутов файловой системы, влияющих на производительность

Чем дольше используется файловая система, тем более фрагментированной она становится. При динамическом выделении ресурсов блоки файлов становятся размещены все менее компактно, а логически последовательные файлы и логические тома физически становятся фрагментированными.

В результате при обращении к хранящимся на диске файлам наблюдаются следующие изменения:

После загрузки файла в память все перечисленные эффекты пропадают. Кроме перечисленных особенностей, производительность файловой системы зависит от следующих физических факторов:

В AIX версии 4 размер файловых систем может превышать 2 Гб. Фрагментация файловой системы позволяет более эффективно использовать дисковое пространство путем дополнительного деления блоков по 4 Кб. Количеством i-узлов, создаваемых для файловой системы, можно управлять с помощью параметра, определяющего количество байт на каждый i-узел (NBPI). Для файловых систем с размером фрагмента менее 4 Кб возможно сжатие данных. Размер фрагмента и сжатие данных значительно влияют на производительность. Эти атрибуты файловой системы обсуждаются в следующих разделах.

Размер фрагмента файловой системы

В AIX версии 4 размер фрагмента файловой системы может составлять меньше 4 Кб. При создании файловой системы системный администратор может указать для нее размер фрагментов. Допустимые значения: 512, 1024, 2048 и 4096 байт (значение по умолчанию). Файлы, размер которых меньше размера фрагмента, записываются в один фрагмент.

Для размещения файлов, размер которых меньше 4096 байт, выделяется минимально необходимое количество смежных фрагментов. Для хранения файлов размером от 4096 байт до 32 Кб (включительно) применяется один или несколько целых блоков по 4 Кб и несколько фрагментов меньшего размера. Например, файл размером 5632 байт займет целый блок размером 4 Кб, на который будет ссылаться первый указатель i-узла. При размере фрагмента 512 байт для первого блока размером 4 Кб будет выделено восемь фрагментов. Оставшиеся 1,5 Кб файла займут три фрагмента, на которые будет ссылаться второй указатель i-узла. Для файлов размером больше 32 Кб дисковое пространство выделяется блоками по 4 Кб, и указатели i-узла ссылаются именно на блоки по 4 Кб.

Независимо от размера фрагмента, размер блока всегда составляет 4096 байт. Однако в файловой системе, размер фрагмента которой менее 4096 байт, вместо полного блока можно выделить нужное количество расположенных друг за другом фрагментов общим объемом 4096 байт. Такая область не обязательно начинается с границы между двумя настоящими блоками по 4096 байт.

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

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

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

Если администратор принял решение создать файловую систему с небольшим размером фрагмента, он должен разработать стратегию дефрагментации этой файловой системы с помощью утилиты defragfs. При этом следует учесть объем ресурсов, который будет затрачиваться на выполнение команды defragfs (за дополнительной информацией обратитесь к разделу Дефрагментация файловой системы).

Сжатие данных

В случае применения сжатия файловой системы все данные перед записью на диск автоматически сжимаются с помощью алгоритма Lempel-Zev (LZ), а при чтении с диска автоматически разворачиваются. Алгоритм LZ основан на замене встречающихся последовательностей символов на указатель на первое вхождение последовательности. Применение этого алгоритма позволяет сэкономить в среднем около 50 процентов дискового пространства.

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

При записи файла в файловую систему со сжатием алгоритм сжатия сжимает данные блоками по 4096 байт (1 страница) и сохраняет сжатые данные в виде минимально необходимой последовательности непрерывных участков. Очевидно, что если в файловой системе используются непрерывные участки дискового пространства по 4 Кб, сжатие данных не приведет к экономии дискового пространства. Таким образом, при использовании сжатия данных в файловой системе должны применяться фрагменты размером менее 4096 байт.

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

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


[ Страница назад | Страница вперед | Содержание | Индекс | Библиотека | Юридическая информация | Поиск ]