C/C++教程

IntelliJ IDEA开发Spark案例之WordCount(非Maven、离线版)

本文主要是介绍IntelliJ IDEA开发Spark案例之WordCount(非Maven、离线版),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

教程目录

  • 0x00 教程内容
  • 0x01 新建Scala项目
          • 1. 新建Scala项目
          • 2. 项目配置
  • 0x02 编写Scala代码
          • 1. 新建Scala类
          • 2. 编写WordCount代码
          • 3. 本地执行
  • 0x03 打包到服务器执行
          • 1. 设置打包工程
          • 2. 打包操作
          • 3. 上传服务器并执行
  • 0x04 统计结果展示
  • 0xFF 总结

0x00 教程内容
  1. 新建Scala项目
  2. 编写Scala代码
  3. 打包到服务器执行

实验前提:
a. 安装好了windows本地的scala
b. 安装好了IDEA的scala插件
c. 安装好了JDK

0x01 新建Scala项目
1. 新建Scala项目

a. 新建一个Scala项目,先选择Java,然后在右边选择Scala,配置好解压之后的scala包,其他的默认
在这里插入图片描述
b. 如果有提示,可以随便选一个
在这里插入图片描述

2. 项目配置

a. 右击src,建一个包,比如:com.shaonaiyi
在这里插入图片描述
b. 然后编辑项目结构,加入我们的Scala SDK(找到我们win本地的Scala主目录即可):
在这里插入图片描述
在这里插入图片描述
导入之后点击OK在这里插入图片描述
c. 导入我们的Spark依赖jar包(选择Spark主目录下的jars目录,然后一直OK):
在这里插入图片描述
在这里插入图片描述

0x02 编写Scala代码
1. 新建Scala类

a. 右击包名:com.shaonaiyi,创建Scala Class,然后选择Kind为Object
在这里插入图片描述
在这里插入图片描述

2. 编写WordCount代码

a. 修改Wordcount类为:

package com.shaonaiyi

import org.apache.spark.SparkContext

object Wordcount {

  def main(args: Array[String]): Unit = {

    var sc = new SparkContext("local[2]","Wordcount")
    var file = sc.textFile("spark-wc.iml")
    var wordRDD = file.flatMap(_.split(" ")).map((_,1)).reduceByKey(_ + _).sortBy(_._2)
    wordRDD.foreach(println(_))
  }

}
3. 本地执行

a. 执行代码可以看到统计结果
在这里插入图片描述

0x03 打包到服务器执行
1. 设置打包工程

a. 选择一种类型的包
在这里插入图片描述
b. 设置我们的Wordcount类里面的main方法
在这里插入图片描述
c. 排除我们服务器上有的包,即服务器已经有的jar包就不用也把他们打包上去了。
在这里插入图片描述
然后一直ok,执行完,稍等一会可以看到src同级目录下多了个out文件夹。

2. 打包操作

a. 打包
在这里插入图片描述
在这里插入图片描述
b. 执行完可以看到out目录有jar包了
在这里插入图片描述

3. 上传服务器并执行

a. 使用XFtp等工具上传jar包和项目下的即可(此处直接上传到~)
spark-wc.jar
spark-wc.iml
~路径下

b. 启动spark
$SPARK_HOME/sbin/start-all.sh
c. 执行(在jar包当前路径下):
spark-submit spark-wc.jar

注意要配置好spark的环境变量,才可以在任意路径下执行spark-submit操作,此处不再累赘。

0x04 统计结果展示

统计结果:
在这里插入图片描述

0xFF 总结
  1. 本教程不用联网也可以执行Spark案例,此外,一样也可以执行机器学习等案例。
  2. 本教程非常关键,因为网络不好或者是简单的项目,这种传统的方式也是非常简单方便的。
  3. Maven工程版本,请查看教程:IntelliJ IDEA开发Spark案例之WordCount

作者简介:邵奈一
大学大数据讲师、大学市场洞察者、专栏编辑
公众号、微博、CSDN:邵奈一
本系列课均为本人:邵奈一原创,如转载请标明出处

福利:
邵奈一的技术博客导航

这篇关于IntelliJ IDEA开发Spark案例之WordCount(非Maven、离线版)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!