-
ジョブはお客様がその様を監視する方法 ' http://xxxxxxx:50030/?' Mapreduce ジョブの 2 つの方法を監視することができます。
-
URL を使用して、Hadoop jobtracker - ' http:// < jobTrackerhost >: 50030/' タスクの詳細にドリル ダウンするとします。
-
その他の方法は、mapreduce ジョブを実行することで、革命 R によって作成されたジョブの出力ファイルを表示することです。既定でこれらの出力ファイル再、ジョブの実行後に削除、オプションを設定することができますが、'autoCleanup = FALSE' RxHadoopMR() を使用して、Hadoop の計算コンテキストを作成するとします。RevoScaleR コマンドを使用することも 'rxGetJobOutput' 、hadoop の出力ジョブの実行の一覧を表示します。
2. マッパーの数を制御し、RxHadoopMR() を使用してコードを実行しているタスクを減らすできますか。
最近、省略可能なパラメーターは、 hadoopSwitchesと呼ばれる RxHadoopMR() を追加しました。この引数を使用すると、一般的な Hadoop コマンド ライン スイッチを指定できます。たとえば、ジョブを実行するためのキューを指定するに可能性がありますこれを行います。
hadoopSwitches ="-Dmapred.job.queue.name=default"
コマンド ・ ラインでいずれかの操作と同様、文字のスペースで区切って複数のスイッチを設定できます。
MapReduce の mapper の数を制御することは、少し注意が必要です。基本的なルールは、マップのタスクの数が入力の分割の数に等しいことです。入力ファイルが圧縮されたファイルの「非分割可能」など特定の種類の場合は、[入力の分割数の入力ファイルの数に等しい。複合および XDF セット内の個々 のファイルは、分割可能ではないです。その一方で、ファイルが分割可能な場合は、たとえば、CSV ファイルは、FileInputFormat を使用して、そのファイルをほぼ HDFS ブロック サイズ、通常は 128 MB のチャンクに分割がします。いる場合、非常に大きい CSV ファイルまたはファイル (例: 10 TB) しないようにも多くのタスクを割り当てる、大きい入力の分割およびマッピング タスクの数を減らしてを取得するため、大量に mapred.min.split.size を設定できます。これは、hadoopSwitches 引数を使用して設定できます。この方法の欠点は、データの局所性を犠牲することです。大幅に、データの局所性を分割、HDFS のブロック サイズを大きく必要があります。このページでは少しの詳細情報: http://wiki.apache.org/hadoop/HowManyMapsAndReduces
HPC ジョブ (つまり rxExec())、rxExec () の timesToRun と taskChunkSize の引数を使用してマップのタスクの数を直接設定できます。マップのタスクの数と等しくなります。
timesToRun と taskChunkSize。
3. カスタム マッパーの呼び出しまたは作成することは、/レジューサが RevoScaleR に機能しますか?
これを行う方法はいくつか。
-
'RxExec()' を使用して: を配布することができ、並列に R の任意のコードを実行するこれは 'RxHadoopMR()' を使用して、Hadoop 計算コンテキストを既に作成しています。
-
'レジューサ' 関数の呼び出しに rxDataStep() 関数を使用するには既に定義されているコンテキストを計算する RxHadoopMR() があれば、
HDFS でのデータの rxDataStep() では、'transformFunc' の引数を使用して任意の R の関数を呼び出してもできます。
-
RHadoop の一部である 'rmr' パッケージを使用します。
4 'ハイブと HBase' にアクセスするためにはを持っている任意の特定のパッケージか、[ok] 'RHBase' パッケージを使用するでしょうか。
ハイブ/HBase の任意の特定の機能を含まれていない RevoScaleR - RevoScaleR に存在するその他の R 関数を補足するために RHBase パッケージを使用することができます。 HBase のインストールされている ODBC ドライバーがある場合は、データをインポートし、HBase に格納されたデータに対して SQL クエリを実行する RxOdbcData() 関数を使用できます。ODBC 経由でデータをインポートする方法の詳細については RevoScaleR の ODBC データのインポート/エクスポート ガイドを見てをみましょう。
http://packages.revolutionanalytics.com/doc/7.1.0/linux/RevoScaleR_ODBC.pdf