客户端代码(成功版)(四)"/>
Spark 如何写Java客户端代码(成功版)(四)
1.Spark环境准备,参考我之前写的文章,
可以自己用VirtualBox虚拟一个CentOS,也可以购买腾讯云或者其他云主机。
2.Spark脚手架程序
运行完后,进入到hui-bigdata-spark-starter,在shell界面运行如下命令:mvn clean package spring-boot:repackage
即可生成可单独执行的Jar包,然后上传到云主机(或者虚拟机)运行
3.出现问题总结:
3.1.java.lang.IllegalArgumentException: System memory 259522560 must be at least 471859200. Please increase heap size using the --driver-memory option or spark.driver.memory in Spark configuration.
修改方式,建议使用如下设置:
// 初始化Spark环境
SparkConf sparkConf = new SparkConf()
.setMaster(sparkConfig.getMaster()).setAppName(sparkConfig.getAppName());
sparkConf.set("spark.testing.memory", "471859200");
3.2.executor 0): java.lang.ClassCastException: cannot assign instance of java.lang.invoke.SerializedLambda to field org.apache.spark.api.java.JavaRDD$$anonfun$filter$1.f$1 of type org.apache.spark.api.java.function.Function in instance of org.apache.spark.api.java.JavaRDD$$anonfun$filter$1
at java.io.ObjectStreamClass$FieldReflector.setObjFieldValues(ObjectStreamClass.java:2233)
改成使用本地开发模式,yaml文件进行配置
#如果是在远程主机跑,用下面配置
#master: spark://122.51.56.146:7077
#master: spark://localhost:7077
#如果是本地跑,用下面配置
master: local
4.最后使用java -jar hui-bigdata-spark-starter-1.0.0-SNAPSHOT.jar com.hui.bigdata.statistics.job.StatisticsJob
在云主机(云虚拟机)运行一个Java示例 ,成功运行后,截图如下:
4.FAQ:
4.1
4.2
4.3
更多推荐
Spark 如何写Java客户端代码(成功版)(四)
发布评论