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
时间: 2024-11-05 20:37:16

jblas-1.2.4.jar : spark第三方依赖打包的相关文章

lazy-linalg: spark第三方依赖打包

简介 基于sbt的方法 基于IDEA的方法 简介 本次任务是对打包第三包lazy-linalg 该包,包含了sbt的脚本 基于sbt的方法 下载源码解压后,在命令行模式(cmd)进入到源码所在的地址 E:\Workdir\ScalaWorkdir\lazy-linalg-master 然后执行命令:sbt 这种方法简单,但是编译过程需要联网下载大量依赖的jar包 由于受到联网的影响,所以还未成功 基于IDEA的方法 根据源码的包结构(如图),在我应用的代码直接添加这个包结构.然后编译打包 IDE

Maven配置、第三方依赖jar包打包以及Profiles多环境配置

由一次打包部署失败引发的深入探索┑( ̄▽  ̄)┍ 一.Maven配置 1.概览 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/

Maven 手动添加第三方依赖包及编译打包和java命令行编译JAVA文件并使用jar命令打包

一,实例:新建了一个Maven项目,在eclipse中通过 build path –> configure path-.将依赖包添加到工程中后,eclipse不报错了.但是用Maven命令 mvn clean compile 时出错如下: 原因是在eclipse中添加了 exteneral jar后,还需要在maven中再添加依赖的jar包 Maven手动添加第三方依赖包有两种方法: 参考:maven 添加第三方依赖              maven中把依赖的JAR包一起打包 第一种方法是使

eclipse打jar包解决第三方依赖包

在项目根目录下手动MANIFEST.MF(eclipse无法自动生成) MANIFEST.MF Manifest-Version: 1.0 Class-Path: lib/kafka-clients-0.9.0.1.jar lib/slf4j-log412-1.7.6.jar Main-Class: cn.Test 注意: 第一行:号后面一定要有个空格 每个依赖jar包前面和后面必须有个空格,如果有很多jar包不能全写在一行,必须转到下一行 空格lib/kafka-clients-0.9.0.1

spark-shell导入第三方依赖

对于spark下已经有的依赖,直接 import SparkContext 但是有些第三方依赖,需要从外部引入 spark-shell --jars /home/wangtuntun/下载/nscala-time_2.10-2.12.0.jar 如果有多个jar包需要导入,中间用逗号隔开

Mapreduce部署与第三方依赖包管理

Mapreduce部署是总会涉及到第三方包依赖问题,这些第三方包配置的方式不同,会对mapreduce的部署便捷性有一些影响,有时候还会导致脚本出错.本文介绍几种常用的配置方式: 1. HADOOP_CLASSPATH 在hadoop的相关配置文件中,添加CLASSPATH路径,那么在hadoop的各个进程启动时都会载入这些包,因此对于mapreduce-job jar中则不需要额外的引入这些jars,所以mapreduce-job jar会比较小[瘦jar],便于传输:但它的问题也比较明显,如

Spark submit依赖包管理!

Spark submit依赖包管理! 使用spark-submit时,应用程序的jar包以及通过-jars选项包含的任意jar文件都会被自动传到集群中. spark-submit --class   --master  --jars  Spark使用了下面的URL格式允许不同的jar包分发策略. 1.文件file方式: 绝对路径且file:/URIs是作为driver的HTTP文件服务器,且每个executor会从driver的HTTP服务器拉取文件: 2.hdfs方式: http:,https

[Maven]Maven构建可执行的jar包(包含依赖jar包)

----------------------------------------------------------------- 转载请注明出处! 博主:疲惫的豆豆 链接:http://www.cnblogs.com/dzblog/p/6913809.html ----------------------------------------------------------------- 目标: 将依赖的第三方jar包打进去 方法: maven-assembly-plugin 环境: IDE

你的应用有漏洞吗?使用第三方依赖需谨慎

引言 开源对软件的发展可以说具有深远的意义,它帮助我们共享成果,重复使用其他人开发的软件库,让我们能够专注于我们自己的创新,它推进了技术的快速发展.据不完全统计78% 的企业都在使用开源,但是其中有多少企业关注第三方开园依赖的安全呢?其中仅有13% 将安全作为第一考虑因素.可喜的是仍然有50% 的企业将安全列为第二或第三位考虑因素,越来越多的公司开始重视第三方依赖的安全性. 为什么要关住第三方依赖的安全性 想象我们交付的软件 Application 是一张饼,我们自己开发的代码仅占其中很小一部分