一、依赖包配置

scala与spark的相关依赖包,spark包后尾下划线的版本数字要跟scala的版本第一二位要一致,即2.11

pom.xml

<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.mk</groupId><artifactId>spark-test</artifactId><version>1.0</version><name>spark-test</name><url>http://spark.mk.com</url><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target><scala.version>2.11.1</scala.version><spark.version>2.4.4</spark.version><hadoop.version>2.6.0</hadoop.version></properties><dependencies><!-- scala依赖--><dependency><groupId>org.scala-lang</groupId><artifactId>scala-library</artifactId><version>${scala.version}</version></dependency><!-- spark依赖--><dependency><groupId>org.apache.spark</groupId><artifactId>spark-core_2.11</artifactId><version>${spark.version}</version></dependency><dependency><groupId>org.apache.spark</groupId><artifactId>spark-sql_2.11</artifactId><version>${spark.version}</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.11</version><scope>test</scope></dependency></dependencies><build><pluginManagement><plugins><plugin><artifactId>maven-clean-plugin</artifactId><version>3.1.0</version></plugin><plugin><artifactId>maven-resources-plugin</artifactId><version>3.0.2</version></plugin><plugin><artifactId>maven-compiler-plugin</artifactId><version>3.8.0</version></plugin><plugin><artifactId>maven-surefire-plugin</artifactId><version>2.22.1</version></plugin><plugin><artifactId>maven-jar-plugin</artifactId><version>3.0.2</version></plugin></plugins></pluginManagement></build>
</project>

二、PI例子

java重新编写scala的PI例子

package com.mk;import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaSparkContext;
import org.apache.spark.sql.SparkSession;import java.util.ArrayList;
import java.util.List;public class App
{public static void main( String[] args ){SparkConf sparkConf = new SparkConf();if(System.getProperty("os.name").toLowerCase().contains("win")) {sparkConf.setMaster("local[2]");//本地模拟System.out.println("使用本地模拟是spark");}SparkSession session = SparkSession.builder().appName("Pi").config(sparkConf).config(sparkConf).getOrCreate();int slices =2;int n = (int)Math.min(100_000L * slices, Integer.MAX_VALUE);JavaSparkContext sparkContext = new JavaSparkContext(session.sparkContext());List<Integer> list = new ArrayList<>(n);for (int i = 0; i < n; i++)list.add(i + 1);int count  = sparkContext.parallelize(list, slices).map(v -> {double x = Math.random() * 2 - 1;double y = Math.random() * 2 - 1;if (x * x + y * y < 1)return 1;return 0;}).reduce((Integer a, Integer b) ->a+b);System.out.println("PI:"+  4.0 * count / n);session.stop();}
}

三、直接在idea本地运行

输出PI

四、spark集群提交

项目打成jar,把spark-test.jar上传到~目录,执行shell命令

~/software/spark-2.4.4-bin-hadoop2.6/bin/spark-submit --master spark://hadoop01:7077,hadoop02:7077,hadoop03:7077 --class com.mk.App ~/spark-test.jar 

Spark入门(三)Idea构建spark项目相关推荐

  1. Spark入门实战系列--8.Spark MLlib(上)--机器学习及SparkMLlib简介

    [注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取 1.机器学习概念 1.1 机器学习的定义 在维基百科上对机器学习提出以下几种定义: l&qu ...

  2. Spark入门实战系列--4.Spark运行架构

    注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取 1. Spark运行架构 1.1 术语定义 lApplication:Spark Applic ...

  3. Spark入门实战系列--7.Spark Streaming(上)--实时流计算Spark Streaming原理介绍

    [注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取 1.Spark Streaming简介 1.1 概述 Spark Streaming 是Sp ...

  4. Spark入门实战系列--3.Spark编程模型(上)--编程模型及SparkShell实战

    [注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取 1.Spark编程模型 1.1 术语定义 l应用程序(Application): 基于Spa ...

  5. Spark入门实战系列--1.Spark及其生态圈简介

    1.简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室(Algorithms, Machines, and People Lab)开发通用内存并行计算框架.Spark在2013年 ...

  6. Spark入门实战系列--9.Spark图计算GraphX介绍及实例

    [注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送–Spark入门实战系列>获取 1.GraphX介绍 1.1 GraphX应用背景 Spark GraphX是一个分布式图处理 ...

  7. Spark入门实战系列--2.Spark编译与部署(下)--Spark编译安装

    [注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取 1.编译Spark Spark可以通过SBT和Maven两种方式进行编译,再通过make-d ...

  8. Spark入门实战系列--8.Spark MLlib(下)--机器学习库SparkMLlib实战

    1.MLlib实例 1.1 聚类实例 1.1.1 算法说明 聚类(Cluster analysis)有时也被翻译为簇类,其核心任务是:将一组目标object划分为若干个簇,每个簇之间的object尽可 ...

  9. Jenkins入门教程之--构建软件项目

    Jenkins可以用于执行典型的构建服务器工作,例如执行连续/官方/每晚构建,运行测试或执行一些重复的批处理任务.这在Jenkins被称为"自由式软件项目". 设置项目 转到Jen ...

  10. Spark入门(三)——SparkRDD剖析(面试点)

    Spark RDD剖析 RDD简介 如下案例: RDD容错 RDD 宽窄依赖 Sage划分(重点) 小结 RDD缓存机制 Check Point 机制 RDD简介 Spark计算中一个重要的概念就是可 ...

最新文章

  1. (0050)iOS开发之钥匙串存储
  2. tf.pad函数功能介绍
  3. Web安装项目创建桌面快捷方式
  4. Git学习(一)(2015年11月12日)
  5. 【18】ASP.NET Core MVC 中的 Model介绍
  6. iPhone 12 Max电池容量曝光:老扎心了
  7. java核心技术 pdf下载_JAVA程序员面试秘笈 PDF 下载_Java知识分享网
  8. ubuntu 的使用(三)—— 实用小工具
  9. sp许可证查询 旧sp电信经营许可证查询 电信业务
  10. HTML 初始代码 基本
  11. ua解析接口_蓝奏云直链解析API
  12. input和output哪个是充电_Angular2中Input和Output用法及示例
  13. 会员运营方案纲要和培训(手稿记录)
  14. 8K摄像机研发之路有多难?一起了解你不知道的首款国产8K小型化广播级摄像机背后的故事
  15. WORD公式编辑器的使用(快捷键or添加快捷方式到工具栏)
  16. linux ip命令
  17. 微信小程序开发(十二)富文本插件wxParse的使用
  18. IBM GBS部门
  19. linux系统如何调屏幕亮度,Linux入门教程:Ubuntu笔记本屏幕亮度调节
  20. 麻省理工计算机科学录取条件,美国麻省理工学院录取条件

热门文章

  1. tensorflow打印模型图_从Tensorflow模型文件中解析并显示网络结构图(pb模型篇)...
  2. 算法设计与分析——动态规划——01背包问题
  3. 控制是否展示_现场展示板管理不在于看,而在于管!
  4. [C++11]独占的智能指针unique_ptr的初始化和使用
  5. 蓝桥杯2017初赛-打印大X-找规律
  6. 数据结构---二叉线索树
  7. word List 08
  8. 大学生开题报告php,php毕业设计开题报告
  9. < meta name=“viewport“ content=“width=device-width, initial-scale=1.0“>的解释
  10. __syncthreads()