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. 为clang添加中文关键字

    原址: https://zhuanlan.zhihu.com/p/31158537 以clang为基础做了一个与C++.C兼容中英文关键字的编译器 swizl/cnlang 原理就是加与英文关键字等效 ...

  2. PHP生成验证码

    <?php check_code(); function check_code($width = 100, $height = 50, $num = 4, $type = 'jpeg') { $ ...

  3. python sklearn PCA源码阅读:参数n_components的设置(设为‘mle’出错的原因)

    在介绍n_components参数之前,首先贴一篇PCA参数详解的文章:http://www.cnblogs.com/akrusher/articles/6442549.html. 按照文章中对于n_ ...

  4. ABP架构学习系列二:ABP中配置的注册和初始化

    一.手工搭建平台 1.创建项目 创建MVC5项目,手动引入Abp.Abp.Web.Abp.Web.Mvc.Abp.Web.Api 使用nuget添加Newtonsoft.Json.Castle.Cor ...

  5. 面试经验And总结

    作为一个实习生,我大二即将读完,因为自己是大专的和本科没法比,没有他们的 知识基础,没有他们的充裕的时间,没有那个本科毕业证,没有学位证书.作为一个大专生我在找工作的时候总是充满了自卑,可自己有事那种 ...

  6. golang 用tar打包文件或文件夹

    打包文件用到了tar包,其中tar包的用法可以参考API golang提供了个函数用来遍历文件夹 filepath.Walk 函数具体描述如下: func Walk(root string, walk ...

  7. java的static关键字 – Break易站

    本文内容来自:java的static关键字 – Break易站 (原文网站阅读体验更好) 通过static关键字可以满足两方面的需要.一种情形是,只想为某特定域分配单一存储空间,而不去考虑究竟要创建多 ...

  8. File System 定额(配额查询)

    不多说,在弄一个基于FileSytem/IndexedDB的小应用,目前处于基础开发阶段, 我们在使用FileSystem的时候无疑是需要知道浏览器的定额(配额的),怎么去查询,当然可以查询 Quot ...

  9. Java学习笔记10(面向对象三:接口)

    接口: 暂时可以理解为是一种特殊的抽象类 接口是功能的集合,可以看作是一种数据类型,是比抽象类更抽象的"类" 接口只描述所应该具备的方法,并没有具体实现,具体实现由接口的实现类(相 ...

  10. SQLServer 创建服务器和数据库级别审计

    概述 在上一篇文章中已经介绍了审计的概念:本篇文章主要介绍如何创建审计,以及该收集哪些审核规范. 一.常用的审核对象 1.1.服务器审核对象 1.FAILED_LOGIN_GROUP( Audit L ...