关于spark提交作业报错原因
来源:互联网 发布:淘宝ltvvy模特是谁 编辑:程序博客网 时间:2024/05/22 06:32
spark提供了scala,java及python等脚本作业的功能,但是在实际运行中很容易卡在sc初始化问题上,这里主要原因在于启动spark环境后系统会自建sc环境,若用户在脚本中新建sc将会报错,但是不使用sc又难以达到脚本的效果,这里提供python脚本的提交方法说明:
spark-submit –master local[4] svm.py
或者
spark-submit –master=spark://namenode1-sit.xxxxxxxx.com:7077 classification.py
而其中关于svm.py的内容则应该这么写:
from pyspark import SparkContextfrom pyspark.mllib.classification import SVMWithSGD, SVMModelfrom pyspark.mllib.regression import LabeledPoint# Load and parse the datadef parsePoint(line): values = [float(x) for x in line.split(' ')] return LabeledPoint(values[0], values[1:])if __name__ == "__main__": sc = SparkContext(appName="PythonSVM") data = sc.textFile("data/mllib/sample_svm_data.txt") parsedData = data.map(parsePoint) model = SVMWithSGD.train(parsedData, iterations=100) labelsAndPreds = parsedData.map(lambda p: (p.label, model.predict(p.features))) trainErr = labelsAndPreds.filter(lambda (v, p): v != p).count() / float(parsedData.count()) print("Training Error = " + str(trainErr)) model.save(sc, "myModelPath/lg") sameModel = SVMModel.load(sc, "myModelPath/lg") sc.stop()
这里面有关键的三点,一是该脚本文件要以main函数运行,二是重新修改sc的应用名称(master可以在外部传参时修改),三则是在运行结束后要关闭sc,以防止跟pyspark环境的sc产生冲突报错。
PS:spark各大组件应用的输入类型,sparkSQL和ml主要针对DataFrame操作,而spark MLLib主要针对RDD类型操作:
0 0
- 关于spark提交作业报错原因
- 提交spark streming报错
- spark源码研究---作业提交
- 提交spark sample作业失败
- eclipse java spark作业提交
- Spark提交作业运行过程
- spark的作业提交流程
- 提交Hadoop作业失败,报错Connection refused
- 关于Umeng分享 报错原因
- 关于tomcat启动报错的原因
- Spark源码分析(一)作业提交
- spark-submit 提交作业到集群
- 利用 livy 远程提交 spark作业
- Spark学习(单机本地提交作业)
- 简单Spark作业编写与提交执行
- spark 作业提交与hdfs调用
- spark学习起步(三)--作业提交
- Spark jobServer搭建+提交作业执行
- activiti 部署流程图后中文乱码
- iOS备忘录之MAC电脑快捷键
- 非虫——JNI实例
- Python学习之路七---进阶知识
- SpringJDBC--NamedParameterJdbcTemplate
- 关于spark提交作业报错原因
- Activity之间的数据传输
- Android自定义View(五)——带扫描线的View
- PHP的优劣势,欢迎指正和补充
- android service完全解析(下)
- 欢迎使用CSDN-markdown编辑器
- OC 基础第七讲 : NSDate,类的扩展与延展(Extension)
- ArcGIS 实现框选区域查询要素后,要素点击弹出框
- 使用csc生成DLL文件