Spark入门(四)Idea远程提交项目到spark集群
一、依赖包配置
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集群相关推荐
- 谷粒商城电商项目 高可用集群篇
更多视频,JAVA收徒 QQ:987115885谷粒商城电商项目 高可用集群篇339.k8s-简介.mp4340.k8s-架构原理&核心概念.mp4341.k8s-集群搭建-环境准备.mp43 ...
- 《架构系列四:一键部署应用到Tomcat集群中》
<架构系列四:一键部署应用到Tomcat集群中> 基于前面的<架构系列三:使用Keepalived+Nginx+tomcat实现集群部署>,我们配置了nginx+Tomcat集 ...
- Win7下eclipse提交Job到hadoop集群
Win7下eclipse提交Job到hadoop集群 参考:http://zy19982004.iteye.com/blog/2031172 之前跑通eclipse连接hadoop2.2.0原来是lo ...
- Seatunnel提交任务到Flink集群源码解析
一:首先查看seatunnel提交任务到flink集群的时候的shell脚本start-seatunnel-flink-13-connector-v2.sh,查看最后会调用一个类FlinkStarte ...
- spark 提交jar包到集群运行报异常 java.net.UnknownHostException: mycluster
1.报错信息: root@mode1 bin]# ./spark-shell --master spark://mode1:7077 2019-06-28 15:50:43 WARN NativeCo ...
- 共享单车项目、mongodb集群
需求分析 摩拜单车的重点是物联网大数据 车投放在什么地方,要根据数据来进行支撑,根据历史数据(骑行记录) 通过共享单车的骑行数据可以分析出个性城市 成都休闲之都:骑行的地方多为娱乐场所 上海敬业之城: ...
- spark ui的访问地址_Spark篇之HA集群搭建
一.下载Spark安装包 可以从官网下载,本集群选择的版本是spark-1.6.0-bin-hadoop2.6 二.部署和规划Spark集群 提前准备好四台虚拟主机,三台主机 node1 node2 ...
- 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 ...
- Kubernetes入门:Pod、节点、容器和集群都是什么?
文章来源地址: http://mini.eastday.com/a/180103191329488.html?qid=02263 Kubernetes正迅速成为云计算中部署和管理软件的新标准.不过,K ...
最新文章
- TensorFlow练习27: 验证码生成器-从文本生成图像
- 力求企业的内部公平性
- Twin Delayed DDPG(TD3)-强化学习算法
- leetcode 861. 翻转矩阵后的得分(贪心算法)
- 如何安装tensorflow
- python函数type的用意_Python内置函数Type()函数一个有趣的用法
- 500内部privoxy错误_【热议】喝崂山啤酒中奖500听,却只能兑换500毫升?!
- Oracle的数据并发与一致性详解(下)
- String hashCode为啥用31这个数字,很多人不知道!
- Oracle12C-针对log4j漏洞补丁修复
- Mybatis笔记(狂神)
- 玲珑学院OJ 1130 - 喵哈哈村的魔法大师╳灬兲笙疯癫°月【强连通+可相交最小路径覆盖+背包】
- Laragon 添加MongoDB服务
- php银联支付接口 demo,php版银联支付接口开发简单实例详解
- python中主函数循环_python入门(三):分支、循环、函数详解
- C++独孤九剑第五式——人生几何(对象复制控制)
- win7、win10连接到win10共享打印机出现0x0000011b错误
- linux 驱动 到 设备树,tree - Linux:设备树到acpi驱动程序 - 堆栈内存溢出
- [转]水木不在,何以清华?
- word无法自动修复计算机怎么办,word文档恢复-电脑突然死机Word没保存?不用慌,教你一个小妙招,三秒快速恢复...
热门文章
- 「软件项目管理」软件项目范围计划——需求管理与任务分解
- [Redis6]新数据类型_HyperLogLog
- [SpringSecurity]HelloWorld入门案例
- Java实现Huffman哈夫曼树(数组实现)
- Java面向对象编程(基础部分)
- 用python输出12和8的最大公_重点汇总-python常见问题1
- zookeeper理解
- Spring连接mysql数据库错误:Cannot load JDBC driver class '${driver}'
- 数据库事务及隔离级别
- P3511 [POI2010]MOS-Bridges(网络流/欧拉回路)