Как восстановить удаленные файлы из Корзины в Hadoop HDFS

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

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

Введение

В этом руководстве вы узнаете, как восстановить удаленные файлы из директории Корзины в Распределенной файловой системе Hadoop (HDFS). Независимо от того, случайно ли вы удалили важный файл или вам нужно восстановить данные, в этой статье будут описаны необходимые шаги для восстановления потерянной информации и сохранения целостности кластера Hadoop.


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_rm("FS Shell rm") hadoop/HadoopHDFSGroup -.-> hadoop/fs_expunge("FS Shell expunge") hadoop/HadoopHDFSGroup -.-> hadoop/data_replication("Data Replication") hadoop/HadoopHDFSGroup -.-> hadoop/data_block("Data Block Management") hadoop/HadoopHDFSGroup -.-> hadoop/node("DataNode and NameNode Management") hadoop/HadoopHDFSGroup -.-> hadoop/snapshot("Snapshot Management") subgraph Lab Skills hadoop/hdfs_setup -.-> lab-417686{{"Как восстановить удаленные файлы из Корзины в Hadoop HDFS"}} hadoop/fs_ls -.-> lab-417686{{"Как восстановить удаленные файлы из Корзины в Hadoop HDFS"}} hadoop/fs_rm -.-> lab-417686{{"Как восстановить удаленные файлы из Корзины в Hadoop HDFS"}} hadoop/fs_expunge -.-> lab-417686{{"Как восстановить удаленные файлы из Корзины в Hadoop HDFS"}} hadoop/data_replication -.-> lab-417686{{"Как восстановить удаленные файлы из Корзины в Hadoop HDFS"}} hadoop/data_block -.-> lab-417686{{"Как восстановить удаленные файлы из Корзины в Hadoop HDFS"}} hadoop/node -.-> lab-417686{{"Как восстановить удаленные файлы из Корзины в Hadoop HDFS"}} hadoop/snapshot -.-> lab-417686{{"Как восстановить удаленные файлы из Корзины в Hadoop HDFS"}} end

Введение в Hadoop HDFS

Распределенная файловая система Hadoop (HDFS) является основой хранения данных для обработки больших данных в рамках фреймворка Hadoop. HDFS разработана для обеспечения надежного, масштабируемого и отказоустойчивого хранения больших наборов данных.

Что такое HDFS?

HDFS - это распределенная файловая система, работающая на стандартном оборудовании. Она разработана для обеспечения высокопроизводительного доступа к данным приложений и подходит для приложений, работающих с большими наборами данных. HDFS использует архитектуру "мастер - слейв", где один NameNode управляет пространством имен файловой системы и регулирует доступ клиентов к файлам, а несколько DataNode хранят и извлекают данные.

Основные характеристики HDFS

  1. Масштабируемость: HDFS может масштабироваться до сотен петабайт хранилища и тысяч клиентских узлов.
  2. Отказоустойчивость: HDFS обеспечивает автоматическое репликацию и восстановление данных, гарантируя, что данные не будут потеряны даже при неисправностях оборудования.
  3. Высокая пропускная способность: HDFS оптимизирована для высокопроизводительного доступа к данным приложений и хорошо подходит для больших наборов данных.
  4. Совместимость: HDFS совместима с широким спектром приложений и инструментов, что делает ее универсальным решением для хранения данных при обработке больших данных.

Архитектура HDFS

Архитектура HDFS состоит из NameNode и нескольких DataNode. NameNode отвечает за управление пространством имен файловой системы, а DataNode хранят и извлекают блоки данных.

graph TD NameNode --> DataNode1 NameNode --> DataNode2 NameNode --> DataNode3 DataNode1 --> Data Blocks DataNode2 --> Data Blocks DataNode3 --> Data Blocks

Команды HDFS

HDFS предоставляет набор инструментов командной строки для взаимодействия с файловой системой. Некоторые распространенные команды HDFS включают:

