Hadoop FS Shell cp

HadoopHadoopBeginner
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

魔法のカーニバルへようこそ。ここでは、非凡な魔法使いが「コピー」というスキルを駆使して、Hadoop の HDFS の不思議を披露します。この魅力的なシナリオでは、魔法使いは Hadoop FS Shell コマンドを使ってファイルをコピーする方法を示すことを目指しており、あなたの 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_mkdir("FS Shell mkdir") hadoop/HadoopHDFSGroup -.-> hadoop/fs_cp("FS Shell cp") subgraph Lab Skills hadoop/hdfs_setup -.-> lab-271866{{"Hadoop FS Shell cp"}} hadoop/fs_ls -.-> lab-271866{{"Hadoop FS Shell cp"}} hadoop/fs_mkdir -.-> lab-271866{{"Hadoop FS Shell cp"}} hadoop/fs_cp -.-> lab-271866{{"Hadoop FS Shell cp"}} end

Hadoop FS Shell を使ったファイルのコピー

このステップでは、FS Shell の cp コマンドを使って Hadoop でファイルをコピーする方法を学びます。

  1. ターミナルで hadoop ユーザーに切り替えます。

    su - hadoop
  2. /home/hadoop ディレクトリに source.txt という名前のテスト ファイルを作成します。次のコマンドを実行します。

    echo "This is a test file." > /home/hadoop/source.txt
  3. 次に、ローカル ファイル source.txt を HDFS 上の新しい宛先ファイル destination.txt にコピーしましょう。次のコマンドを使用します。

    hdfs dfs -copyFromLocal /home/hadoop/source.txt /destination.txt
  4. ファイルが正常にコピーされたことを確認します。/ 内のファイルを一覧表示して確認できます。

    hdfs dfs -ls /

Hadoop FS Shell を使った再帰的なファイルコピー

このステップでは、Hadoop FS Shell コマンドを使ってディレクトリを再帰的にコピーすることで、ファイルコピーのスキルを向上させます。

  1. / 内に source_dir という名前のディレクトリを作成し、/source_dir/ 内に subdir という名前のサブディレクトリを作成します。次のコマンドを実行します。

    hdfs dfs -mkdir /source_dir
    hdfs dfs -mkdir /source_dir/subdir
  2. subdir ディレクトリ内に file1.txt という名前のテスト ファイルを配置します。以下のコマンドを使用します。

    echo "Contents of file1" > /home/hadoop/file1.txt
    hdfs dfs -put /home/hadoop/file1.txt /source_dir/subdir/
  3. 全体の source_dir ディレクトリを再帰的に新しい宛先 destination_dir にコピーします。次のコマンドを試してみましょう。

    hdfs dfs -cp /source_dir/ /destination_dir

もちろん!コマンド hdfs dfs -cp /source_dir /destination_dir には次のコンポーネントがあります。

  1. hdfs dfs -cp:この部分は、ファイルまたはディレクトリのコピーに使用される Hadoop 分散ファイル システム (HDFS) の cp コマンドの使用を示しています。
  2. /source_dir/*:これはソース ディレクトリのパスを表します。* ワイルドカードは、このディレクトリ内のすべてのファイルとサブディレクトリと一致します。
  3. /destination_dir:これは、ファイルをコピーしたい対象のディレクトリのパスです。

要するに、このコマンドは /source_dir から /destination_dir にすべてのファイルとサブディレクトリをコピーし、ファイルの元の属性を維持します。

  1. destination_dir ディレクトリの内容を一覧表示することで再帰的なコピーを検証します。

    hdfs dfs -ls -R /destination_dir

まとめ

この実験では、hdfs dfs -copyFromLocal コマンドと hdfs dfs -copy コマンドに焦点を当てて、Hadoop HDFS の魔法の世界を探求しました。魅力的なシナリオを作成し、実践的な練習を提供することで、この実験は Hadoop でのファイルコピー操作の理解を深めることを目的としています。覚えておいてください、練習が磨きになり、これらのスキルを習得することで、あなたの Hadoop の旅で力を得ることができます。