Spark学习之第一个程序打包、提交任务到集群
1、免秘钥登录配置:
ssh-keygen
cd .ssh
touch authorized_keys
cat id_rsa.pub > authorized_keys
chmod 600 authorized_keys
2、环境工具
2.1环境
系统 urbuntu jdk 1.7.0_79
scala 2.10.4
hadoop 2.6.0
spark 1.6.2
2.2打包工具
IDEA + sbt1.2打包工具
3.打包
3.1安装插件
需要预先安装scala插件,点击File ->Setting ->Plugins ->输入框输入scala->install
安装完成需要重启IDE
3.2创建项目
File -> New Project ->Scala -> SBT 选择相应版本 ->finish
3.3编写代码
build.sbt 添加spark相关依赖
name := "demoPro" version := "1.0" scalaVersion := "2.10.4" libraryDependencies += "org.apache.spark" % "spark-core_2.10" % "1.6.2"
创建WordCount.scala,编写如下代码
import org.apache.spark.{SparkContext, SparkConf}
/**
* Created by Administrator on 2018/2/20.
*/
object WordCount {
def main(args: Array[String]) {
val conf = new SparkConf().setAppName("wordcount")
val sc = new SparkContext(conf)
val input = sc.textFile("/home/dell/helloSpark.txt")
val lines = input.flatMap(line => (line.split(" ")))
val count = lines.map(word => (word, 1)).reduceByKey { case (x, y) => x + y }
val output=count.saveAsTextFile("/home/dell/helloSparkRes")
}
}
3.4打包
File -> Project Structure -> Aritifacts -> 点击+号 ->jar -> 第二个 -> 指定Module和 MainClass -> JAR files from libraries 选择第二个 ->点击ok
主题栏点击Build -> Build Aritifacts - Build
在工程目下out目录中生成相应jar包即打包成功
4.提交任务
4.1启动hadoop
#进入sbin目录
cd $Hadoop_HOME/sbin
#启动hadoop集群
start-all.sh
4.2上传测试文件到hdfs
hadoop fs -put test.txt /test/test.txt
4.3上传程序jar包
是同filelize 或者sftp 或者 rz -y命令上传程序jar
4.4 提交任务
4.4.1启动Master
sudo ./start-master.sh
访问localhost:8080 获取spark://xxx:7077
4.4.2启动Worker
sudo ./bin/spark-class org.apache.spark.deploy.worker.Worker spark://dell:7077
4.4.3提交作业
sudo ./bin/spark-submit --master spark://dell:7077 --class WordCount /home/dell/demopro.jar
显示如图:

5、查看测试程序是否正确
5.1、查看 是否生成文件夹 进入文件查看程序是否正确

5.2、进入文件查看程序是否正确

