Управление квотами в Hadoop

HadoopHadoopBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом лабе вы научитесь управлять ограниченной емкостью хранения верблюдского каравана в Аравийском пустыне, включая квоты на пространство и квоты на имена. Вам будет поручено тщательно планировать и распределять пространство для груза, чтобы обеспечить безопасность и целостность транспортировки драгоценных грузов, включая специи и роскошные шелк.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL hadoop(("Hadoop")) -.-> hadoop/HadoopHDFSGroup(["Hadoop HDFS"]) hadoop/HadoopHDFSGroup -.-> hadoop/hdfs_setup("HDFS Setup") hadoop/HadoopHDFSGroup -.-> hadoop/fs_ls("FS Shell ls") hadoop/HadoopHDFSGroup -.-> hadoop/fs_mkdir("FS Shell mkdir") hadoop/HadoopHDFSGroup -.-> hadoop/quota("Quota Management") subgraph Lab Skills hadoop/hdfs_setup -.-> lab-288991{{"Управление квотами в Hadoop"}} hadoop/fs_ls -.-> lab-288991{{"Управление квотами в Hadoop"}} hadoop/fs_mkdir -.-> lab-288991{{"Управление квотами в Hadoop"}} hadoop/quota -.-> lab-288991{{"Управление квотами в Hadoop"}} end

Изучите текущие ограничения хранения

В этом шаге вы изучите текущее использование хранилища в Hadoop Distributed File System (HDFS) и познакомитесь с существующими директориями и файлами.

  1. Переключитесь на пользователя hadoop с помощью команды su - hadoop. Затем создайте файлы и директории с помощью следующего кода:
hdfs dfs -mkdir -p /cargo_space/fine_silks
hdfs dfs -touchz /cargo_space/spices.txt
  1. Посмотрите на созданные файлы и директории с помощью следующего кода:
hdfs dfs -ls -R /cargo_space

Эта команда выведет содержимое директории /cargo_space.

  1. Запросите детальную статистическую информацию о заданной директории в HDFS и покажите ситуацию с квотами:
hdfs dfs -count -q /cargo_space

Вот объяснение вышеуказанной команды:

  • hdfs: представляет собой командную строку для Hadoop Distributed File System.
  • dfs: представляет набор команд, которые работают с распределенным файловой системой.
  • -count: этот параметр используется для подсчета количества файлов и количества директорий в заданной директории.
  • -q: этот параметр указывает, что необходимо показать информацию о квотах для директории. Информация о квотах включает в себя ограничения на объем хранилища и количество файлов, установленные файловой системой для директории.
  • /cargo_space: это путь к целевой директории операции команды.

Вы увидите следующие результаты:

none             inf            none             inf            2            1                  0 /cargo_space

Результаты по порядку объясняются следующим образом:

  • none: лимит на количество файлов квоты (то есть квота имен) не установлен.
  • inf: количество оставшихся файлов в пределах лимита бесконечно.
  • none: квота на дисковое пространство не ограничена.
  • inf: оставшееся пространство в пределах лимита не ограничено.
  • 2: количество файлов или директорий в директории /cargo_space равно 2.
  • 1: хранимые в /cargo_space данные занимают 1 единицу хранения.
  • 0 /cargo_space: директория /cargo_space имеет дополнительное использование дискового пространства в 0 байт.

Установите квоту на пространство для директории

В этом шаге вы научитесь настраивать квоту на пространство для директории в HDFS, которая ограничивает общее использование дискового пространства для этой директории и ее поддиректорий.

  1. Установите квоту в 1 ГБ (1073741824 байт) для директории /cargo_space, выполнив команду:
hdfs dfsadmin -setSpaceQuota 1073741824 /cargo_space

Эта команда устанавливает квоту на дисковое пространство в 1 ГБ для директории /cargo_space и ее поддиректорий.

  1. Запросите детальную статистическую информацию о заданной директории в HDFS и покажите ситуацию с квотами:
hdfs dfs -count -q /cargo_space

Установите квоту на имена для директории

Кроме установки квоты на дисковое пространство, HDFS также позволяет установить квоту на максимальное количество файлов и директорий внутри директории. В этом шаге вы научитесь настраивать эту квоту на имена.

  1. Установите квоту в 10 файлов/директорий для директории /cargo_space, выполнив команду:
hdfs dfsadmin -setQuota 10 /cargo_space

Эта команда устанавливает квоту на имена в 10 файлов и директорий для директории /cargo_space и ее поддиректорий.

  1. Чтобы проверить квоту, выполните следующую команду:
hdfs dfs -count -q /cargo_space

Эта команда покажет текущее количество файлов и директорий, а также лимит квоты для заданной директории.

Удалите квотные ограничения на директории

В этом шаге вы научитесь удалять квотные ограничения для директорий в HDFS, которые включают как квоты на дисковое пространство, так и квоты на имена, установленные ранее.

Удаление квот на дисковое пространство

  1. Для директории /cargo_space выполните следующую команду, чтобы удалить квоту на дисковое пространство:
hdfs dfsadmin -clrSpaceQuota /cargo_space

Эта команда удаляет ограничение квоты на дисковое пространство для директории /cargo_space и ее поддиректорий.

  1. Чтобы подтвердить, что квота удалена, запросите детальную статистику заданной директории и покажите квоту:
hdfs dfs -count -q /cargo_space

Удаление квоты на имена

  1. Для директории /cargo_space выполните следующую команду, чтобы удалить квоты на количество файлов и директорий:
hdfs dfsadmin -clrQuota /cargo_space

Эта команда удаляет ограничения квот на файлы и директории для директории /cargo_space и ее поддиректорий.

  1. Чтобы проверить, что квота удалена, выполните следующую команду:
hdfs dfs -count -q /cargo_space

В этом случае вы можете убедиться, что директория /cargo_space больше не подлежит ранее установленным квотным ограничениям.

Резюме

Поздравляем! Вы успешно завершили лабораторию по управлению квотами в Hadoop, освоив основные методы управления ресурсами хранения в Hadoop Distributed File System (HDFS). С помощью сценария Camelot вы узнали, как изучать текущее использование хранилища, настраивать квоты на пространство и квоты на имена. Это практическое занятие не только повышает ваши навыки, но и подчеркивает важность эффективного управления ресурсами в распределенных системах, таких как Hadoop.