Apache Spark MLlib是Apache Spark体系中重要的一块拼图:提供了机器学习的模块。不过,目前对此网上介绍的文章不是很多。拿KMeans来说,网上有些文章提供了一些示例程序,而这些程序基本和Apache Spark 官网上的程序片断类似:在得到训练模型后,几乎都没有展示如何使用该模型、程序执行流程、结果展示以及举例测试数据等部分。笔者根据Apache Spark官网上的程序片断,写了一个完整的调用MLlib KMeans库的测试程序,并成功在Spark 1.0 + Yarn 2.2 的环境上执行。由于仅为快速体验目的,本程序里面的很多细节并未被打磨,但相信已可为对Spark MLlib感兴趣的朋友们提供些许入门级帮助。
[A. 程序主要部分]
[B. 测试数据]
[C. 执行]
利用 ${SPARK_HOME}/bin/spark-submit 将程序提交给Yarn去执行。
[D. 结果]
- Console 返回的结果(最后几行):
- Yarn Web Console返回的执行结果:
- Yarn Log 中显示 Scala 程序的Output:
[E. 总结]
- 利用MLlib KMeans 训练出来的 Model(KMeansModel),可以方便地对新的数据作出分类预测