問題タブ [amazon-emr]
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.
workflow - EMR+DynamoDBワークフローのセットアップはHive.createTableNoSuchMethodErrorJsonErrorResponseHandlerをスローします
boto Python APIを使用して(DynamoDBとHiveを使用して)EMRワークフローを設定しようとしています。AmazonEMRコンソールを使用してスクリプトを手動で実行できました。ただし、botoを使用すると、テーブルの作成に失敗します。
EMRワークフローを設定するbotoスクリプトは次のとおりです。
ただし、スクリプトは以下の例外で失敗します。
hadoop - HiveにはDUALと同等のものがありますか?
次のようなステートメントを実行したい
SELECT date_add('2008-12-31', 1) FROM DUAL
Hive(Amazon EMRで実行)には似たようなものがありますか?
amazon-s3 - Amazon S3 でフォルダが削除されない
MapReduce ジョブの結果として作成されたフォルダーを削除しようとしています。バケット内の他のファイルは問題なく削除されますが、このフォルダーは削除されません。コンソールから削除しようとすると、ステータスの横にある進行状況バーが 0 のままになります。その間にログアウト/ログインを含め、複数の試行を行いました。
hadoop - ログ分析のためのAmazonMapReduceのベストプラクティス
Apache、Nginx、Darwin(ビデオストリーミングサーバー)によって生成されたアクセスログを解析し、配信された各ファイルの統計を日付/リファラー/ユーザーエージェントごとに集計しています。
1時間ごとに大量のログが生成され、その数は近い将来劇的に増加する可能性があります。そのため、AmazonElasticMapReduceを介してその種のデータを分散して処理することは合理的と思われます。
これで、マッパーとレデューサーを使用してデータを処理し、次のフローでプロセス全体をテストする準備が整いました。
- アマゾンS3にアップロードされたマッパー、レデューサー、データ
- 適切なジョブを構成し、正常に処理しました
- 集計結果をAmazonS3からサーバーにダウンロードし、CLIスクリプトを実行してMySQLデータベースに挿入しました
私は、Amazon ERMについてインターネット上でグーグルできる何千ものチュートリアルに従って、手動でそれを行いました。
次に何をすればいいですか?このプロセスを自動化するための最良のアプローチは何ですか?
- APIを介してAmazonEMRjobTrackerを制御する必要がありますか?
- ログが2回処理されないようにするにはどうすればよいですか?
- 処理されたファイルをアーカイブに移動するための最良の方法は何ですか?
- 結果をPostgreSQL/MySQLに挿入するための最良のアプローチは何ですか?
- ジョブのデータを入出力ディレクトリにどのように配置する必要がありますか?
- APIを使用して毎回新しいEMRジョブを作成する必要がありますか?
- 生のログをAmazonS3にアップロードするための最良のアプローチは何ですか?
- 誰かがデータ処理フローの設定を共有できますか?
- ファイルのアップロードとジョブの完了を制御する方法は?
このトピックは、Amazon Elastic MapReduceを使用してアクセスログを処理しようとしたが、適切な資料やベストプラクティスを見つけることができなかった多くの人々に役立つと思います。
UPD:ここで明確にするために、最後の質問が1つあります。
Amazon Elastic MapReduceを利用したログ処理のベストプラクティスは何ですか?
関連記事:
php - awsphpsdkを使用してハイブスクリプトにパラメーターを渡します
phpSDKを使用してAWSEMRでハイブスクリプトを実行しようとしています。スクリプトパラメータ(入力、出力、作業する日付など)を渡すにはどうすればよいですか?
ありがとう
hadoop - AWS Elastic Map Reduce での Gzip 入力解凍の無効化
Gzip された .arc ファイルで MapReduce タスクを実行しています。この質問と同様に、Gzip 解凍が自動的に実行されているため (ファイルの拡張子が .gz であるため) 問題が発生していますが、Unix ファイル エンコーディングに従って改行/改行が単なる改行としてレンダリングされるという問題が発生しています。これにより、ファイルに埋め込まれた特定の文字数に依存するため、入力が完全に読み取れなくなります。Gzip 解凍を無効にしようとしているので、代わりにマッパーで正しく行うことができます。私が試してみました:
しかし、それは圧縮に影響を与えないようです。入力の Gzip 解凍を防ぐ方法はありますか?
ありがとう - ジェフ
php - AWS SDK for PHPからHadoopストリーミングの引数を渡すにはどうすればよいですか?
AWS SDKforPHPを介してジョブを追加しようとしています。APIを介してクラスターを正常に開始し、新しいジョブフローを開始することはできますが、Hadoopストリーミングステップを作成しようとするとエラーが発生します。
これが私のコードです:
次のようなエラーが発生します:無効なストリーミングパラメータ'-input s3:// .... -output s3://..... -mapper s3://....../ mapper.php -reducer s3://...../ reducer.php "
したがって、HadoopストリーミングJARに引数を渡す方法が明確ではありませんか?
AWS SDK for PHPの公式ドキュメントには、例やドキュメントは含まれていません。
おそらく関連する未回答のスレッド:
amazon-web-services - amazon エラスティック mapreduce ジョブで mapred ヒープ サイズを変更する際の問題
私は Amazon Elastic MapReduce を初めて使用し、ブートストラップ構成を使用して mapred ヒープ サイズを 1Gb に設定するのに苦労しています。m1.large インスタンスを使用しています。次のブートストラップ構成を試しましたが、無駄でした:
1)
アクション名 メモリを集中的に使用する構成
パス s3n://eu-west-1.elasticmapreduce/bootstrap-actions/configurations/latest/memory-sensitive
引数
2)
アクション名 Hadoop の構成
パス s3n://eu-west-1.elasticmapreduce/bootstrap-actions/configure-hadoop
引数 --site-key-value io.file.buffer.size=65536 --mapred-key-value mapred.child.java.opts=-Xmx1024m
私が試したことが理にかなっているのかどうかはわかりません。
あなたの誰かが私を導くことができれば、それは素晴らしいことです。ありがとう
hadoop - Amazon Elastic MapReduce Bootstrap アクションが機能しない
ジョブのヒープ サイズを増やすために、次のブートストラップ アクションの組み合わせを試しましたが、どれも機能していないようです。
正しい構文は何ですか?
amazon-ec2 - Amazon EC2 と Amazon EMR
Hive でタスクを実装しました。現在、単一ノード クラスタで正常に動作しています。現在、AWS にデプロイする予定です。
AWSについては何も知りません。デプロイする予定がある場合、Amazon EC2 または Amazon EMR のどちらを選択すればよいですか?
タスクのパフォーマンスを向上させたい。どちらが私にとってより良く、信頼できますか? それらにどのようにアプローチしますか?VMの設定をそのままAWSに登録することもできるそうです。出来ますか?
できるだけ早く私に提案してください。
どうもありがとう。