一、依赖包配置

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");
//        }else
//            {sparkConf.setMaster("spark://hadoop01:7077,hadoop02:7077,hadoop03:7077");sparkConf.set("spark.driver.host","192.168.150.1");//本地ip,必须与spark集群能够相互访问,如:同一个局域网sparkConf.setJars(new String[] {".\\out\\artifacts\\spark_test\\spark-test.jar"});//项目构建生成的路径}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

四、局限性

注意:项目机器的本地ip,必须与spark集群能够相互访问,如:同一个局域网。

不在同一个网络提交失败,任务一直重试无法退出

Spark入门(四)Idea远程提交项目到spark集群相关推荐

  1. 谷粒商城电商项目 高可用集群篇

    更多视频,JAVA收徒 QQ:987115885谷粒商城电商项目 高可用集群篇339.k8s-简介.mp4340.k8s-架构原理&核心概念.mp4341.k8s-集群搭建-环境准备.mp43 ...

  2. 《架构系列四:一键部署应用到Tomcat集群中》

    <架构系列四:一键部署应用到Tomcat集群中> 基于前面的<架构系列三:使用Keepalived+Nginx+tomcat实现集群部署>,我们配置了nginx+Tomcat集 ...

  3. Win7下eclipse提交Job到hadoop集群

    Win7下eclipse提交Job到hadoop集群 参考:http://zy19982004.iteye.com/blog/2031172 之前跑通eclipse连接hadoop2.2.0原来是lo ...

  4. Seatunnel提交任务到Flink集群源码解析

    一:首先查看seatunnel提交任务到flink集群的时候的shell脚本start-seatunnel-flink-13-connector-v2.sh,查看最后会调用一个类FlinkStarte ...

  5. spark 提交jar包到集群运行报异常 java.net.UnknownHostException: mycluster

    1.报错信息: root@mode1 bin]# ./spark-shell --master spark://mode1:7077 2019-06-28 15:50:43 WARN NativeCo ...

  6. 共享单车项目、mongodb集群

    需求分析 摩拜单车的重点是物联网大数据 车投放在什么地方,要根据数据来进行支撑,根据历史数据(骑行记录) 通过共享单车的骑行数据可以分析出个性城市 成都休闲之都:骑行的地方多为娱乐场所 上海敬业之城: ...

  7. spark ui的访问地址_Spark篇之HA集群搭建

    一.下载Spark安装包 可以从官网下载,本集群选择的版本是spark-1.6.0-bin-hadoop2.6 二.部署和规划Spark集群 提前准备好四台虚拟主机,三台主机 node1 node2 ...

  8. CentOS 7上搭建Spark 3.0.1 + Hadoop 3.2.1分布式集群

    CentOS 7上搭建Spark3.0.1+ Hadoop3.2.1分布式集群 VMWare 安装CentOS 7 使用Xshell连接虚拟机 集群设置 安装JDK 1.8 SSH 免密登陆 安装ha ...

  9. Kubernetes入门:Pod、节点、容器和集群都是什么?

    文章来源地址: http://mini.eastday.com/a/180103191329488.html?qid=02263 Kubernetes正迅速成为云计算中部署和管理软件的新标准.不过,K ...

最新文章

  1. TensorFlow练习27: 验证码生成器-从文本生成图像
  2. 力求企业的内部公平性
  3. Twin Delayed DDPG(TD3)-强化学习算法
  4. leetcode 861. 翻转矩阵后的得分(贪心算法)
  5. 如何安装tensorflow
  6. python函数type的用意_Python内置函数Type()函数一个有趣的用法
  7. 500内部privoxy错误_【热议】喝崂山啤酒中奖500听,却只能兑换500毫升?!
  8. Oracle的数据并发与一致性详解(下)
  9. String hashCode为啥用31这个数字,很多人不知道!
  10. Oracle12C-针对log4j漏洞补丁修复
  11. Mybatis笔记(狂神)
  12. 玲珑学院OJ 1130 - 喵哈哈村的魔法大师╳灬兲笙疯癫°月【强连通+可相交最小路径覆盖+背包】
  13. Laragon 添加MongoDB服务
  14. php银联支付接口 demo,php版银联支付接口开发简单实例详解
  15. python中主函数循环_python入门(三):分支、循环、函数详解
  16. C++独孤九剑第五式——人生几何(对象复制控制)
  17. win7、win10连接到win10共享打印机出现0x0000011b错误
  18. linux 驱动 到 设备树,tree - Linux:设备树到acpi驱动程序 - 堆栈内存溢出
  19. [转]水木不在,何以清华?
  20. word无法自动修复计算机怎么办,word文档恢复-电脑突然死机Word没保存?不用慌,教你一个小妙招,三秒快速恢复...

热门文章

  1. 「软件项目管理」软件项目范围计划——需求管理与任务分解
  2. [Redis6]新数据类型_HyperLogLog
  3. [SpringSecurity]HelloWorld入门案例
  4. Java实现Huffman哈夫曼树(数组实现)
  5. Java面向对象编程(基础部分)
  6. 用python输出12和8的最大公_重点汇总-python常见问题1
  7. zookeeper理解
  8. Spring连接mysql数据库错误:Cannot load JDBC driver class '${driver}'
  9. 数据库事务及隔离级别
  10. P3511 [POI2010]MOS-Bridges(网络流/欧拉回路)