Spark学习之第一个程序打包、提交任务到集群的更多相关文章
- Spark学习之路 (二)Spark2.3 HA集群的分布式安装
一.下载Spark安装包 1.从官网下载 http://spark.apache.org/downloads.html 2.从微软的镜像站下载 http://mirrors.hust.edu.cn/a ...
- Spark学习之路 (二)Spark2.3 HA集群的分布式安装[转]
下载Spark安装包 从官网下载 http://spark.apache.org/downloads.html 从微软的镜像站下载 http://mirrors.hust.edu.cn/apache/ ...
- spark学习之路1--用IDEA编写第一个基于java的程序打包,放standalone集群,client和cluster模式上运行
1,首先确保hadoop和spark已经运行.(如果是基于yarn,hdfs的需要启动hadoop,否则hadoop不需要启动). 2.打开idea,创建maven工程.编辑pom.xml文件.增加d ...
- Spark学习之第一个程序 WordCount
WordCount程序 求下列文件中使用空格分割之后,单词出现的个数 input.txt java scala python hello world java pyfysf upuptop wintp ...
- QT学习之第一个程序
QT学习之第一个程序 目录 手动创建主窗口 居中显示 添加窗口图标 显示提示文本 Message Box的应用 手动连接信号与槽 手动创建主窗口 窗口类型 QMainWindow: 可以包含菜单栏.工 ...
- 在eclipse上提交任务到集群执行
win7下eclipse远程开发hadoop程序,分为两种: (1)运行[Run As] Java Application, 打包程序为jar,上传集群执行(这里不做解释) (2)运行[Run As] ...
- flink idea 打包jar 并放到集群上运行
flink idea 打包jar 并放到集群上运行 在开始之前注意前提,当前项目的scala的版本要和集群上的scala一致 我已经创建好一个wordCount的flink项目 注意项目的po ...
- hadoop学习第二天-了解HDFS的基本概念&&分布式集群的搭建&&HDFS基本命令的使用
一.HDFS的相关基本概念 1.数据块 1.在HDFS中,文件诶切分成固定大小的数据块,默认大小为64MB(hadoop2.x以后是128M),也可以自己配置. 2.为何数据块如此大,因为数据传输时间 ...
- RocketMQ学习笔记(4)----RocketMQ搭建双Master集群
前面已经学习了RockeMQ的四种集群方式,接下来就来搭建一个双Master(2m)的集群环境. 1. 双Master服务器环境 序号 ip 用户名 密码 角色 模式 (1) 47.105.145.1 ...
随机推荐
- Mac上配置idea的项目上传到GitHub
1.安装git,Mac默认已经安装了Git,可以通过命令git —version查询一下. 2.创建SSH KEY(如果已经创建过,则不用再次创建.查看~/.ssh/id_rsa.pub是否存在) 生 ...
- A1104. Sum of Number Segments
Given a sequence of positive numbers, a segment is defined to be a consecutive subsequence. For exam ...
- 【洛谷P3792】由乃与大母神原型和偶像崇拜
题目大意:维护一个序列,支持单点修改和查询一段区间能不能组成连续的一段数. 题解:查询区间能不能组成一段连续的数这个操作较为复杂,很难在较小时间复杂度内直接维护.这里采用线段树维护区间哈希的策略,即: ...
- 硬盘读取速度变慢 — 当前传送模式: PIO模式
网上搜索了一下,找到两篇文章: 标题:硬盘读取速度变慢 当前传输模式pio的解决方法 http://www.veryhuo.com/a/view/52786.html (解决思路:先卸载驱动,重启 ...
- 运行vb写的程序,有些电脑上会弹出一个与office相关的窗口
到网上搜索了一下,找了几个解决方案,不过我的电脑上没出现过,所以先收藏一下,或许以后能用上. 来自:http://bbs.csdn.net/topics/380204412 今天将注册表的项一个个删除 ...
- Docker mysql主主互备和高可用
一.测试环境 1.1 结构图 1.2 版本 操作系统:CentOS 7.3 MySQL版本:5.6.35 Docker版本:18.06.1-ce 使用root用户操作 IP地址说明 IP地址 用途 备 ...
- 91 Testing Linux学习笔记
91 Testing Linux学习笔记... 学习地址:91Testing 的Linux教程=====================学习网址:http://www.91testing.net/ar ...
- Scala进阶之路-Scala中的枚举用法案例展示
Scala进阶之路-Scala中的枚举用法案例展示 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Scala中的枚举值和Java中的枚举值有点差别,不过使用起来也都差大同小异,我这 ...
- Java中Dom4j解析XML
与利用DOM.SAX.JAXP机制来解析xml相比DOM4J表现更优秀,具有性能优异.功能强大和极端易用使用的特点,只要懂得DOM基本概念,就可以通过dom4j的api文档来解析xml.dom4j是一 ...
- spring整合redis-----ShardedJedisPool实现
redis是一个非常优秀的缓存框架,良好的api,强悍的性能,是现在非常非常火的缓存框架.下面来介绍一下spring中是如何整合redis的 分析: 需要引入依赖 需要配置连接池,就是一个xml文件, ...
