問題タブ [elastic-map-reduce]

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.

0 投票する
2 に答える
639 参照

regex - R:二重エスケープされたテキストを置き換える

Amazon Elastic MapReduceコマンドラインツールを使用して、いくつかのシステムコールを結合しています。これらのコマンドは、すでに(部分的に?)エスケープされているJSONテキストを返します。次に、システムコールがそれをRテキストオブジェクト(intern = T)に変換すると、再びエスケープされたように見えます。rjsonパッケージで解析できるように、これをクリーンアップする必要があります。

私はこのようにシステムコールを行います:

これは次を返します:

ただし、コマンドラインからの同じコマンドは次を返します。

rjsonを介してシステムコールの結果を実行しようとすると、次のエラーが発生します。

これは、s3nラインでの二重エスケープによるものだと思います。私はこのテキストを解析できるものにマッサージするのに苦労しています。

「\\」を「\」に置き換えるのと同じくらい簡単かもしれませんが、正規表現とエスケープに少し苦労しているので、それを適切に行うことができません。

では、文字列のベクトルを取得して、出現する「\\」を「\」に置き換えるにはどうすればよいですか?(この質問を入力する場合でも、2つを表すために3つのバックスラッシュを使用する必要がありました)この特定のユースケースに関連する他のヒントはありますか?

これが私のコードです:

emrJsonオブジェクトを再作成したい場合は、dput()の出力を次に示します。

0 投票する
2 に答える
1945 参照

hadoop - Hadoop での分散キャッシュの寿命

Hadoop ストリーミング ジョブで分散キャッシュ メカニズムを使用してファイルがノードに転送される場合、システムはジョブの完了後にこれらのファイルを削除しますか? それらが削除された場合、複数のジョブのためにキャッシュを残す方法はありますか? これは Amazon の Elastic Mapreduce でも同じように機能しますか?

0 投票する
1 に答える
788 参照

mongodb - [MRJobを使用して]EMRのノード間で入力データはどのように分散されますか?

私は、YelpのMRJobを使用して、AmazonのElasticMapReduceを使用して計算することを検討しています。計算量の多い作業では、大量のデータを読み書きする必要があります。各ノードはデータの一部のみを取得する必要があり、これがどのように行われるかについて私は混乱しています。現在、私のデータはMongoDBにあり、永続的なEBSドライブに保存されています。

EMRを使用する場合、データはノード上でどのように因数分解されますか?データを分割するキーをMRJobにどのように伝える必要がありますか?MRJob EMRのドキュメントでは、因数分解の手順が暗黙的に残されています。ファイルまたはS3 Key-Valueストアへの接続を開くと、どのようにキーが分割されますか?入力がシーケンスであると想定し、それに基づいて自動的に分割しますか?

おそらく誰かが、 MRJobの単語数の例を使用して、入力データがノードにどのように伝播されるかを説明できます。その例では、入力はテキストファイルです-それはすべてのノードにコピーされますか、それとも1つのノードによってシリアルに読み取られ、分割して配布されますか?

0 投票する
1 に答える
235 参照

amazon - botoを介してAmazonElasticMapReduceジョブフローで完了したステップ数を取得します

ジョブを送信するたびにインスタンスを設定するオーバーヘッドを回避するために、各ジョブの完了後は常に待機モードになっているジョブフローを使用します。ただし、このページによると、「各ジョブフローで最大256ステップが許可されます」。

boto APIを介してジョブフローで完了したステップの数を取得する方法はありますか?boto.emr.emrobject.JobFlowクラスを使用する方法を見つけることができませんでした。

0 投票する
1 に答える
3735 参照

amazon-ec2 - botoElasticMapReduceスロットリングとレート制限

次のように、botoAPIを介してAmazonEMRからレート制限に数回遭遇しました。

操作は、ジョブフローの状態を要求する1回限りの操作であるため、レート制限は必要ありません。他の誰かがこの問題に遭遇しましたか?また、EC2とEMRのスロットリング/レート制限に関するドキュメントはあまりないようです...

