Файловая система сетки - Grid file system

А файловая система сетки - это компьютерная файловая система, целью которой является повышение надежности и доступности за счет использования множества небольших областей хранения файлов.[1]

Составные части

Файловые системы содержат до трех компонентов:

  • Таблица файлов (таблица FAT, MFT и т. Д.)
  • Данные файла
  • Метаданные (права пользователя и т. д.)

Сеточная файловая система будет иметь аналогичные потребности:

Сравнения

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

Функции

В большинстве файловых хранилищ используются уровни избыточности для достижения высокого уровня защиты данных (невозможность потери данных). Текущие средства резервирования включают репликацию и проверку четности. Такое резервирование может быть реализовано через RAID массив (при этом несколько физических дисков отображаются на локальном компьютере как один диск, который может включать репликацию данных и / или разбиение диска). Точно так же файловая система сетки будет состоять из некоторого уровня избыточности (либо на уровне логических файлов, или на уровне блоков, возможно, включая некоторую проверку четности) на различных дисках, присутствующих в «сетке».

Рамки

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

Выполнение

С BitTorrent Можно провести параллель с файловой системой сетки, в которой торрент-трекер (и поисковая система) будут «таблицей файлов», а торрент-приложения (передающие файлы) будут компонентом «данных файла». RSS подобный каналу механизм может использоваться узлами файловой таблицы, чтобы указывать, когда новые файлы добавляются в таблицу, чтобы инициировать репликацию и другие подобные компоненты.

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

Если бы обе такие системы (файловая таблица и файловые данные) могли обрабатываться как единое целое (т. Е. Использовать виртуальные узлы в кластере), то рост в такую ​​систему можно было бы легко контролировать, просто решив, какое использование будет использовать член сетки нести ответственность (таблица файлов и поиск файлов и / или данные файла).

Доступность

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

Вызовы

Самая большая проблема в настоящее время связана с распространением обновлений данных. Торренты поддерживают минимальную иерархию (в настоящее время реализовано как метаданные в торрент-трекере или строго как пользовательский интерфейс и базовая категоризация). Одновременное обновление нескольких узлов (при условии, что требуются атомарные транзакции) представляет собой задержку во время обновлений и добавлений, обычно до такой степени, что это невозможно. Кроме того, сеточная (сетевая) файловая система нарушает традиционные парадигмы TCP / IP в том, что файловая система (обычно низкоуровневые операции типа кольцо 0) требуют сложных реализаций TCP / IP, вводя уровни абстракции и усложняя процесс создания такой файловой системы сетки.

Примеры

Примеры данных с высокой доступностью включают:

  • Сеть Балансировка нагрузки / Карп - разделение входящих запросов на несколько компьютеров, обычно настроенных одинаково или как одно целое.
  • Общее хранилище кластеризация / SAN - один диск (один или несколько физических дисков, действующих как один логический диск) предоставляется нескольким компьютерам, которые разделяют входящие запросы. Обычно это используется, когда требуется больше вычислительной мощности, чем доступ к диску.
  • Данные репликация / mirroring - несколько компьютеров могут попытаться синхронизировать данные (обычно на момент времени или на основе моментальных снимков). Чаще используется для создания отчетов (на основе последнего снимка) или резервного копирования.
  • Данные разделение - разделение данных между несколькими компьютерами. В базах данных данные часто разделяются на основе таблиц (определенные таблицы существуют на определенных компьютерах или таблица разделена между несколькими компьютерами в определенных «точках разрыва») ... общие файлы обычно разбиваются по категориям (папки на основе категорий) , или местоположение (географически разделенное).

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

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

  1. ^ Маад, Соха; Коглан, Брайан; Куигли, Джефф; Райан, Джон; Кенни, Имонн; о'Каллаган, Дэвид (2007). «На пути к полной функциональности файловой системы сетки». Компьютерные системы будущего поколения. 23: 123–131. Дои:10.1016 / j.future.2006.06.006.