Spark SQL 讀取 Hive表中數據 在Cluster模式下找不到庫

在Spark On Hive使用SparkSQL讀取hive表中的數據,local和client模式下測試都可以通過,但在yarn的cluster模式下測試拋出瞭如下異常:

org.apache.spark.sql.catalyst.analysis.NoSuchDatabaseException: Database ‘test’ not found;

最後找出原因:把spark的任務jar放到yarn集羣上面運行時,執行job的節點可能不是Hive所在的節點。則會找不到Hive的配置文件,造成找不到數據庫錯誤。
所以要用 --files 把hive-site.xml廣播到各個節點
spark-submit --master yarn --deploy-mode cluster --files …/hive-site.xml --…

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章