Базовые понятия ZDS
Назначение статьи
В этой статье собраны основные термины ZDS. Они используются во всех остальных материалах раздела и задают единый словарь для описания нижнего слоя хранения.
Узел
Узел - экземпляр ZDS, запущенный на отдельном сервере или виртуальной машине и входящий в состав кластера.
Узел:
- принимает внешние или внутренние запросы;
- хранит часть данных;
- участвует в синхронизации и восстановлении;
- сообщает своё состояние другим узлам кластера.
Кластер
Кластер - совокупность узлов ZDS, объединённых в единую систему хранения.
В рамках кластера:
- узлы знают друг о друге;
- данные распределяются между несколькими узлами;
- состояние компонентов синхронизируется;
- возможны автоматические процессы восстановления.
Диск
Диск - логическая единица хранения, доступная узлу ZDS для записи данных. На практике это может быть:
- отдельная файловая система;
- точка монтирования;
- RAID-массив, представленный как единый storage-ресурс для ZDS.
В документации термин диск используется для обозначения ресурса, на который ZDS записывает части файлов.
Группа хранения
Группа хранения - набор дисков, из которых ZDS выбирает места для размещения частей одного файла.
Особенности группы хранения:
- все части конкретного файла размещаются в рамках одной выбранной группы;
- группа обычно формируется из дисков разных узлов;
- статус группы зависит от статусов входящих в неё дисков.
Вольюм
Вольюм - логическая единица хранения, в рамках которой выполняются операции ZDS над файлами и метаданными.
Вольюм нужен для:
- адресации операций записи и чтения;
- организации служебной информации;
- изоляции логического пространства хранения.
Во всех операциях с данными ZDS явно или неявно используется вольюм.
Часть файла
Часть файла (part) - фрагмент исходного файла или служебная часть, созданная в процессе кодирования данных.
В режиме EC используются два основных типа частей:
- data part - часть, содержащая исходные данные;
- parity part - часть, используемая для восстановления недостающих данных.
Метаданные
Метаданные - служебная информация о файле и его размещении в кластере.
Обычно метаданные содержат:
- путь или ключ файла;
- размер файла;
- сведения о вольюме;
- информацию о группе хранения;
- перечень частей файла и их расположение.
Без метаданных невозможно корректно определить, где находятся части файла и как собрать исходные данные.
Журнал операций
Журнал операций (changelog) - последовательность служебных записей об изменениях данных и состояния хранения.
Он используется для:
- синхронизации между узлами;
- отслеживания изменений;
- восстановления локального состояния после сбоев.
Вакуум
Вакуум (vacuum) - служебный процесс очистки, который удаляет оставшиеся на дисках данные, для которых в кластере уже нет актуальных метаданных.
Вакуум нужен для того, чтобы:
- освобождать место на дисках;
- устранять остаточные данные после удаления;
- поддерживать согласованность между физическим размещением и метаданными.
Как использовать эти термины дальше
Для понимания механики хранения переходите к статье Как ZDS хранит данные.
Для обзора роли сервиса в системе используйте статью Что такое ZDS.