stringtranslate.com

Кластерная файловая система

Кластерная файловая система ( CFS ) — это файловая система , которая используется совместно путем одновременного монтирования на нескольких серверах . Существует несколько подходов к кластеризации , большинство из которых не используют кластеризованную файловую систему (только хранилище с прямым подключением к каждому узлу). Кластерные файловые системы могут предоставлять такие функции, как адресация, независимая от местоположения, и избыточность, которые повышают надежность или уменьшают сложность других частей кластера. Параллельные файловые системы — это тип кластерной файловой системы, которая распределяет данные по нескольким узлам хранения, обычно для обеспечения избыточности или производительности. [1]

Файловая система общего диска

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

Базовая сеть хранения данных может использовать любой из множества протоколов блочного уровня, включая SCSI , iSCSI , HyperSCSI , ATA over Ethernet (AoE), Fibre Channel , сетевое блочное устройство и InfiniBand .

Существуют разные архитектурные подходы к файловой системе общего диска. Некоторые распределяют информацию о файлах по всем серверам кластера (полностью распределяя). [2]

Примеры

Распределенные файловые системы

Распределенные файловые системы не имеют общего доступа на уровне блоков к одному и тому же хранилищу, а используют сетевой протокол . [3] [4] Они широко известны как сетевые файловые системы , хотя они не единственные файловые системы, использующие сеть для отправки данных. [5] Распределенные файловые системы могут ограничивать доступ к файловой системе в зависимости от списков доступа или возможностей как серверов, так и клиентов, в зависимости от того, как разработан протокол.

Разница между распределенной файловой системой и распределенным хранилищем данных заключается в том, что распределенная файловая система позволяет получать доступ к файлам, используя те же интерфейсы и семантику, что и к локальным файлам – например, монтирование/размонтирование, составление списка каталогов, чтение/запись на границах байтов, собственная модель разрешений системы. Распределенные хранилища данных, напротив, требуют использования другого API или библиотеки и имеют другую семантику (чаще всего семантику базы данных). [6]

Цели дизайна

Распределенные файловые системы могут стремиться к «прозрачности» во многих аспектах. То есть они стремятся быть «невидимыми» для клиентских программ, которые «видят» систему, аналогичную локальной файловой системе. За кулисами распределенная файловая система обеспечивает поиск файлов, транспортировку данных и потенциально предоставляет другие функции, перечисленные ниже.

История

В 1960-х годах несовместимая система разделения времени использовала виртуальные устройства для прозрачного межмашинного доступа к файловой системе. В 1970-х годах было разработано больше файловых серверов. В 1976 году компания Digital Equipment Corporation создала прослушиватель доступа к файлам (FAL), реализацию протокола доступа к данным в рамках фазы II DECnet , которая стала первой широко используемой сетевой файловой системой. В 1984 году компания Sun Microsystems создала файловую систему под названием « Сетевая файловая система » (NFS), которая стала первой широко используемой сетевой файловой системой на основе Интернет-протокола . [4] Другими известными сетевыми файловыми системами являются файловая система Эндрю (AFS), файловый протокол Apple (AFP), базовый протокол NetWare (NCP) и блок сообщений сервера (SMB), который также известен как общая файловая система Интернета (CIFS).

В 1986 году IBM объявила о поддержке клиентской и серверной архитектуры распределенного управления данными (DDM) для мейнфреймов System/36 , System/38 и IBM под управлением CICS . За этим последовала поддержка IBM Personal Computer , AS/400 , мэйнфреймов IBM под операционными системами MVS и VSE , а также FlexOS . DDM также стал основой для архитектуры распределенной реляционной базы данных , также известной как DRDA.

Существует множество одноранговых сетевых протоколов для распределенных файловых систем с открытым исходным кодом для облачных или кластерных файловых систем с закрытым исходным кодом, например: 9P , AFS , Coda , CIFS/SMB , DCE/DFS , WekaFS, [7] Lustre , PanFS, [8] Файловая система Google , Mnet, Chord Project .

Примеры

Network Attached Storage

Сетевое хранилище (NAS) обеспечивает как хранилище, так и файловую систему, например файловую систему общего диска поверх сети хранения данных (SAN). NAS обычно использует файловые протоколы (в отличие от блочных протоколов, которые использует SAN), такие как NFS (популярный в системах UNIX ), SMB/CIFS ( блокировка сообщений сервера/общая файловая система Интернета ) (используется в системах MS Windows). , AFP (используется с компьютерами Apple Macintosh ) или NCP (используется с OES и Novell NetWare ).

Рекомендации по проектированию

Как избежать единой точки отказа

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

Производительность

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

Параллелизм

Управление параллелизмом становится проблемой, когда несколько человек или клиентов обращаются к одному и тому же файлу или блоку и хотят его обновить. Следовательно, обновления файла от одного клиента не должны мешать доступу и обновлениям от других клиентов. Эта проблема более сложна для файловых систем из-за одновременной перекрывающейся записи, когда разные записывающие устройства одновременно записывают в перекрывающиеся области файла. [9] Эта проблема обычно решается с помощью управления параллелизмом или блокировки , которые могут быть либо встроены в файловую систему, либо обеспечены дополнительным протоколом.

История

Мейнфреймы IBM в 1970-х годах могли совместно использовать физические диски и файловые системы, если бы каждая машина имела собственное канальное соединение с блоками управления дисками. В 1980-х годах кластеры TOPS-20 и OpenVMS (VAX/ALPHA/IA64) компании Digital Equipment Corporation включали файловые системы с общими дисками. [10]

Смотрите также

Рекомендации

  1. ^ Сайфи, Амина; Кочхар, Гарима; Се, Дженвэй; Челебиоглу, Онур (май 2005 г.). «Повышение производительности кластеров высокопроизводительных вычислений с помощью параллельных файловых систем» (PDF) . Решения Dell Power . Делл Инк . Проверено 6 марта 2019 г.
  2. ^ Мокадем, Риад; Литвин, Витольд; Шварц, Томас (2006). «Резервное копирование диска с помощью алгебраических сигнатур в масштабируемых распределенных структурах данных» (PDF) . DEXA 2006 Спрингер . Проверено 8 июня 2006 г.
  3. ^ Зильбершац, Авраам; Гэлвин, Питер; Ганье, Грег (2009). «Концепции операционной системы, 8-е издание» (PDF) . Вавилонский университет . John Wiley & Sons, Inc., стр. 705–725. Архивировано из оригинала (PDF) 6 марта 2019 года . Проверено 4 марта 2019 г.
  4. ^ аб Арпачи-Дюссо, Ремзи Х.; Арпачи-Дюссо, Андреа К. (2014), Сетевая файловая система Sun (PDF) , Книги Арпачи-Дюссо
  5. ^ Сандберг, Рассел (1986). «Файловая система Sun Network: проектирование, реализация и опыт» (PDF) . Материалы летней технической конференции и выставки USENIX 1986 г. Сан Микросистемс, Инк . Проверено 6 марта 2019 г. NFS была разработана для упрощения совместного использования ресурсов файловой системы в сети неоднородных компьютеров.
  6. ^ Собх, Тарек (2008). Достижения в области компьютерных и информационных наук и техники . Springer Science & Business Media. стр. 423–440. Бибкод : 2008acis.book.....S.
  7. ^ «Распределенные файловые системы Weka (DFS)» . weka.io. ​27 апреля 2021 г. Проверено 12 октября 2023 г.
  8. ^ «Параллельная файловая система PanFS». panasas.com . Проверено 12 октября 2023 г.
  9. ^ Песах, Янив (2013). Распределенное хранилище: концепции, алгоритмы и реализации . ISBN 978-1482561043
  10. ^ Мерфи, Дэн (1996). «Истоки и развитие ТОПС-20». Дэн Мерфи. Амбициозные планы на Юпитер . Проверено 6 марта 2019 г. В конечном итоге и VMS, и TOPS-20 предоставили такую ​​возможность.

дальнейшее чтение