Hadoop FS Shell の du

HadoopBeginner

はじめに

宇宙資源収集者として宇宙取引所にいるシナリオを想像してみてください。あなたの目標は、Hadoop FS Shell の du コマンドを使用して、Hadoop HDFS に格納されているデータを効率的に管理および分析することです。du をどのように使用するかを理解することで、HDFS 内のファイルとディレクトリのディスク使用量情報を取得できるようになります。

ディスク使用量情報を取得する

このステップでは、Hadoop HDFS 内のファイルとディレクトリのディスク使用量情報を表示するための du コマンドの使い方を学びます。

ターミナルを開き、以下の手順に従って始めましょう。

  1. Hadoop ユーザーに切り替えます。

    su - hadoop
    
  2. HDFS のホームディレクトリで、サンプル ディレクトリとファイルを作成します。

    hdfs dfs -mkdir /user/hadoop/sample_dir
    
    echo "sample_file" | hdfs dfs -appendToFile - /user/hadoop/sample_dir/sample_file.txt
    
  3. sample_dir ディレクトリのディスク使用量を確認し、結果をテキスト ファイルに入力します。

    hdfs dfs -du -v /user/hadoop/sample_dir > /home/hadoop/du_result.txt
    
  4. 出力は、人が読みやすい形式で sample_dir ディレクトリのディスク使用量を表示します。

    cat /home/hadoop/du_result.txt
    

    出力:

    SIZE DISK_SPACE_CONSUMED_WITH_ALL_REPLICAS FULL_PATH_NAME
    12 12 /user/hadoop/sample_dir/sample_file.txt
    

再帰的にディスク使用量を分析する

このステップでは、Hadoop HDFS 内のディレクトリのディスク使用量を再帰的に分析するために、du の知識を拡張します。

  1. sample_dir ディレクトリ内にサブディレクトリとファイルを作成します。

    hdfs dfs -mkdir /user/hadoop/sample_dir/sub_dir
    
    echo "sub_file" | hdfs dfs -appendToFile - /user/hadoop/sample_dir/sub_dir/sub_file.txt
    
  2. sample_dir ディレクトリ(そのサブディレクトリも含む)のディスク使用量を確認します。

    hdfs dfs -du -s -v /user/hadoop/sample_dir > /home/hadoop/du_result2.txt
    
  3. 出力は、sample_dir ディレクトリ(そのサブディレクトリも含む)の合計ディスク使用量を表示します。

    cat /home/hadoop/du_result2.txt
    

    出力:

    SIZE DISK_SPACE_CONSUMED_WITH_ALL_REPLICAS FULL_PATH_NAME
    21 21 /user/hadoop/sample_dir
    

まとめ

この実験では、Hadoop FS Shell の du コマンドを利用して、Hadoop HDFS 内のファイルとディレクトリのディスク使用量情報を取得することに焦点を当てました。このコマンドをマスターすることで、Hadoop クラスタ内のストレージ消費を効率的に管理および分析できます。この実験は、Hadoop HDFS 管理のスキルを向上させようとする初心者に対して、実践的な経験と知識を提供することを目的としています。