Команда Описание
hdfs dfs -ls Вывести содержимое директории
hdfs dfs -put Скопировать файлы из локальной файловой системы в HDFS
hdfs dfs -get Скопировать файлы из HDFS в локальную файловую систему
hdfs dfs -rm Удалить файлы или директории из HDFS

Управление корзиной в HDFS

HDFS предоставляет функцию Корзины, которая помогает пользователям восстановить случайно удаленные файлы. Когда файл удаляется в HDFS, он сначала перемещается в директорию Корзины, а не удаляется навсегда.

Включение функции Корзины

Функция Корзины в HDFS отключена по умолчанию. Чтобы включить ее, вам нужно изменить конфигурационный файл core-site.xml и установить следующие свойства:

<property>
  <name>fs.trash.interval</name>
  <value>1440</value>
</property>
<property>
  <name>fs.trash.checkpoint.interval</name>
  <value>0</value>
</property>

Свойство fs.trash.interval определяет количество минут, по истечении которых содержимое директории Корзины будет окончательно удалено. Свойство fs.trash.checkpoint.interval устанавливает частоту создания контрольных точек для директории Корзины.

Удаление файлов и использование Корзины

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

hdfs dfs -rm /path/to/file

Теперь удаленный файл будет доступен в директории Корзины, которая расположена по адресу /user/<username>/.Trash/.

Очистка Корзины

Для окончательного удаления содержимого директории Корзины вы можете использовать следующую команду:

hdfs dfs -expunge

Эта команда удалит все файлы из директории Корзины, и их уже нельзя будет восстановить.

Восстановление удаленных файлов из Корзины

Если вам нужно восстановить случайно удаленный файл, вы можете использовать следующую команду для копирования файла обратно из директории Корзины:

hdfs dfs -mv /.Trash/Current/path/to/file /path/to/restore

Эта команда переместит файл из директории Корзины обратно в его исходное место.

Восстановление удаленных файлов из Корзины

Когда файл удаляется в HDFS, он сначала перемещается в директорию Корзины, где хранится в течение определенного времени перед окончательным удалением. Это позволяет пользователям восстановить случайно удаленные файлы.

Поиск удаленных файлов в Корзине

Для поиска удаленного файла в директории Корзины вы можете использовать следующую команду:

hdfs dfs -ls /.Trash/Current/

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

Восстановление удаленных файлов

Для восстановления удаленного файла из директории Корзины вы можете использовать следующую команду:

hdfs dfs -mv /.Trash/Current/path/to/file /path/to/restore

Эта команда переместит файл из директории Корзины обратно в его исходное место.

Окончательное удаление и очистка

Если вы хотите окончательно удалить содержимое директории Корзины, вы можете использовать следующую команду:

hdfs dfs -expunge

Эта команда удалит все файлы из директории Корзины, и их уже нельзя будет восстановить.

Настройка времени хранения в Корзине

Функцию Корзины в HDFS можно настроить для управления периодом хранения удаленных файлов. Вы можете изменить конфигурационный файл core-site.xml и установить следующие свойства:

<property>
  <name>fs.trash.interval</name>
  <value>1440</value>
</property>
<property>
  <name>fs.trash.checkpoint.interval</name>
  <value>0</value>
</property>

Свойство fs.trash.interval определяет количество минут, по истечении которых содержимое директории Корзины будет окончательно удалено. Свойство fs.trash.checkpoint.interval устанавливает частоту создания контрольных точек для директории Корзины.

Понимая и используя функцию Корзины в HDFS, вы можете эффективно восстанавливать случайно удаленные файлы и поддерживать целостность данных в своем кластере Hadoop.

Заключение

Следуя инструкциям в этом руководстве по Hadoop, вы научитесь эффективно управлять директорией Корзины, понять процесс восстановления удаленных файлов и обеспечить безопасность и надежность данных в Hadoop HDFS. Эти знания позволят вам поддерживать надежный и хорошо организованный экосистему Hadoop, давая вам уверенность в обработке сценариев восстановления данных и защите ваших ценных сведений.