spark1.6转到spark2.3总结(依赖、版本、初始化问题)

问题:pom里面不写spark版本(<spark.version>2.0.0</spark.version>)的话,可能会默认用spark1.6导致版本冲突异常——语法通过但无法编译运行

问题(spark版本必须对应Scala版本):参考https://mvnrepository.com/artifact/org.apache.spark/spark-hive上面的spark和Scala混搭版本(不用理会hive版本)组合jar和pom写法如下图——

或者先看看自己的spark自带的jar依赖到底用啥Scala版本(spark1.6似乎没有这个目录):


若没对应上版本的话,会出现各种乱七八糟的异常,比如无法使用dataframe,报hive metastore初始化失败;


问题(依赖):idea的maven工程里,project structure -> modules -> dependencies 和 pom.xml依赖设置,如spark-core依赖只写project structure会出现找不到依赖的异常,虽然语法没问题;

参考解决方式:pom设置就能跑起来了(project structure依赖加不加似乎无所谓),但是第二天我删了project structure里面的jar依赖又还能跑;spark-shell没有此困扰;



问题(初始化):spark2.0要指定本地测试的工作路径.config("spark.sql.warehouse.dir","file:///work/4/test/spark-warehouse")否则:URISyntaxException: Relative path in absolute URI...


问题(虚拟机):Ubuntu里面要先启动Hadoop服务(后启动spark),才能使用dataset、dataframe等,否则报拒绝连接等异常;

猜你喜欢

转载自blog.csdn.net/u013303361/article/details/79893077
今日推荐