jblas-1.2.4.jar : spark第三方依赖打包

来源:互联网 发布:javascript缺点 编辑:程序博客网 时间:2024/05/04 15:06

  • 简介
  • 依赖设置
  • 应用部署

简介

在实现基于spark mllib的ALS协同滤波例子:
Spark机器学习_ (南非) 彭特里思 (nick pentreath)(著) 蔡立宇;黄章帅; 周济民(译) 人民邮电出版社 2015-09-01 P72

其中使用了jblas包的接口,在我的应用中也使用了这个包的接口

import org.apache.spark.SparkContextimport org.apache.spark.SparkContext._import org.apache.spark.mllib.recommendation.ALSimport org.apache.spark.mllib.recommendation.Rating//依赖jblas包import org.jblas.DoubleMatrixobject recommendation {  def main(args:Array[String]): Unit ={...    println( cosineSimilarity(itemVector, itemVector) )  }  //基于jblas实现的相似度计算函数  def cosineSimilarity(vec1: DoubleMatrix, vec2: DoubleMatrix): Double = {    vec1.dot(vec2) / (vec1.norm2() * vec2.norm2())  }}

依赖设置

虽然spark是基于jblas包进行了封装,但是并并没将jblas包原有的接口开放出来,因此需要import jblas包。但是运行环境并没有这个包,所以需要添加这个依赖

  1. 下载编译好jblas包(jblas-1.2.4.jar):http://jblas.org/

  2. 添加依赖设置
    在IDEA 中添加依赖包

  3. 编译:直接编译就行

应用部署

将应用(recommendation_mllib.jar)和该依赖包上传后,执行以下脚本运行

spark-submit --master local  \--name test_spark \--driver-memory 1g --executor-memory 1G --num-executors 1 --executor-cores 1 \--jars  [path]/jblas-1.2.4.jar \--class com._21cn.zengzhj.recommendation [path]/recommendation_mllib.jar
0 0
原创粉丝点击