問題タブ [mrjob]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - EMR 長時間出力なし
MRJob ライブラリを使用して Python で記述された MapReduce ジョブがあります。このジョブは、ローカル マシンで完了するまでに約 30 分かかります。EMR で同じジョブを実行している間、出力が長時間 (~=1 時間) 表示されません。私は仕事を閉めなければなりませんでした。また、私のローカル マシンでは非常に短時間しかかからないジョブも、EMR では非常にうまく実行されます。タイムアウトを増やしてみましたが、タイムアウト後にタスクトラッカーがレデューサーを強制終了します。次のエラー メッセージが表示されます
EMR は私の仕事のために 4 つのマッパーと 1 つのレデューサーを作成します。また、私が書いたレデューサー コードでは、約 11 ~ 12 MB のデータ セット全体を何度もループする必要があります。ローカル マシンとほぼ同じ時間でジョブが終了することを期待していますが、そうではありません。解決策は??`
python - MrJob を使用した EMR でのランダムな java.io.FileNotFoundException jobcache エラー
MrJob を使用していて、ランダムにクラッシュし続ける Elastic Map Reduce で Hadoop ジョブを実行しようとしています。
データは次のようになります (タブ区切り)。
基礎となる MapReduce は非常に単純です。
実行するときは、デフォルトの mrjob.conf を使用して次のコマンドを使用します (私のキーは環境に設定されています)。
小さなデータセットで実行すると、正常に終了します。データ コーパス全体 (約 10GiB 相当) で実行すると、次のようなエラーが発生します (ただし、毎回同じポイントではありません!)。
これを 2 回実行しました。最初は 45 分後に死亡し、今回は 4 時間後に死亡しました。どちらの場合も、異なるファイルで停止しています。停止した両方のファイルを確認しましたが、どちらにも問題はありません。
どういうわけか、書き込んだスピルファイルを見つけることができず、混乱しています。
編集:
ジョブを再度実行したところ、数時間後に再び停止しましたが、今回は別のエラー メッセージが表示されました。
python - MRJob :- map reduce で中間値を表示
Python MRJob ライブラリを使用して mapreduce プログラムを実行しているときに、端末に中間値を表示する (つまり、変数またはリストを出力する) にはどうすればよいですか?
python - MapReduce: 結果を永続的に保存する Mrjob
3 つのステップで mapreduce ジョブを実装しようとしています。各ステップの後に、これまでのすべてのステップからのデータが必要です。マッパーまたはリデューサーの結果を mrjob でディスクに保存する方法について、例/アイデアを持っている人はいますか?
python - AWS accesskey と secretaccesskey の mrjob で環境変数を変更する方法
$AWS_ACCESS_KEY_ID
mrjob のandを変更して$AWS_SECRET_ACCESS_KEY
、AWS の独自の資格情報を入力するにはどうすればよいですか? Mac OS X でターミナルを使用しています。
ありがとう!
python - MapReduce を使用して Python で 2 つの変数間の相関を計算する方法
AWS で利用可能な Million Song Dataset を使用して、トラックのラウドネスと人気の相関関係を見つけようとしています。基本的なチュートリアル ( http://musicmachinery.com/2011/09/04/how-to-process-a-million-songs-in-20-minutes/ ) に従って各トラックのデータを取得し、ビルドしましたMRJob と Python を使用した私のプロジェクト。マッパーとリデューサーを使用しているときに、トラック間の相関関係を見つける方法がわかりません。これまでの私のコードは次のとおりです。
このコードは、次のようになっているため、実際には機能していません。
MSD データセットの変数loudness
と変数の間の相関関係を計算するために、残りのコードを書くのに助けが必要です。hotness
ありがとう!
python - MRjob: レデューサーは 2 つの操作を実行できますか?
マッパーから生成された各キーと値のペアの確率を計算しようとしています。
したがって、マッパーが生成するとしましょう:
5+6+7 = 18 を加算してから、確率 5/18、6/18、7/18 を見つける必要があります
レデューサーからの最終的な出力は次のようになります。
これまでのところ、リデューサーに値からすべての整数を合計させることしかできません。戻って各インスタンスを合計で割るにはどうすればよいですか?
ありがとう!
python - マルチステップのmap-reduceプログラムで最後の「print」ステートメントを1回実行する方法は?
私は基本的に、Hadoop でスケールアップしてレコメンダー システムを実装しようとしています。
最初のステップでは、入力ファイル内のアイテムのすべてのペア間の類似性を計算しようとしています。
{アイテムA、アイテムB、類似性}
出力ファイルのサイズが非常に大きくなります (60kb の入力の場合、出力ファイルのサイズは 6mb になります)。
したがって、結果を python dict に保存し、map reduce プログラム全体の終了後に dict を 1 回だけ出力する方がよいのではないかと考えました。
私のpythonコードは次のとおりです。
だから私は実行後に欲しいもの
python thisfile.py < input.csv -r hadoop > output.txt
繰り返しがなく、辞書が 1 つある比較的小さな出力ファイルです。
要するに、
現在、このプログラムは終了をn 回印刷しますが、一度だけ印刷したいのです。
これらすべてとは別に、より良い方法で Hadoop をスケールアップすることにより、協調フィルタリングを実装するより良い方法があります。
事前に感謝します。
python - Hadoop 管理 Web インターフェイスで mrjob からジョブのタイトルを指定する方法はありますか?
複数のステップを持つジョブを含む、Python ライブラリmrjobから開始されたいくつかの異なるジョブがあります。streamjob
カスタム名に置き換えるにはどうすればよいですか? たとえばwordcount_step_1
、wordcount_step_2
、 などです。
python - MRJOB オープン JSON ファイル - Python
マッパー関数の一部として json ファイルを読み込もうとしていますが、ファイルは存在しますが、「ディレクトリにそのようなファイルはありません」というメッセージが返されます。
私はすでにファイルを開いて、その行を解析しています。しかし、その値の一部を 2 番目の JSON ファイルと比較したいと考えています。