Spark学习笔记3

IDEA编写scala代码并打包上传集群运行

我们在IDEA上的maven项目已经搭建完成了,现在可以写一个简单的spark代码并且打成jar包

上传至集群,来检验一下我们的spark搭建后是否真正可以使用了

1.今天就和大家写一个计算π的spark代码

下面我把已经写好了的代码放在下面,大家可以借以参考一下

 package day02

 import org.apache.spark.{SparkConf, SparkContext}
import scala.math.random
object SparkPi02 { def main(args: Array[String]): Unit = { val spark = new SparkContext( new SparkConf().setAppName("SparkPi02")) val slices = if (args.length > 0) args(0).toInt else 2 val n = math.min(100000L * slices,Int.MaxValue).toInt val count = spark.parallelize(1 until n,slices).map { i => val x = random * 2 - 1
val y = random * 2 - 1 if (x * x + y * y < 1) 1 else 0 }.reduce(_+_) println("Pi is roughly" + 4.0 * count / n) spark.stop() } }

写好我们的代码之后还要做一件非常重要的事情,就是把这个代码打包上传到我们的集群里

2.这里来给大家演示一下如何把代码打成jar包和上传到集群的操作

有两种方法可以打包

第一种:

把IDEA右侧的一个叫maven project的目录打开

打开之后点击你的项目名称,然后点击lifecycle,点住clean和package,双击

之后自动开始打包

打包完成以后去项目的target下面查看一下包是否成功导出

上面可以看到已经成功的打包出来了,然后把打好的jar包上传至集群某个文件夹下

然后到spark的bin目录下执行命令:

./spark-submit \
--class 包名加类名 \
--master spark://节点名://7077 \
--jar包在你的集群的绝对路径 \
参数值

回车,就开始执行jar包了,下面是结果的展示

到这里为止,我们已经成功的运行了!

转载本文请和本文作者联系,本文来自博客园一袭白衣一

Spark学习笔记3(IDEA编写scala代码并打包上传集群运行)的更多相关文章

  1. Python3+Selenium3+webdriver学习笔记9(发送富文本信息及上传文件处理)

    #!/usr/bin/env python# -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记9(发送富文本信息及上传文件处理)'''from seleni ...

  2. Spring学习笔记2——表单数据验证、文件上传

    在上一章节Spring学习笔记1——IOC: 尽量使用注解以及java代码中,已经搭建了项目的整体框架,介绍了IOC以及mybatis.第二节主要介绍SpringMVC中的表单数据验证以及文件上传. ...

  3. AntDesign vue学习笔记(七)Form 读写与图片上传

    AntDesign Form使用布局相比传统Jquery有点繁琐 (一)先读写一个简单的input为例 <a-form :form="form" layout="v ...

  4. Nodejs学习笔记(八)--- Node.js + Express 实现上传文件功能(felixge/node-formidable)

    目录 前言 formidable简介 创建项目并安装formidable 实现上传功能 运行结果 部分疑惑解析 写在之后 前言 前面讲了一个构建网站的示例,这次在此基础上再说说web的常规功能---- ...

  5. K8S学习笔记之二进制部署Kubernetes v1.13.4 高可用集群

    0x00 概述 本次采用二进制文件方式部署,本文过程写成了更详细更多可选方案的ansible部署方案 https://github.com/zhangguanzhang/Kubernetes-ansi ...

  6. Nodejs学习笔记(八)—Node.js + Express 实现上传文件功能(felixge/node-formidable)

    前言 前面讲了一个构建网站的示例,这次在此基础上再说说web的常规功能----文件上传,示例以一个上传图片的功能为例子 上传功能命名用formidable实现,示例很简单! PS:最近比较忙,距上一次 ...

  7. Redis学习笔记(5)—— Redis的持久化方案&Redis的集群搭建

    一.Redis的持久化方案 Redis的高性能是由于其将所有数据都存储在了内存中,为了使Redis在重启之后仍能保证数据不丢失,需要将数据从内存中同步到硬盘中,这一过程就是持久化. Redis支持两种 ...

  8. SpringBoot学习笔记(13)----使用Spring Session+redis实现一个简单的集群

    session集群的解决方案: 1.扩展指定server 利用Servlet容器提供的插件功能,自定义HttpSession的创建和管理策略,并通过配置的方式替换掉默认的策略.缺点:耦合Tomcat/ ...

  9. NodeJS学习笔记 进阶 (4)基于express+muter的文件上传(ok)

    个人总结:这篇文章主要讲了multer插件的使用,类似于formidable,可以用来处理post表单中的文件上传,读完这篇文章需要10分钟. 摘选自网络 概览 图片上传是web开发中经常用到的功能, ...

随机推荐

  1. [解决方案]WebAPI+SwaggerUI部署服务器后,访问一直报错的问题

    项目的背景:制作一批接口用来给前台app或者网站提供服务,因为WebApi是最近几年来比较流行和新颖的开发接口的方式,而且又属于轻型应用,所以选用它 部署的过程:建立了WebAPI项目并使用Swagg ...

  2. gitlab 远程 定时备份

    =============================================== 2017/11/1_第2次修改                       ccb_warlock 更新 ...

  3. maven 打包Could not resolve dependencies for project和无效的目标发行版: 1.8

    1.maven 打包Could not resolve dependencies for project 最近项目上使用的是idea ide的多模块话,需要模块之间的依赖,比如说系统管理模块依赖授权模 ...

  4. c#中不同类中变量的引用方法

    (1)如果两个类没有继承关系,存取另一个类中变量的方法如下: public class A { // 注意: // Count是静态变量(static),称为类变量.类变量无需实例化即可使用 publ ...

  5. Head First设计模式之组合模式

    一.定义 将对象组合成树形结构来表现"整体-部分"层次结构. 组合能让客户以一致的方法处理个别对象以及组合对象. 主要部分可以被一致对待问题. 在使用组合模式中需要注意一点也是组合 ...

  6. React学习之路(二)

    状态(state) 状态就是组件描述某种显示情况的数据,由组件自己设置和更改,也就是所组件自己维护,目的就是为了在不同状态下使组件的显示不同 在组件中只能通过getInitialState的钩子函数来 ...

  7. linux 安装redis4.0.6

    1.进入/usr/local/src目录,下载redis # cd /usr/local/src# wget http://download.redis.io/releases/redis-4.0.6 ...

  8. Redis随笔(四)Centos7 搭redis3.2.9集群-3主3从的6个节点服务

    1.虚拟机环境 使用的Linux环境已经版本: Centos 7   64位系统 主机ip: 192.168.56.180 192.168.56.181 192.168.56.182 每台服务器是1主 ...

  9. lodash源码分析之List缓存

    昨日我沿着河岸/漫步到/芦苇弯腰喝水的地方 顺便请烟囱/在天空为我写一封长长的信 潦是潦草了些/而我的心意/则明亮亦如你窗前的烛光/稍有暧昧之处/势所难免/因为风的缘故 --洛夫<因为风的缘故& ...

  10. 阿里云正式上线移动直播问答解决方案,助力APP尽情“撒币”!

    2018年伊始,互联网圈就刮起了一阵"大佬狂撒币,网友喜答题"的热潮.以映客芝士超人等为代表的直播问答平台,通过答题分奖金的互动模式,迅速引爆网络热点.随后,多个直播和视频平台也上 ...