私はスパークジョブでローカルドライブからjsonを解析するためにjsonスカラライブラリを使用していました:
val requestJson=JSON.parseFull(Source.fromFile("c:/data/request.json").mkString)
val mainJson=requestJson.get.asInstanceOf[Map[String,Any]].get("Request").get.asInstanceOf[Map[String,Any]]
val currency=mainJson.get("currency").get.asInstanceOf[String]
しかし、hdfs ファイルの場所を指定して同じパーサーを使用しようとすると、機能しません。
val requestJson=JSON.parseFull(Source.fromFile("hdfs://url/user/request.json").mkString)
エラーが表示されます:
java.io.FileNotFoundException: hdfs:/localhost/user/request.json (No such file or directory)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(FileInputStream.java:195)
at java.io.FileInputStream.<init>(FileInputStream.java:138)
at scala.io.Source$.fromFile(Source.scala:91)
at scala.io.Source$.fromFile(Source.scala:76)
at scala.io.Source$.fromFile(Source.scala:54)
... 128 elided
Json.parseFull ライブラリを使用して hdfs ファイルの場所からデータを取得するにはどうすればよいですか?
ありがとう