MapR FS - MapR FS
| Разработчики) | MapR |
|---|---|
| Полное имя | MapR FS |
| Введено | 2011 с Linux |
| Структуры | |
| Содержимое каталога | B-дерево |
| Размещение файлов | Многоуровневое B-дерево |
| Пределы | |
| Максимум. размер тома | неограниченный |
| Максимум. размер файла | 16 EiB |
| Максимум. количество файлов | неограниченный |
| Особенности | |
| Разрешения файловой системы | Стандартные Unix, выражения контроля доступа |
| Прозрачное сжатие | да |
| Прозрачное шифрование | да |
| разное | |
| Поддерживаемые операционные системы | Linux |
MapR File System ( MapR FS ) является кластерной файловой системой , которая поддерживает как очень крупных и высокопроизводительных использования. MapR FS поддерживает множество интерфейсов, включая обычный доступ для чтения / записи к файлам через NFS и интерфейс FUSE, а также через интерфейс HDFS, используемый многими системами, такими как Apache Hadoop и Apache Spark . Помимо файлового доступа, MapR FS поддерживает доступ к таблицам и потокам сообщений с помощью API-интерфейсов Apache HBase и Apache Kafka, а также через интерфейс базы данных документов.
Впервые выпущенная в 2010 году, MapR FS теперь обычно описывается как платформа конвергентных данных MapR из-за добавления табличных интерфейсов и интерфейсов обмена сообщениями. Однако для реализации всех этих форм постоянного хранения данных используется одна и та же основная технология, и все интерфейсы в конечном итоге поддерживаются одними и теми же серверными процессами. Чтобы различать различные возможности общей платформы данных, термин MapR FS используется более конкретно для обозначения файловых интерфейсов, MapR DB или MapR JSON DB используется для обозначения табличных интерфейсов, а MapR Streams используется для описания возможности потоковой передачи сообщений.
MapR FS - это кластерная файловая система, поскольку она обеспечивает единообразный доступ к файлам и другим объектам, таким как таблицы, и к ним, с использованием универсального пространства имен, доступного с любого клиента системы. Управление доступом также предоставляется для файлов, таблиц и потоков с использованием выражений управления доступом , которые являются расширением более общего (и ограниченного) списка управления доступом, позволяющего составлять разрешения не только из списков разрешенных пользователей или групп, но вместо этого для разрешить логические комбинации идентификатора пользователя и групп.
История
MapR FS была разработана в 2009 году компанией MapR Technologies для расширения возможностей Apache Hadoop путем предоставления более производительной и стабильной платформы. На дизайн MapR FS влияют другие системы, такие как Andrew File System (AFS). Концепция томов в AFS имеет некоторое сходство с точки зрения пользователей, хотя реализация в MapR FS полностью отличается. Одно из основных различий между AFS и MapR FS заключается в том, что последний использует модель сильной согласованности, в то время как AFS обеспечивает только слабую согласованность.
Чтобы достичь исходных целей поддержки программ Hadoop, MapR FS поддерживает HDFS API, переводя вызовы функций HDFS во внутренний API на основе настраиваемого механизма удаленного вызова процедур (RPC). Обычная модель HDFS с однократной записью заменяется в MapR FS полностью изменяемой файловой системой даже при использовании HDFS API. Возможность поддержки мутации файлов позволяет реализовать сервер NFS, который преобразует операции NFS во внутренние вызовы MapR RPC. Подобные механизмы используются для разрешения интерфейса файловой системы в пользовательском пространстве (FUSE) и приблизительной эмуляции API Apache HBase .
Архитектура
Файлы в MapR FS внутренне реализованы расщеплением содержимое файла в куски , как правило , каждый из 256 МБ , хотя размер специфичен для каждого файла. Каждый чанк записывается в контейнеры, которые являются элементом репликации в кластере. Контейнеры реплицируются, и репликация выполняется либо линейным способом, при котором каждая реплика пересылает операции записи следующей реплике в строке, либо звездообразным способом, когда главная реплика пересылает операции записи всем другим репликам одновременно. Записи подтверждаются главной репликой после завершения всех операций записи во все реплики. Внутри контейнеры реализуют B-деревья, которые используются на нескольких уровнях, например для сопоставления смещения файла с фрагментом внутри файла или для сопоставления смещения файла с правильным блоком размером 8 КБ внутри фрагмента.
Эти B-деревья также используются для реализации каталогов. Длинный хэш имени каждого файла или каталога в каталоге используется для поиска дочернего файла или таблицы каталогов.
Том - это особая структура данных, во многом похожая на каталог, за исключением того, что она позволяет выполнять дополнительные операции контроля доступа и управления. Примечательной возможностью томов является то, что узлы, на которых может находиться том в кластере, могут быть ограничены для управления производительностью, особенно в сильно конкурирующих многопользовательских системах, на которых выполняется широкий спектр рабочих нагрузок.
Запатентованная технология используется в MapR FS для реализации транзакций в контейнерах и обеспечения последовательного восстановления после сбоев.
Другие особенности файловой системы включают
- Распределенные метаданные кластера, включая расположение всех контейнеров и их расположение в цепочках репликации.
- Распределенные метаданные, включая дерево каталогов. Все каталоги полностью реплицированы, и ни один узел не содержит всех метаданных для кластера.
- Эффективное использование B-деревьев для достижения высокой производительности даже с очень большими каталогами.
- Допуск на разделение. Кластер можно разделить без потери согласованности, хотя доступность может быть нарушена. Репликация с ограниченной согласованностью между несколькими кластерами также поддерживается с использованием зеркал томов и репликации таблиц и потоков почти в реальном времени.
- Последовательное многопоточное обновление. Файлы могут обновляться или считываться очень многими потоками управления одновременно, не требуя глобальных структур блокировки.
- Постоянные обновления и онлайн-обслуживание файловой системы. Почти все обслуживание, включая обновление основных версий, можно выполнять, пока кластер продолжает работать почти на полной скорости.
Смотрите также
- GFS2
- Gluster
- Файловая система Google
- Список файловых систем
- Lustre (файловая система)
- MooseFS
- OCFS2
- QFS
- РозоФС
- Файловая система общего диска
- ZFS