私が有効であるJSONファイルがあります:私は成功し、私はこれまでの仕事sparkはd3としてs3aファイルをロードしますが、実行するコマンドは?
/home/me/spark/bin/spark-submit \
--master local[*] Code.py
を提出するシェルスクリプトを持っているローカルスパークマシン上
DF = sqlContext.read.json("/home/me/myfile.json")
をインポートすることができ
をとても良い、例えばDF.show(1)はうまく動作します。
ここでは、myfile.jsonと同じデータを含むs3aリンクからロードしようとしています。私は
DF = sqlContext.read.json("s3a://some-bucket/myfile.json")
私はまだ同じコマンドが含まれている私のシェルスクリプトを実行するを試してみました
、すなわち
/home/me/spark/bin/spark-submit \
--master local[*] Code.py
しかし、それは動作しません。この時間は、私は次のエラーを取得する
java.lang.ClassNotFoundException: Class org.apache.hadoop.fs.s3a.S3AFileSystem not found
私のシェルスクリプトは間違っていますか?
PS:私はちょうど他の人からs3aリンクを取得しました。だから私のAWSアカウントにはない。アクセスキーや秘密キーがわからなくても、そのリンクからデータをインポートできるとします。
これは 'ClassNotFoundException'です。依存関係をチェックしましたか? –
いいえ、どうすればいいですか? – S12000
/spar/jarsファイル内にhaddop-aws-2.7.3.jarとaws-java-sdk-1.7.4.jarの両方を追加して依存関係を修正しました。それでも、次のエラーが表示されます:チェーン内の任意のプロバイダからAWS資格情報を読み込むことができません – S12000