POHMELFS
Эта статья написана в рекламном стиле. |
POHMELFS | |
---|---|
Разработчик | Евгений Поляков |
Файловая система | Parallel Optimized Host Message Exchange Layered File System |
Дата представления | 9 июня 2009 года (Linux 2.6.30) |
Возможности | |
Поддерживается ОС | Linux |
POHMELFS (аббревиатура от Parallel Optimized Host Message Exchange Layered File System) — кэш-согласованная распределенная файловая система, разработанная российским линукс-хакером[1] Евгением Поляковым. Нынешняя реализация может рассматриваться как более быстрая и изящная замена широко распространенного протокола сетевого доступа к файловым системам Network File System (NFS), который используется для реализации общего доступа к файловым системам между компьютерами в ЛВС, с возможностью использования параллельных соединений с целью ускорения передачи данных, и построения сетевого графика для конвергенции их в действительно распределенную файловую систему с хорошей масштабируемостью, кэшированием и высокой устойчивостью к ошибкам.
О создании POHMELFS было объявлено 31 января 2008 года[2]; 12 февраля 2009 года в Linux Kernel Mailing List Archive (LKML.org) появилось сообщение[3] Грега Кроа-Хартмана (англ. Greg Kroah-Hartman) о включении кода файловой системы POHMELFS в «-staging» ветку ядра Linux[4]. 9 июня 2009 года поддержка POHMELFS была включена в версию ядра Linux 2.6.30.
Функциональные возможности
Основными возможностями файловой системы POHMELFS являются[4]:
- Поддержание локального кэша для данных и мета-данных, согласованного для всех узлов использующих ФС;
- Обработка данных и событий в асинхронном режиме, за исключением операций с жёсткими и символическими ссылками;
- Гибкая архитектура, оптимизированная для обмена данными по сети, включая возможность объединения нескольких операций в одну управляющую команду передаваемую по сети;
- Одна из первичных целей проекта — высокая производительность;
- Быстрый многопоточный сервер, работающий на пользовательском уровне, по производительности заметно опережающий асинхронный режим NFS сервера, работающего на уровне ядра.
История
Разработка файловой системы начата приблизительно в ноябре 2007 года. Первый публичный релиз состоялся 31 января 2008 года[2].
Планы
Код POHMELFS будет пересмотрен с целью создания полностью распределённой файловой системы с использованием завершённых автором проектов: DST (Distributed network storage, распределённое сетевое хранилище) и нового хранилища Elliptics network, обеспечивающего устойчивое к сбоям распределенное хранение данных на нескольких компьютерах в сети. Результатом пересмотра кода должна была стать распределённая, параллельная файловая система с поддержкой распределённой блокировки (англ. distributed locking), когеренции кэша и устойчивостью к ошибкам.
Помимо этого, доработанная версия файловой системы будет иметь следующие возможности[5]:
- Расширение сервера в направлении возможности хранения данных на нескольких устройствах (своего рода вариант зеркалирования), данные сперва будут сохраняться в различные локальные каталоги, а затем зеркалироваться на внешние разделы NFS или POHMELFS;
- Дополнение клиента и сервера средствами параллельного чтения/записи данных с соседних узлов;
- Реализация средств аутентификации и шифрования передаваемых по сети данных;
- Возможность автоматического переключения на запасной сервер в случае сбоя текущего.
См. также
Примечания
- ↑ Эксперт по отношению к определённой компьютерной программе, или кто-либо часто работающий с ней; здесь: «хакер Linux». Архивная копия от 28 февраля 2009 на Wayback Machine (англ.)
- ↑ 2,0 2,1 Entry 2008.01.31 Архивировано 6 октября 2008 года. (англ.)
- ↑ [Thread «pohmelfs for drivers/staging» (англ.) . Дата обращения: 4 сентября 2009. Архивировано 19 февраля 2009 года. Thread «pohmelfs for drivers/staging» (англ.)]
- ↑ 4,0 4,1 Файловая система POHMELFS включена в «-staging» ветку Linux ядра . Дата обращения: 4 сентября 2009. Архивировано 19 апреля 2009 года.
- ↑ Вышел релиз сетевой файловой системы POHMELFS Архивная копия от 12 марта 2009 на Wayback Machine.
Ссылки
- Страница проекта
- http://kernelnewbies.org/Linux_2_6_30#head-d2d7e82afe6019227c8d6f661608550a2ca917f1
- https://web.archive.org/web/20080618013305/http://kerneltrap.org/Linux/POHMELFS_Performance
- https://web.archive.org/web/20080529105429/http://kerneltrap.org/Linux/POHMELFS_Full_Transaction_Support
- http://lwn.net/Articles/267896/