\( \def\vector#1{\boldsymbol{#1}} \)

HDFS

Takami Torao #HDFS
  • このエントリーをはてなブックマークに追加

導入

HDFS (Hadoop distributed file system) は Hadoop で使用されている分散ファイルシステム。データを複数の計算機上に分散配置し、MapReduce を用いて各計算機上で並列分散処理を行うことができる。

HDFS では一定の長さのブロック (デフォルトでは 64MB) を管理単位としている。ブロックは Name Node によって適切な負荷分散と耐障害性がなされるように各 Data Node に配置される。

Fig 1. HDFS

クライアントからの入出力要求を受けた Name Node はマッピングからそのデータのブロックに対応する Data Node を決定する。負荷集中を避けるために Data Node に対する代理のデータ入出力を行うのではなく、いったん入出力要求をクライアントへ戻し、クライアントは Name Node の応答に含まれる Data Node リストのいずれかに接続して入出力を行う。