Как ускорить запросы метаданных (getattr) на Файловый сервер NFS для быстрого чтения из локального кэша?

У нас есть сервер хранения с пулом RAID-6 на 12 дисков из 100 ТБ. Он используется несколькими клиентскими вычислительными узлами через NFS, в основном выполняя обучение глубокому обучению (много изображений размером ~ 100 КБ, загружаются в случайном порядке).

Чтобы ускорить доступ к файлам, мы используем cachefilesd на сервере вычислительные узлы. Это хорошо работает, потому что рабочая нагрузка такова, что каждое учебное задание обычно читает одни и те же 10–100 ГБ снова и снова, что может быть хорошо кэшировано на локальном SSD.

Теперь предположим, что помимо обычных учебных заданий, также запускается другой тип нагрузки (тяжелое задание чтения). Этот не может быть так хорошо кэширован, потому что он считывает большой объем данных только один раз (занимает много времени), вместо повторяющегося поведения обычных учебных заданий. Это задание всегда требует глубокого чтения с реальных дисков.

Проблема, с которой мы сталкиваемся, заключается в том, что даже несмотря на то, что обычные учебные задания могут читать из своего локального кеша, чтение метаданных становится узким местом. То есть, cachefilesd должен убедиться, что кеш все еще актуален, поэтому он спрашивает сервер NFS, был ли файл изменен с момента его кэширования. Поэтому cachefilesd запрашивает атрибут модификации (mtime) каждого читаемого файла. Однако, поскольку сервер хранения занят обслуживанием тяжелого задания на чтение, у него недостаточно времени для ответа на эти запросы getattr, поступающие от вычислительных узлов с достаточно высокой скоростью, что приводит к узкому месту.

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

2
задан 27 September 2019 в 17:30
1 ответ

მეტამონაცემების ინტენსიური მოქმედებები არ არის საუკეთესო შემთხვევა NFS დატვირთვისთვის. თუ დირექტორიების შინაარსი არ იცვლება, ან ის ცვლილებები არ ჩანს კლიენტებისთვის დაუყოვნებლივ, შეგიძლიათ გაზარდოთ კლიენტის მხარის ატრიბუტის მეხსიერების მეხსიერების ხანგრძლივობა actimeo მონტაჟის პარამეტრის მორგებით. დამატებითი ინფორმაციისთვის გადაამოწმეთ man nfs .

1
ответ дан 3 December 2019 в 12:29

Теги

Похожие вопросы