我正在尝试使用spark scala从Hive导出数据。但我得到了以下错误。
Caused by: java.lang.ClassNotFoundException:com.databricks.spark.csv.DefaultSource
我的scala脚本如下所示。
import org.apache.spark.sql.hive.HiveContext
val sqlContext = new HiveContext(sc)
val df = sqlContext.sql("SELECT * FROM sparksdata")
df.write.format("com.databricks.spark.csv").save("/root/Desktop/home.csv")
我也试过这个命令,但仍然没有解决,请帮助我。
spark-shell --packages com.databricks:spark-csv_2.10:1.5.0
答案 0 :(得分:3)
如果您希望以运行该脚本的方式运行该脚本,则在运行该命令时,您需要使用--jars
用于本地jar或--packages
进行远程repo。 / p>
所以运行脚本应该是这样的:
spark-shell -i /path/to/script/scala --packages com.databricks:spark-csv_2.10:1.5.0
如果你还想在工作完成后停止火花外壳,你需要添加:
System.exit(0)
在你的剧本结束时。
PS:您不需要使用 spark 2。+ 来获取此依赖关系。