はじめに
魔法のカーニバルへようこそ。ここでは、非凡な魔法使いが「コピー」というスキルを駆使して、Hadoop の HDFS の不思議を披露します。この魅力的なシナリオでは、魔法使いは Hadoop FS Shell コマンドを使ってファイルをコピーする方法を示すことを目指しており、あなたの Hadoop スキルの旅に魔法の雰囲気を醸し出します。
Hadoop FS Shell を使ったファイルのコピー
このステップでは、FS Shell の cp コマンドを使って Hadoop でファイルをコピーする方法を学びます。
ターミナルで
hadoopユーザーに切り替えます。su - hadoop/home/hadoopディレクトリにsource.txtという名前のテスト ファイルを作成します。次のコマンドを実行します。echo "This is a test file." > /home/hadoop/source.txt次に、ローカル ファイル
source.txtを HDFS 上の新しい宛先ファイルdestination.txtにコピーしましょう。次のコマンドを使用します。hdfs dfs -copyFromLocal /home/hadoop/source.txt /destination.txtファイルが正常にコピーされたことを確認します。
/内のファイルを一覧表示して確認できます。hdfs dfs -ls /
Hadoop FS Shell を使った再帰的なファイルコピー
このステップでは、Hadoop FS Shell コマンドを使ってディレクトリを再帰的にコピーすることで、ファイルコピーのスキルを向上させます。
/内にsource_dirという名前のディレクトリを作成し、/source_dir/内にsubdirという名前のサブディレクトリを作成します。次のコマンドを実行します。hdfs dfs -mkdir /source_dir hdfs dfs -mkdir /source_dir/subdirsubdirディレクトリ内にfile1.txtという名前のテスト ファイルを配置します。以下のコマンドを使用します。echo "Contents of file1" > /home/hadoop/file1.txt hdfs dfs -put /home/hadoop/file1.txt /source_dir/subdir/全体の
source_dirディレクトリを再帰的に新しい宛先destination_dirにコピーします。次のコマンドを試してみましょう。hdfs dfs -cp /source_dir/ /destination_dir
もちろん!コマンド hdfs dfs -cp /source_dir /destination_dir には次のコンポーネントがあります。
- **
hdfs dfs -cp**:この部分は、ファイルまたはディレクトリのコピーに使用される Hadoop 分散ファイル システム (HDFS) のcpコマンドの使用を示しています。 - **
/source_dir/***:これはソース ディレクトリのパスを表します。*ワイルドカードは、このディレクトリ内のすべてのファイルとサブディレクトリと一致します。 - **
/destination_dir**:これは、ファイルをコピーしたい対象のディレクトリのパスです。
要するに、このコマンドは /source_dir から /destination_dir にすべてのファイルとサブディレクトリをコピーし、ファイルの元の属性を維持します。
destination_dirディレクトリの内容を一覧表示することで再帰的なコピーを検証します。hdfs dfs -ls -R /destination_dir
まとめ
この実験では、hdfs dfs -copyFromLocal コマンドと hdfs dfs -copy コマンドに焦点を当てて、Hadoop HDFS の魔法の世界を探求しました。魅力的なシナリオを作成し、実践的な練習を提供することで、この実験は Hadoop でのファイルコピー操作の理解を深めることを目的としています。覚えておいてください、練習が磨きになり、これらのスキルを習得することで、あなたの Hadoop の旅で力を得ることができます。



