GPFS
GPFS (General Parallel File System, общая параллельная файловая система) — это высокопроизводительная кластерная файловая система, разработанная корпорацией IBM. Она предназначена для обеспечения параллельного доступа к данным с нескольких узлов (серверов) в сети, обеспечивая при этом единое пространство имён, высокую пропускную способность и отказоустойчивость. GPFS используется в основном в высокопроизводительных вычислениях (HPC), системах хранения данных (SAN) и облачных инфраструктурах.
История
Разработка GPFS началась в середине 1990-х годов в исследовательском центре IBM в Сан-Хосе (Калифорния). Первоначально система создавалась для кластеров суперкомпьютеров IBM SP (Scalable POWERparallel), которые использовались в научных и военных целях. Первая публичная версия GPFS была выпущена в 1998 году.
В 2000-х годах GPFS была адаптирована для работы на платформах Linux и AIX, что расширило её применение. В 2009 году IBM выпустила версию GPFS 3.2, которая поддерживала до 4096 узлов в одном кластере. В 2012 году система была переименована в IBM Spectrum Scale, хотя в технической документации и сообществе до сих пор часто используется название GPFS.
В 2010-х годах GPFS/IBM Spectrum Scale стала ключевым компонентом многих крупных систем хранения, включая IBM Elastic Storage Server (ESS) и IBM Cloud Object Storage. В 2019 году IBM представила версию 5.0, которая улучшила поддержку контейнерных сред и облачных развёртываний.
Архитектура
GPFS основана на архитектуре «общего диска» (shared-disk), где все узлы кластера имеют доступ к одному и тому же набору физических дисков (обычно через SAN или прямое подключение). При этом система использует распределённый менеджер блокировок (Distributed Lock Manager, DLM) для координации одновременного доступа к данным.
Ключевые компоненты
- Узлы (nodes): серверы, работающие под управлением AIX, Linux (включая RHEL, SLES, Ubuntu) или Windows Server. Каждый узел может быть клиентом (использует файловую систему) или сервером (управляет хранением).
- Диски (disks): физические устройства хранения (HDD, SSD, NVMe), объединённые в группы (NSD — Network Shared Disks).
- Менеджер блокировок (DLM): распределённый модуль, который управляет блокировками на уровне файлов, записей и метаданных.
- Кэш (cache): каждый узел использует локальный кэш для ускорения операций чтения/записи.
Режимы работы
GPFS поддерживает несколько режимов конфигурации:
- Кластерный режим (cluster mode): все узлы работают как единое целое, используя общий пул дисков.
- Режим с репликацией (replication mode): данные дублируются на нескольких дисках для обеспечения отказоустойчивости.
- Режим с шифрованием (encryption mode): данные шифруются на уровне файловой системы.
Характеристики
GPFS обладает рядом уникальных технических характеристик, которые выделяют её среди других кластерных файловых систем (например, Lustre, GlusterFS, Ceph).
Производительность
- Параллельный доступ: все узлы могут одновременно читать и записывать данные, что обеспечивает высокую совокупную пропускную способность (до сотен гигабайт в секунду в крупных конфигурациях).
- Балансировка нагрузки: система автоматически распределяет операции ввода-вывода по доступным дискам и узлам.
- Оптимизация для больших файлов: GPFS особенно эффективна при работе с файлами размером от нескольких гигабайт до терабайт (например, в научных симуляциях).
Отказоустойчивость
- Репликация данных: поддерживается зеркалирование (RAID 1) на уровне файловой системы.
- Автоматическое восстановление: при сбое диска или узла система переключается на резервные копии без остановки работы.
- Журналирование: все изменения метаданных фиксируются в журнале, что позволяет быстро восстанавливать целостность после сбоев.
Масштабируемость
- Поддержка до 8192 узлов в одной файловой системе (в версии 5.0+).
- Ёмкость хранения: до 10 петабайт (и более с использованием внешних систем).
- Глобальное пространство имён: файлы видны всем узлам независимо от их физического расположения.
Применение
GPFS используется в различных областях, где требуется высокопроизводительное хранение и обработка данных.
Высокопроизводительные вычисления (HPC)
GPFS является стандартом де-факто для многих суперкомпьютеров, включая:
- IBM Summit (Ок-Риджская национальная лаборатория, США) — один из самых мощных суперкомпьютеров мира (2018–2020), использовал GPFS для хранения данных.
- IBM Sierra (Ливерморская национальная лаборатория, США).
- Ломоносов-2 (Московский государственный университет, Россия) — использует GPFS для организации параллельного доступа к данным.
Научные исследования
- CERN (Европейская организация по ядерным исследованиям) — GPFS используется для хранения данных экспериментов на Большом адронном коллайдере.
- Астрономия: обработка изображений с телескопов (например, Square Kilometre Array).
Финансовый сектор
- Банки и биржи: GPFS применяется для высокочастотной торговли (HFT) и аналитики в реальном времени, где требуется минимальная задержка доступа к данным.
Медиа и развлечения
- Видеомонтаж: GPFS используется в студиях для параллельной работы с большими видеофайлами (например, в индустрии спецэффектов).
- Стриминг: системы хранения для потокового видео (например, Netflix использует GPFS в некоторых инфраструктурах).
Критика и ограничения
Несмотря на высокую производительность, GPFS имеет ряд недостатков:
- Сложность настройки: требует квалифицированного персонала для установки и конфигурации.
- Зависимость от оборудования: оптимальная работа достигается только на сертифицированном оборудовании IBM.
- Стоимость: лицензирование GPFS является дорогостоящим, что ограничивает её применение в небольших организациях.
- Закрытость: исходный код не является открытым, что затрудняет интеграцию с нестандартными системами.
Альтернативы
На рынке существуют несколько альтернативных кластерных файловых систем:
- Lustre: открытая файловая система, широко используемая в HPC (например, на суперкомпьютерах «Титан» и «Фугаку»).
- GlusterFS: распределённая файловая система с открытым исходным кодом, ориентированная на облачные среды.
- Ceph: масштабируемая объектная, блочная и файловая система с открытым кодом.
- BeeGFS: коммерческая файловая система, популярная в академических кругах.
Интересные факты
- GPFS поддерживает работу с файлами размером до 2^63 байт (9,22 эксабайта), что теоретически позволяет хранить данные на уровне эксабайтных систем.
- В 2011 году GPFS была использована для обработки данных эксперимента по моделированию климата Earth Simulator (Япония), где достигалась скорость записи 1,5 ТБ/с.
- Система поддерживает «горячее» добавление дисков и узлов без остановки работы кластера.
Источники
- IBM Spectrum Scale: Technical Overview and Architecture (IBM Redbooks, 2020).
- «GPFS: A Shared-Disk File System for Large Computing Clusters» (IEEE Transactions on Parallel and Distributed Systems, 2002).
- «High-Performance Computing with GPFS» (IBM Systems Journal, 2005).
- Документация IBM Spectrum Scale 5.0.3 (IBM Knowledge Center, 2021).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →