Архивные хранилища¶
В данной главе описывается использование политик хранения файлов и каталогов, предназначенных для архивного хранения.
Введение¶
Архивные хранилища позволяют хранить данные на физических носителях с высокой плотностью хранения и низкими ресурсами обработки.
Для реализации архивного хранилища необходимо выполнить следующие действия:
- Выключить DataNode;
- Назначить тип хранилища ARCHIVE DataNodes, предназначенный для архивного хранения;
- Установить политики хранения “HOT”, “WARM” или “COLD” в файлах и каталогах HDFS;
- Перезапустить DataNode.
Для обновления параметра политики хранения в файле или каталоге, необходимо использовать инструмент переноса данных HDFS для перемещения блоков, как указано в новой политике хранения.
Типы хранилищ HDFS¶
Типы хранилищ HDFS могут использоваться для данных, предназначенных различным типам физических носителей.
Доступны следующие типы хранилищ:
- DISK – дисковое хранилище (тип хранилища по умолчанию);
- АРХИВ – архивные хранилища (высокая плотность хранения, низкие ресурсы обработки);
- SSD – твердотельный накопитель;
- RAM_DISK – память DataNode.
Если тип хранения не назначен, по умолчанию используется тип DISK.
Политики хранения: “Hot”, “Warm”, и “Cold”¶
Данные можно хранить на дисках типа DISK или ARCHIVE, используя следующие предварительно настроенные политики хранения:
- HOT – используется как для хранения, так и для вычисления. Данные, которые используются для обработки, остаются в этой политике. Все копии хранятся на DISK. Для создания резервной копии памяти нет, и для их хранения используется ARCHIVE;
- WARM – частично “HOT” и частично “COLD”. При “WARM” первая копия хранится на DISK, а остальные хранятся в ARCHIVE. Резервным хранилищем для создания и копирования является DISK или ARCHIVE, в случае если DISK недоступен;
- COLD – используется только для хранения, с ограниченным расчетом. Данные, которые больше не используются или которые необходимо заархивировать, переносятся из хранилища “HOT” в “COLD”. При “COLD” все копии хранятся в ARCHIVE, и нет резервного хранилища для создания или копирования.
В таблице приведена политика копирования.
ID политики |
Название политики хранения |
Место размещения копии (для n копий) |
Резервное хранилище для разработки |
Резервное хранилище для копий |
---|---|---|---|---|
12 | HOT | DISK: n | <нет> | ARCHIVE |
8 | WARM | DISK: 1, ARCHIVE: n-1 | DISK, ARCHIVE | DISK, ARCHIVE |
4 | COLD | ARCHIVE: n | <нет> | <нет> |
Important
В настоящее время политики хранения нельзя редактировать
Настройка архивного хранилища¶
Для настройки архивного хранилища необходимо выполнить следующие действия:
1. Выключить DataNode
Закрыть DataNode с помощью соответствующих команд.
2. Назначить тип хранения ARCHIVE в DataNode
Для назначения типа хранения ARCHIVE для DataNode можно использовать свойство dfs.name.dir в файле /etc/hadoop/conf/hdfs-site.xml.
Свойство dfs.name.dir определяет, где в локальной файловой системе DataNode хранит свои блоки.
Чтобы назначить DataNode как хранилище DISK, необходимо использовать путь к локальной файловой системе, как обычно. Поскольку DISK является типом памяти по умолчанию, больше ничего не требуется. Например:
<property>
<name>dfs.data.dir</name>
<value>file:///grid/1/tmp/data_trunk</value>
</property>
Чтобы назначить DataNode как хранилище ARCHIVE, необходимо добавить [ARCHIVE] в начало пути локальной файловой системы. Например:
<property>
<name>dfs.data.dir</name>
<value>[ARCHIVE]file:///grid/1/tmp/data_trunk</value>
</property>
3. Установка и получение политики хранения
Необходимо установить политику хранения файла или каталога. Команда:
hdfs dfsadmin -setStoragePolicy <path> <policyName>
Аргументы:
- <path> – путь к каталогу или файлу;
- <policyName> – название политики хранения.
Пример:
hdfs dfsadmin -setStoragePolicy /cold1 COLD
Получение политики хранения файла или каталога осуществляется по команде:
hdfs dfsadmin -getStoragePolicy <path>
Аргументы:
- <path> – путь к каталогу или файлу.
Пример:
hdfs dfsadmin -getStoragePolicy /cold1
4. Запуск DataNode
Запустить DataNode с помощью соответствующих команд.
5. Использовать “mover” для применения политик хранения
При обновлении параметра политики хранения в файле или каталоге, новая политика не применяется автоматически. Необходимо использовать инструмент переноса данных HDFS mover для фактического перемещения блоков (как указано в новой политике хранения).
Средство миграции данных mover сканирует выбранные файлы в HDFS и проверяет, соответствует ли размещение блоков политике хранения. Копии блоков, нарушающих политику хранения, он перемещает в соответствующий тип хранилища для выполнения требований политики.
Команда:
hdfs mover [-p <files/dirs> | -f <local file name>]
Аргументы:
- -p <files/dirs> – список файлов / каталогов HDFS для переноса, разделенные пробелами;
- -f <local file> – локальный файл, содержащий список файлов / каталогов HDFS для миграции.
Important
Если оба параметра -p и -f опущены, путь по умолчанию является корневым каталогом
Пример:
hdfs mover /cold1/testfile