使用IntelliJ IDEA15.0.4开发spark的简单案例

本文介绍如何使用IntelliJ IDEA创建Spark项目,并实现WordCount应用。涵盖了环境搭建、项目配置及本地运行步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

开源软件的更新速度很快,而市面上的书籍往往软件版本较低,一些配置、界面都已发生变化。笔者最近在学习spark,刚学会了用IntelliJ IDEA编写wordcount,特此记下,供同 样菜的菜鸟参考。

笔者的的idea是15.0.4版本,spark为1.6,Scala为2.10.6

首先从官网下载http://www.jetbrains.com/idea/,(就是首页那个大大的download按钮)。自己学习的话选择社区版就够了。

将软件放在自己的想要安装的目录下面解压:tar -zxvf 文件名

如何打开图形界面呢?只要进入idea目录下的bin目录,运行idea.sh脚本(./idea.sh)


第一次安装就选择下一个了



选择自己喜欢的界面风格,发现没有确定按钮,按Enter也没用?其实应该点击右上角的关闭按钮



在之后的界面中点击右下角的Configure,选择plugin



选择browse repositories


搜索scala,点击install会下载安装



安装好Scal插件之后,就可以开始新建一个项目了,File--->New--->Project,选择Scala项目,还是不能移动窗口,那么就按Enter



输入项目的名字,选择自己的JDK和Scala版本号,按Enter


项目建立成功之后,就建立scala类吧。在src上右击,选择New,选择Scala Class,输入自己的类名(一定要和代码一致),如果需要的话还可以先建立包,就是Scala Class下面的Package



1.本地运行

以下是Spark的最简单的WordCount的例子,这是本地运行的代码,,在SparkContext中"local"代表本地模式,"wordcount"是任务的名字,本例中需要先建立com.hq的包

package com.hq

import org.apache.spark.SparkConf
import org.apache.spark.SparkContext

object WordCount {
  def main(args: Array[String]) {
    if (args.length < 1) {
      System.err.println("Usage: <file>")
      System.exit(1)
    }

    val conf = new SparkConf()
    val sc = new SparkContext("local","wordcount",conf)
    val line = sc.textFile(args(0))

    line.flatMap(_.split(" ")).map((_, 1)).reduceByKey(_+_).collect().foreach(println)

    sc.stop()
  }
}

此时还没有导入spark的jar包,所以还有大量无法识别的类和方法,下面导入jar包,点击Project Structure按钮



在Libraries下,点击+按钮,选择Java,选择spark的jar包,在spark安装目录下的lib下:


选好之后,按ok就行了


此时apache就可以识别出来了,程序也不报错了


运行之前还需要进行一下配置:


点击左上角的加号,选择Application:



在我们这个案例中,只需要选择一下main class和program arguments就行了,在这个例子中,参数只有一个,就是统计词频的文件路径


一切准备就绪,按绿色的小箭头就可以运行了。结果会出现在控制台里



2. 打包运行

也可以将spark代码打成jar包放在集群上运行,我们对代码做一点点小小的修改,就是这两句

    val conf = new SparkConf().setAppName("wordcount")
    val sc = new SparkContext(conf)


首先还是在Project structure中修改:



选择好main class和打包的路径,点击OK,出现如下窗口:


在已有spark的集群上,可以不需要一些jar包,将红框圈出的部分依次选中,点击减号删除,只剩下“test1 compile output”,点击OK


在主界面上,点击build---->build artifacts,选择build,就开始打包了,jar包就在之前指定的路径下:



打开spark集群

在jar包的目录下,通过命令:

spark-submit --master spark://master:7077 --class com.hq.WordCount test1.jar /etc/profile

即可运行该程序了

其中,spark-submit可以直接使用是因为spark已经配置了环境变量,--master是主节点和端口号,--class指定的是main class的路径,test1.jar是jar包名,最后的/etc/profile是参数


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值