Intellij搭建spark开发环境

spark怎么学习呢?在一无所知的前提下,首先去官网快速了解一下spark是干什么的,官网在此。然后,安装开发环境,从wordcount开始学习。第三,上手以后可以学习其他算法了。最后,不要放弃,继续深入学习。

那么,首先解决的就是如何搭建开发环境的问题。

1、确保你的电脑安装了JDK,以及配置了JAVA_HOME环境变量。

2、安装Intellij IDEA,下载地址。目前15.0版本对Scala的支持性就很好。

3、安装scala插件。在首次使用Intellij的时候会出现安装插件的提示,如果错过了也没有关系,在setting里,找到Plugins,输入scala,安装即可。
安装scala插件

4、搭建spark开发环境。

4.1 下载spark的jar包,下载地址。例如我要下载1.5.0版本的spark,hadoop是2.4版本,选项如图:
下载spark的jar包

4.2 解压下载的包,我们需要用的是lib下的spark-assembly-1.5.0-hadoop2.4.0.jar这个包。

4.3 新建scala项目,File -> New Project -> scala -> next填写name和SDK -> finish。

4.4 在项目页“File” -> “project structure” -> “Libraries”, 点“+”,选java,找到spark-assembly-1.5.0-hadoop2.4.0.jar导入,这样就可以编写spark的scala程序了。

4.5 很多时候我们都需要用到maven或者SBT管理依赖,这里我用的是maven。Intellij15.0对maven也很有好,只需要简单配置一下maven仓库地址即可。
Intellij配置maven

5、开心的coding吧!
插入代码

package main.scala

import org.apache.spark.{SparkConf, SparkContext}

object SimpleApp {
  def main(args: Array[String]) {
    val logFile = "D:/IdeaProjects/spark-test/README.md" // Should be some file on your system
    val conf = new SparkConf().setAppName("Simple Application").setMaster("local")
    val sc = new SparkContext(conf)
    val logData = sc.textFile(logFile, 2).cache()
    val numAs = logData.filter(line => line.contains("a")).count()
    val numBs = logData.filter(line => line.contains("b")).count()
    println("Lines with a: %s, Lines with b: %s".format(numAs, numBs))
  }
}

6、打包导出到集群运行。

6.1 如果pom.xml文件中存在hadoop或者spark的依赖,请在打包之前注释掉。因为集群已经有包了,注释掉既能减少包的大小,又能避免某些jar版本冲突。

6.2 Intellij中点击“File - Project Struction - Artifacts - + - Jar - From modules with dependencies…”,填写modules、Main Class以及路径等,点击OK生成jar包。

6.3 Intellij中点击“Build- Build artifacts… ”,选择刚生成的jar包进行build。

6.4 将打包好的jar包上传到服务器某路径下。

6.5 执行提交命令:

spark-submit WhereIsYourJar 其他参数

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值