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

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

简介

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

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


import org.apache.spark.SparkContext
import org.apache.spark.SparkContext._
import org.apache.spark.mllib.recommendation.ALS
import org.apache.spark.mllib.recommendation.Rating
//依赖jblas包
import org.jblas.DoubleMatrix

object 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

你可能感兴趣的:(spark,机器学习,应用部署,打包依赖)