在windows上运行spark2.0的ml算法报错:
Exception in thread "main" java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: file:F:/program/MyPrograms/spark-warehouse
错误位置:
val spark = SparkSession
.builder
.appName("EstimatorTransformerParamExample")
.getOrCreate()
查询后发现使用spark sql时需要指定数据库的文件地址。
但这里并没有使用spark sql。应该是使用SparkSession,取代了原本的SQLContext与HiveContext。
改为:
val spark = SparkSession
.builder
.appName("EstimatorTransformerParamExample")
.config("spark.sql.warehouse.dir", "F:/program/MyPrograms/spark-warehouse")
.master("local")
.getOrCreate()
就好了。
或者
.config("spark.sql.warehouse.dir", "file:///F:/program/MyPrograms/spark-warehouse")
这个目录可以随便选择,直接使用file:///也可以