1:Hadoopの環境では、Windowsの下で実行するように設定します
最初のステップ:中国のパスにhadoop2.7.5フォルダ無下にスペースなし
ステップ2:環境変数上のウィンドウでのHadoopの設定:HADOOP_HOME、および%のHADOOP_HOMEの%のの\ binがパスに追加しました
第三段階:システムトレイにbinディレクトリの下にhadoop2.7.5フォルダhadoop.dllファイル:C:\ WINDOWS \ System32ディレクトリ
ステップ4:Windowsの再起動を閉じました
2:FileSystemの方法を取得
@テスト
公共のボイドgetFileSystem2は(){例外がスローされます
ファイルシステムのファイルシステム= FileSystem.get(新しいURI( "
HDFS:// node01:8020
")、
新しいConfiguration()); //新しいConfiguration()オブジェクトの自動的にXML設定ファイルhaoopを読み込みます
System.out.println( "ファイルシステム:" +ファイルシステム)。
}
3:HDFS API操作
/ *
フォルダとファイルの作成
* /
@テスト
ます。public void mkdirs(){例外がスローされます
ファイルシステムのファイルシステム= FileSystem.get(新しいURI(」
HDFS:// node01:8020" )、新しい
コンフィギュレーション());
//ブールmkdirs =のfileSystem.mkdirs(新しいパス( "/ハロー/ MYDIR /テスト")); //は再帰的にフォルダを作成します
/ *
1:親ディレクトリが存在しない場合は、自動的に作成されます
2:あなたは、ファイルを作成すると、ファイルがユーザーに属しているがあなたの窓の下で、ユーザーであります
* /
ブールmkdirs = fileSystem.create(新しいパス( "/ハロー/ MYDIR /テスト"));
fileSystem.close();
}
4:HDFSファイル取得の流れ
// --- ---入力ストリームHDFSファイルを取得します> HDFSファイルを読む>ダウンロード
FSDataInputStreamのinputStream = fileSystem.open(新しいパス( "/ A.TXT"));
// HDFSファイル出力ストリームを取得--->書き込みデータファイルのHDFSへ
FSDataOutputStreamのOutputStream = fileSystem.create(新しいパス( "/ A.TXT"));
//ファイルのアップロード:
fileSystem.copyFromLocalFile(新しいパス( "
D://set.xml
")、新しいパス("/"));
//ファイルのダウンロード:
fileSystem.copyToLocalFile(新しいパス( "/ A.TXT")、新しいパス( "
D://a4.txt"));
5:HDFSのパーミッションの問題
1:あなたはHDFS権を有効にする場合は、次のように変更され、HDFS-site.xmlファイルを変更する必要があります。
<プロパティ>
<名前> dfs.permissions </名前>
<値>真</ value>の
</プロパティ>
2:偽のユーザー://フィルターフィルターにアクセスするユーザーのID
//最後のパラメータのルート、ルートとして訪問することです
ファイルシステムのファイルシステム= FileSystem.get(新しいURI( "
HDFS:// node01:8020
")、新しいConfiguration()、"ルート");
6:HDFS高可用性(HA)
1:HDFS名前ノードの可用性状態はアクティブであり、スタンバイ状態であり、2であります
2:二つ名前ノードを解決するためのシングルポイント障害を飼育係ジャーナルノードはメタデータ2名前ノードの同期を保証するために使用
7:MapReduceのアイデア
MpReduceは糸上で実行されます
フェージング:
地図相:小さなタスクへの大規模なタスクの責任は、小さなタスク間の依存関係を持つことはできません
フェーズを削減:集計の結果を地図に責任相を
8:MapReduceのステップ
地図フェーズ2つの段階
キー値(K1及びV1)に切断1セットのInputFormatクラスデータは、第2のステップに入力されます。
2.カスタム・ロジックマップ(コードを書くために)、別のキー値(K2およびV2)へのステップの結果を変換対、出力
ステージ4つのステップはシャッフル
3.パーティション(パーティション)
4.並べ替え(ソート)
法令(コンバイナがあります)
6.パケット(グループ別)ETL
フェーズ2の手順を削減
7.新しいキー値に新しいK2とV2になります(コードを書くために)カスタムロジックを削減(K3とV3)の出力
8.設定プロセスをOUTPUTFORMAT削減し、出力データK3とV3を保存