- •Аппаратно-программные платформы корпоративных информационных систем
- •Проблемы выбора аппаратно-программной платформы, соответствующей потребностям прикладной области
- •Серверы
- •Мейнфреймы
- •Кластерные архитектуры
- •Тесты spec
- •Тесты tpc
- •Тесты tpc
- •Тест tpc-a
- •Будущие тесты tpc
- •Тесты aim
- •Общие свойства распределенных файловых систем
- •Вопросы разработки
- •Сетевая файловая система nfs
- •Взгляд со стороны пользователя
- •Цели разработки
- •Компоненты nfs
- •Отсутствие сохранения состояния
- •Общие сведения о работе и нагрузке nfs
- •Операции с атрибутами
- •Операции с данными
- •Сравнение приложений с разными наборами операций nfs
- •Типовой пример использования nfs
- •Nfs и клиентские пк
- •Операционные системы реальной памяти
- •Файловая система с репликацией данных (cfs)
- •Использование высокоскоростных сетей для предотвращения перегрузки
- •Nfs и глобальные сети
- •Выбор типа сети и количества клиентов
- •Потребление процессорных ресурсов
- •Конфигурации дисковой подсистемы и балансировка нагрузки
- •Организация последовательного доступа в nfs с интенсивным использованием данных
- •Организация произвольного доступа в nfs с интенсивными запросами атрибутов
- •Распределение нагрузки по доступу к дискам с помощью программного обеспечения типа Online:DiskSuit
- •Использование оптимальных зон диска
- •Заключительные рекомендации по конфигурированию дисков
- •Нестандартные требования к памяти
- •Обеспечение резервного копирования и устойчивости к неисправностям
- •Предварительная оценка рабочей нагрузки
- •Измерение существующих систем
- •Оценка среды с интенсивным использованием атрибутов
Операции с атрибутами
Операции с атрибутами создают для системы намного меньшую нагрузку, чем операции с данными. Поскольку размер атрибутов файла очень мал (пара сотен байтов на файл), большинство атрибутов файловой системы, связанных с активными файлами, будет буферизоваться (кэшироваться) в основной памяти сервера. Даже если атрибуты файла не кэшируются, они просто отыскиваются и читаются с диска. После того как атрибуты файла выбраны сервером для какого-либо клиента, обслуживание любого запроса к этим атрибутам заключается лишь в манипулировании битами кэшированных атрибутов и выполнении обычного сетевого протокола. Накладные расходы, связанные с сетевой обработкой этих операций сравнительно высоки, поскольку относительное количество полезных байтов данных в реально передаваемом пакете невелико. Атрибуты пересылаются небольшими пакетами (большинство имеют размер 64-128 байт). В результате операции с атрибутами потребляют относительно небольшую полосу пропускания сети.
Операции с данными
В отличие от операций с атрибутами, операции с данными по определению имеют размер 8 Кбайт. (Это размер блока данных, определенный NFS. Сравнительно недавно анонсированная версия протокола NFS+ допускает блоки данных размером до 4 Гбайт. Однако это существенно не меняет саму природу операций с данными). Кроме того, в то время как для каждого файла имеется только один набор атрибутов, количество блоков данных размером по 8 Кбайт в одном файле может быть большим (потенциально может достигать несколько миллионов). Для большинства типов NFS-серверов блоки данных обычно не кэшируются и, таким образом, обслуживание соответствующих запросов связано с существенным потреблением ресурсов системы. В частности, для выполнения операций с данными требуется значительно большая полоса пропускания сети: каждая операция с данными включает пересылку шести больших пакетов по Ethernet (двух по FDDI). В результате вероятность перегрузки сети представляет собой гораздо более важный фактор при рассмотрении операций с данными.
Как это ни удивительно, но в большинстве существующих систем доминируют операции с атрибутами, а не операции с данными. Если клиентская система NFS хочет использовать файл, хранящийся на удаленном файл-сервере, она выдает последовательность операций поиска (lookup) для определения размещения файла в удаленной иерархии каталогов, за которой следует операция getattr для получения маски прав доступа и других атрибутов файла; наконец, операция чтения извлекает первые 8 Кбайт данных. Для типичного файла, который находится на глубине четырех или пяти уровней подкаталогов удаленной иерархии, простое открывание файла требует пяти-шести операций NFS. Поскольку большинство файлов достаточно короткие (в среднем для большинства систем менее 16 Кбайт) для чтения всего файла требуется меньше операций, чем для его поиска и открывания. Последние исследования компании Sun обнаружили, что со времен операционной системы BSD 4.1 средний размер файла существенно увеличился от примерно 1 Кбайт до немногим более 8 Кбайт.
Для определения корректной конфигурации сервера NFS прежде всего необходимо отнести систему к одному из двух классов в соответствии с доминирующей рабочей нагрузкой для предполагаемых сервисов NFS: с интенсивными операциями над атрибутами или с интенсивными операциями над данными.