Intelli Idea下 一个Spark的小例子

本文介绍了在Ubuntu16.04环境下,如何使用Intelli IDEA Community版搭建Scala项目,并通过Spark处理数据,将RDD保存到本地。步骤包括安装IDE、配置Scala插件、创建项目、设置源代码目录、导入Spark库、编写Scala代码、打包成jar,最后在Spark集群上运行并查看结果。

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

使用的是Ubuntu16.04
1、下载Intelli Idea的Community版本,并解压放到/opt/路径下,这里下载的为2016.3.5版本
http://www.jetbrains.com/idea/download/#section=windows

2、打开终端,进入解压后的idea目录,运行bin下idea.sh

cd /opt/idea    
bin/idea.sh

这里写图片描述

3、点击右下角的configure-plugins-Install JetBrains Plugins,找到Scala并Install
这里写图片描述

4、点击create new project新建项目,选择创建scala程序,点击下一步,在Project JDK中选择自己的JDK路径,点击完成
这里写图片描述

5、点击菜单栏ProjectStructure,在Modules中,右键src,在src下建main文件夹,再在main下面建一个scala文件夹,右键点击这两个文件夹,将类型改为Source
这里写图片描述

在Libraries中,点添加-Java加入spark的jar包。如果没有scalaJDK则还需点添加-scalaJdk
这里写图片描述
点击Apply和Ok保存设置

6、右键scala文件夹,new-package新建包test1,然后右键test1 new-ScalaClass新建scala文件,以下为scala内容,建立一个rdd并保存在本地。

package test1
import org.apache.spark.{SparkConf, SparkContext}
import org.apache.spark.SparkContext._
object test1 {
  def main(args: Array[String]){
    if(args.length == 0){
      System.err.print("Usage:test1<file1>")
      System.exit(1)
    }

    val conf = new SparkConf().setAppName("test1")
    val sc = new SparkContext(conf)
    //建立rdd并保存到arg(0)指定的路径下
    val num = 1 to 10
    val rdd1 = sc.parallelize(num)
    rdd1.saveAsTextFile(args(0))

    sc.stop()
  }
}

7、点击菜单栏ProjectStructure,在Artifas中点击绿色+ jar-from modules,指定main class为要运行的test1,点击确定
这里写图片描述

点击Build-Build Artifacts-Build,Build结束后,可以看到项目下out文件夹中有mytest.jar
这里写图片描述

打开终端,切换到spark路径下,将此jar包放到spark路径下

cp /home/zyt/IdeaProjects/mytest1/out/artifacts/mytest1_jar/mytest1.jar

启动master和worker,并提交代码,其中指定了参数为本地的路径,即将rdd保存到本地/home/mytest1下

bin/spark-submit --master spark://ubuntu:7077 --class test1.test1 mytest1.jar file:///home/mytest1

运行结果如下,可以看到代码已经成功运行
这里写图片描述

打开网页localhost:8080可以看到任务已经完成
这里写图片描述

然后打开/home 可以看到有一个叫mytest1的文件夹,文件夹中有三个文件
这里写图片描述

其中part-00000和part-00001中内容分别为12345和678910,说明rdd已经成功保存。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值