0 投票する
2 に答える
267 参照

amazon-web-services - cronjob + API を使用した Amazon MapReduce

ユーザーが 4 つのソーシャル ネットワークからの情報を表示できるように、EC2 インスタンスに Web サイトをセットアップしました。

ユーザーが参加すると、サイトは毎晩情報を更新し、翌日に最新の関連情報を表示する必要があります.

最初に、各ユーザーを通過し、必要な API 呼び出しを実行してから、データを DB (Amazon rds インスタンス) に保存する cron ジョブがありました。

この操作は 1 人あたり 2 ~ 30 秒かかります。つまり、1 つずつ行うと、更新に数日かかることになります。

私はMapReduceを見ていましたが、それが私がやろうとしていることにとって適切なオプションであるかどうかを知りたいのですが、現時点では確信が持てません.

更新したいすべてのレコードと、MapReduce に各レコードの処理方法を指示し、それらすべてを同時に処理させるスクリプトを含む .sql ファイルを MapReduce に渡すことはできますか?

そうでない場合、それを行うための最良の方法は何でしょうか?

事前にご協力いただきありがとうございます。

0 投票する
1 に答える
864 参照

hadoop - Hadoopは、特定のreduce呼び出しの値に対する反復中にキーオブジェクトを変更しているようです

Hadoopバージョン:0.20.2(Amazon EMRの場合)

問題:以下に追加したマップフェーズ中に書き込むカスタムキーがあります。reduce呼び出し中に、特定のキーの値に対していくつかの単純な集計を行います。私が直面している問題は、reduce呼び出しでの値の反復中に、キーが変更され、その新しいキーの値を取得したことです。

私のキータイプ:

このキーの実装に何か問題がありますか?以下は、reducecallでキーの取り違えに直面しているコードです。

これでどんな助けでも大いに感謝されるでしょう。

0 投票する
1 に答える
2462 参照

python - AmazonEMR上でHiveを実行するためのPythonクライアントのサポート

mrjobもbotoも、Amazon Elastic MapReduce(EMR)でHiveジョブを送信して実行するためのPythonインターフェースをサポートしていないことに気づきました。EMRでのHiveの実行をサポートする他のPythonクライアントライブラリはありますか?

0 投票する
2 に答える
1690 参照

lucene - HadoopでLucene/Solrを実行するための最良の方法は何ですか?

1TBEBSボリュームのAmazonWebServices EC2インスタンスでSolrを実行してインデックスを保存し、同じ(読み取り専用)インデックスで追加のサーバーを簡単に起動できるようにします。ただし、インデックスはまもなく1TBを超えるため、インデックスを保持するために複数のEBSボリュームをストライピングすることはあまり望んでいません。また、インデックスの再生成は非常に遅いです。必要に応じて個別のHadoopサーバーをセットアップできますが、インデックス生成(および場合によってはホスティング)をHadoopに移動し、できればAmazonのElasticMapReduceに移動したいと思います。RightScaleを使用しているため、ServerTemplatesのライブラリを利用できます。

HadoopでLucene/Solrの使用を開始するのに最適な場所はどこですか?

0 投票する
3 に答える
1055 参照

hadoop - POST Hadoop PigはJSONデータとしてURLに出力しますか?

ログファイルを分析し、サマリー出力をS3に書き込むPigジョブがあります。出力をS3に書き込む代わりに、JSONペイロードに変換してURLにPOSTしたいと思います。

いくつかのメモ:

  • このジョブはAmazonElasticMapReduceで実行されています。
  • STREAMを使用して、外部コマンドを介してデータをパイプし、そこからロードすることができます。ただし、Pigが外部コマンドにEOFを送信することはないため、これは、各行が到着したときにPOSTする必要があり、それらをバッチ処理できないことを意味します。明らかに、これはパフォーマンスを低下させます。

この問題に対処するための最良の方法は何ですか?PiggyBankまたは他のライブラリに使用できるものはありますか?または、新しいストレージアダプタを作成する必要がありますか?アドバイスありがとうございます!