2016-11-27 6 views
1

AWS S3に格納されているPythonファイルを実行しようとしています。REST APIを使用してsparkを使用してAWS S3上のファイルにアクセスする

curl -X POST http://localhost:6066/v1/submissions/create --header "Content-Type:application/json;charset=UTF-8" --data '{ 
"action" : "CreateSubmissionRequest", 
"appArgs" : [ "s3n://<bucket-Name>/pi.py" ], 
"appResource" : "s3n://<bucket-Name>/pi.py", 
"clientSparkVersion" : "1.6.1", 
"environmentVariables" : { 
    "SPARK_ENV_LOADED" : "1" 
}, 
"mainClass" : "org.apache.spark.deploy.SparkSubmit", 
"sparkProperties" : { 
"spark.driver.supervise" : "false", 
"spark.app.name" : "Simple App", 
"spark.eventLog.enabled": "true", 
"spark.submit.deployMode" : "cluster", 
"spark.master" : "spark://localhost:6066" 
} 
}' 

をしかし、私はエラーを取得しています:私は、次のREST呼び出しを使用していたファイルは私のローカルマシン上だったし、それが働いた以外、私は同じコールを試してみました

java.io.IOException: No FileSystem for scheme: s3n 

。どのようにしてfs.s3n.impl、fs.s3n.awsAccessKeyId、fs.s3n.awsSecretAccessKeyの値をREST呼び出しで設定できますか?

助けてください。

+0

あなたがマスターと労働者のクラスパスにアマゾン-SDKを追加しましたか?またはあなたのウーバー瓶の中に保管されていますか? –

+0

どうしたらいいですか... –

答えて

0

あなたのCPにはhadoop-aws JARが必要ですが、jets3t 0.90 JARも必要です。後者はデフォルトでインクルードする必要があります(hadoopはすべてのawsをJARに移動しましたが、現在はSparkには含まれていません)。

Hadoop 2.7以降を使用している場合は、より新しいクライアントであるs3a URLを使用してアップグレードすることをおすすめします。 Yuvalが言及したのと同じJARとAWS SDKが必要です。

参照:http://www.slideshare.net/steve_l/hadoop-hive-spark-and-object-stores

関連する問題