Hadoop >

Hadoop Map/Reduce フレームワーク

概要

  • Hadoop 0.16.x より HDFS にパーミッションが導入されましたので、一般UNIXユーザにMap/Reduceジョブ実行を許可するには、適切なディレクトリ設定が必要となります(UNIXのユーザ追加と同様な手続きです)。0.15.x 以前はその限りではありません。
  • 現時点の HDFS では、プロセスのオーナーが HDFS のユーザ識別子として引き継がれます。

Map/Reduce環境のセットアップ

  • hadoop デーモンの起動ユーザ(例では、UNIXユーザ hadoop)が HDFS のスーパーユーザとなりますので、ユーザ hadoop は、(HDFS に任意に読み書きできるので)特別な設定なしにMap/Reduceジョブを実行できます。
  • スーパーユーザ以外のMap/Reduceジョブ実行を可能にするためには、以下のような設定が必要となります。
    1. Map/Reduceシステムディレクトリ(mapred.system.dir の設定値、この例では、/hadoop/mapred/system)の追加。参考までに、Cloudera 配布版では、以下の設定がインストール時に自動で行われますので、不要になります。以下、プロンプトが # のコマンドラインは、HDFS のスーパーユーザで実行することを意味します。
      # ${HADOOP_HOME}/bin/hadoop dfs -mkdir /hadoop/mapred/system
      # ${HADOOP_HOME}/bin/hadoop dfs -chmod 733 /hadoop/mapred/system
      # ${HADOOP_HOME}/bin/hadoop dfs -ls /hadoop/mapred
      Found 1 items
      /hadoop/mapred/system   <dir>           2008-04-30 22:04        rwx-wx-wx       hadoop  supergroup
    2. ユーザホームディレクトリ(デフォルトでは、/user 配下)の追加
      # ${HADOOP_HOME}/bin/hadoop dfs -mkdir /user/<user name>
      # ${HADOOP_HOME}/bin/hadoop dfs -chown <user name> /user/<user name>
    3. 他にジョブ実行に必要な input/output ディレクトリがあれば、追加し、読み書きを許可します。

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-12-31 (木) 17:10:08 (3268d)