当前位置: 首页 > news >正文

idea创建spark教程

1、环境准备

java -version

scala -version

mvn -version

image-20230108092530099

spark -version

image-20230108094100150

2、创建spark项目

创建spark项目,有两种方式;一种是本地搭建hadoop和spark环境,另一种是下载maven依赖;最后在idea中进行配置,下面分别记录两种方法

2.1 本地搭建hadoop和spark环境

参考window搭建spark + IDEA开发环境

2.2 下载maven依赖

参考 Windows平台搭建Spark开发环境(Intellij idea 2020.1社区版+Maven 3.6.3+Scala 2.11.8)

参考 Intellij IDEA编写Spark应用程序超详细步骤(IDEA+Maven+Scala)

2.2.1 maven项目pom配置

<properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><spark.version>2.4.0</spark.version><scala.version>2.11</scala.version><scope.flag>provide</scope.flag>
</properties><dependencies><!--spark 依赖--><dependency><groupId>org.apache.spark</groupId><artifactId>spark-core_${scala.version}</artifactId><version>${spark.version}</version></dependency><dependency><groupId>org.apache.spark</groupId><artifactId>spark-streaming_${scala.version}</artifactId><version>${spark.version}</version></dependency><dependency><groupId>org.apache.spark</groupId><artifactId>spark-sql_${scala.version}</artifactId><version>${spark.version}</version></dependency><dependency><groupId>org.apache.spark</groupId><artifactId>spark-hive_${scala.version}</artifactId><version>${spark.version}</version></dependency><dependency><groupId>org.apache.spark</groupId><artifactId>spark-mllib_${scala.version}</artifactId><version>${spark.version}</version></dependency><!--maven自带依赖--><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>3.8.1</version><scope>test</scope></dependency>
</dependencies>

2.2.2 maven中settings文件配置

<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"><!--设置本地maven仓库-->
<localRepository>D:\development\LocalMaven</localRepository><!--设置镜像-->
<mirrors><mirror><id>nexus-aliyun</id><mirrorOf>central</mirrorOf><name>Nexus aliyun</name><url>http://maven.aliyun.com/nexus/content/groups/public</url></mirror>
</mirrors></settings>

2.3 Project Settings 和 Project Structure配置

image-20230108112808444

image-20230108112952701

image-20230108113015165

2.4 创建spark maven项目

2.4.1 Archetype选择quickstart,选择JDK

image-20230108113302280

2.4.2 modules新建scala Sources文件

image-20230108113450895

2.4.3 libraries新增sacla sdk,可以创建scala项目

image-20230108113631415

3. spark程序

word count 和spark show函数

import org.apache.spark.sql.SparkSessionobject HelloWord {def main(args: Array[String]): Unit = {val spark = SparkSession.builder.master("local").appName("Spark CSV Reader").getOrCreateval sc = spark.sparkContext// 输入文件val input = "D:\\Project\\RecommendSystem\\src\\main\\scala\\weekwlkl"// 计算频次val count = sc.textFile(input).flatMap(x => x.split(" ")).map(x => (x, 1)).reduceByKey((x, y) => x + y);// 打印结果count.foreach(x => println(x._1 + ":" + x._2));import spark.implicits._Seq("1", "2").toDF().show()// 结束sc.stop()}
}

4. 总结

创建spark项目,并且本地调试通过,有很多注意点,包括idea的配置,再次记录一下,以便后面学习

tips

  1. maven helper用来查看是否存在jar包冲突

image-20230108160319812

\weekwlkl)

4. 总结

创建spark项目,并且本地调试通过,有很多注意点,包括idea的配置,再次记录一下,以便后面学习

tips

  1. maven helper用来查看是否存在jar包冲突
    image-20230108160319812

相关文章:

idea创建spark教程

1、环境准备 java -version scala -version mvn -version spark -version 2、创建spark项目 创建spark项目&#xff0c;有两种方式&#xff1b;一种是本地搭建hadoop和spark环境&#xff0c;另一种是下载maven依赖&#xff1b;最后在idea中进行配置&#xff0c;下面分别记录两…...

【JavaEE】DI与DL的介绍-Spring项目的创建-Bean对象的存储与获取

Spring的开发要点总结 文章目录 【JavaEE】Spring的开发要点总结&#xff08;1&#xff09;1. DI 和 DL1.1 DI 依赖注入1.2 DL 依赖查询1.3 DI 与 DL的区别1.4 IoC 与 DI/DL 的区别 2. Spring项目的创建2.1 创建Maven项目2.2 设置国内源2.2.1 勾选2.2.2 删除本地jar包2.2.3 re…...

C#图片处理

查找图片所在位置 原理&#xff1a;使用OpenCvSharp对比查找小图片在大图片上的位置 private static System.Drawing.Point Find(Mat BackGround, Mat Identify, double threshold 0.8) {using (Mat res new Mat(BackGround.Rows - Identify.Rows 1, BackGround.Cols - Iden…...

php 开发微信 h5 支付 APIv3 接入超详细流程

✨ 目录 &#x1f388; 申请商户号&#x1f388; 申请商户证书&#x1f388; 设置V3密钥&#x1f388; 开通H5支付&#x1f388; 设置支付域名&#x1f388; SDK 下载&#x1f388; 第一次下载平台证书&#x1f388;非第一次下载平台证书&#x1f388; H5下单 &#x1f388; 申…...

HTML学习 第一部分(前端学习)

参考学习网站: 网页简介 (w3schools.com) 我的学习思路是&#xff1a;网站实践视频。 视频很重要的&#xff0c;因为它会给你一种开阔思路的方式。你会想&#xff0c;噢&#xff01;原来还可以这样。这是书本或者网站教程 所不能教给你的。而且&#xff0c;对一些教程&#…...

python 实现串口指令通讯

上一篇文章文章写了串口数据的读取&#xff0c;这篇文章讲串口数据的写入&#xff08;指令控制&#xff09; 与下位机通信往往需要十六进制形式进行数据通信&#xff0c;根据设备串口通信指令文档进行指令通信&#xff0c;本篇以灯光控制为例&#xff1a; 1.pyserial模块封装…...

pytorch深度学习逻辑回归 logistic regression

# logistic regression 二分类 # 导入pytorch 和 torchvision import numpy as np import torch import torchvision from torch.autograd import Variable import torch.nn as nn import torch.nn.functional as F import torch.optim as optim import matplotlib.pyplot as …...

数据仓库建设-数仓分层

数据仓库能够帮助企业做出更好的决策&#xff0c;提高业务效率和效益&#xff1b;在数据仓库建设时&#xff0c;绕不开的话题就是数仓分层。 一、数据分层的好处 1. 降低数据开发成本 通用的业务逻辑加工好&#xff0c;后续的开发任务可以基于模型快速使用&#xff0c;数据需…...

共享与协作:时下最热门的企业共享网盘推荐!

现代企业面临着越来越大的数据存储和共享压力。为了提高公司的生产力和效率&#xff0c;许多企业开始寻找共享网盘解决方案。这些共享网盘平台可以帮助企业集中管理文件和数据&#xff0c;并方便快速地与同事、客户或供应商共享。以下是几款好用的企业共享网盘。 Zoho Workdriv…...

mysql取24小时数据

MySQL是一种常用的关系型数据库管理系统。在进行实时数据处理时&#xff0c;我们常常需要查询最近24小时的数据来进行分析和处理。下面我们将介绍如何使用MySQL查询最近24小时的数据。 SELECT * FROM table_name WHERE timestamp_column > DATE_SUB(NOW(), INTERVAL 24 HOU…...

TCP/IP网络编程 第十五章:套接字和标准I/O

标准I/O函数的优点 标准I/O函数的两个优点 将标准I/O函数用于数据通信并非难事。但仅掌握函数使用方法并没有太大意义&#xff0c;至少应该 了解这些函数具有的优点。下面列出的是标准I/O函数的两大优点: □标准I/O函数具有良好的移植性(Portability) □标准I/O函数可以利用缓…...

SaleSmartly,客户满意度调查的绝对好助手

企业使用客户满意度调查来收集反馈并评估客户满意度水平&#xff0c;包括有关产品质量、服务、支持和整体满意度的问题。客户满意度调查的主要目标是直接从客户那里收集有价值的见解&#xff0c;以了解他们的需求、偏好和期望。这种反馈可以帮助企业确定需要改进的领域&#xf…...

MySQL高阶语句

文章目录 一.常用查询1.按关键字排序&#xff08;ORDER BY 语句&#xff09;1.1 语法格式1.2 ASC和DESC的排序概念1.3 举例1.3.1 数据库有一张info表&#xff0c;记录了学生的id&#xff0c;姓名&#xff0c;分数&#xff0c;地址和爱好1.3.2 按分数排序&#xff0c;默认不指定…...

手机快充协议

高通:QC2.0、QC3.0、QC3.5、QC4.0、QC5.0、 FCP、SCP、AFC、SFCP、 MTKPE1.1/PE2.0/PE3.0、TYPEC、PD2.0、PD3.0/3.1、VOOC 支持 PD3.0/PD2.0 支持 QC3.0/QC2.0 支持 AFC 支持 FCP 支持 PE2.0/PE1.1 联发科的PE&#xff08;Pump Express&#xff09;/PE 支持 SFCP 在PP…...

centos 7升级gcc到10.5.0

目录 1、安装gcc 1.1、查看是否含有gcc及gcc版本 1.2、快速安装gcc 2、升级gcc 2.1、下载gcc源码包并解压缩 2.2、下载编译依赖项 2.3、新建gcc-bulid目录&#xff08;与gcc-10.5.0同级&#xff09;并进入该目录中 2.4、生成Makefile文件 2.5、开始编译 2.6、安装 2…...

从脚手架搭建到部署访问路程梳理

1、vue-cli 起文件&#xff1a; 2、配置 webpack &#xff1a;打包配置等&#xff0c;env文件&#xff08; 处理线上和测试的ip&#xff09;&#xff0c; https://www.ibashu.cn/news/show_377892.html 3、样式&#xff1a;封装 style &#xff1a;组件&#xff08;element-u…...

数据库应用:MySQL数据库SQL高级语句与操作

目录 一、理论 1.克隆表与清空表 2.SQL高级语句 3.SQL函数 4.SQL高级操作 5.MySQL中6种常见的约束 二、实验 1.克隆表与清空表 2.SQL高级语句 3.SQL函数 4.SQL高级操作 5.主键表和外键表 三、总结 一、理论 1.克隆表与清空表 克隆表&#xff1a;将数据表的数据记录…...

xshell连接WSL2

1. 卸载 ssh server sudo apt-get remove openssh-server2. 安装 ssh server sudo apt-get install openssh-server3. 修改 ssh server 配置 sudo vim /etc/ssh/sshd_config需要修改以下几项&#xff1a; Port 2222 #默认的是22&#xff0c;但是windows有自己的ssh服务&am…...

Flask新手教程

Flask简介 Flask是一个轻量级的可定制框架&#xff0c;使用Python语言编写&#xff0c;较其他同类型框架更为灵活、轻便、安全且容易上手。 Flask 可以很好地结合MVC模式进行开发&#xff0c;开发人员分工合作&#xff0c;小型团队在短时间内就可以完成功能丰富的中小型网站或…...

拼多多API接口,百亿补贴商品详情页面采集

电商API的数据类型 电商API提供的数据种类多样&#xff0c;一般可分为以下几类&#xff1a; 1.商品数据&#xff1a;商品ID、商品名称、商品价格、库存等。 2.交易数据&#xff1a;订单号、付款时间、收货人等。 3.店铺数据&#xff1a;店铺ID、店铺名称、开店时间、店铺评…...

【人物传记】唯一一位两次获得诺贝尔物理学奖-约翰·巴

1 约翰巴丁简介 约翰巴丁&#xff08;英语&#xff1a;John Bardeen&#xff0c;1908年5月23日—1991年1月30日[6]&#xff09;是一名美国物理学家和工程师。他是唯一一个两度获得诺贝尔物理学奖的人&#xff1a;第一次是在1956年与威廉肖克利和沃尔特布拉顿一起发明晶体管&am…...

保姆级教程:MogFace人脸检测模型-large快速上手,无需代码轻松体验

保姆级教程&#xff1a;MogFace人脸检测模型-large快速上手&#xff0c;无需代码轻松体验 1. 认识MogFace人脸检测模型 1.1 什么是MogFace MogFace是目前最先进的人脸检测方法之一&#xff0c;在Wider Face六项榜单上长期保持领先地位。这个模型通过三个创新点显著提升了检测…...

深入解析FOC电机控制:从理论到实践的无传感器实现

1. 无传感器FOC控制的核心原理 磁场定向控制&#xff08;FOC&#xff09;本质上是在模拟直流电机的控制方式。想象一下小时候玩的四驱车——直流电机通过改变电压就能直接控制转速&#xff0c;简单粗暴。但三相交流电机就像个傲娇的艺术家&#xff0c;需要我们把三相电流"…...

PyTorch实战(38)——深度学习模型可解释性

PyTorch实战&#xff08;38&#xff09;——深度学习模型可解释性0. 前言1. PyTorch 模型可解释性2. 训练手写数字分类器3. 可视化模型卷积核4. 可视化特征图小结系列链接0. 前言 在本专栏中&#xff0c;我们已经构建了多种深度学习模型来完成不同任务&#xff0c;包括手写数字…...

python-flask-djangol框架的食品仓库管理系统

目录需求分析与功能规划技术栈选择系统架构设计开发与测试流程安全与性能优化部署方案项目技术支持源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作需求分析与功能规划 明确食品仓库管理系统的核心需求&#xff0c;包括库存管理、食品分类、…...

新手友好:在快马平台用mc、jc相关案例轻松上手前端开发

作为一个刚接触前端开发的新手&#xff0c;我最近在InsCode(快马)平台尝试做了一个特别适合练手的小工具——代码行数统计器。这个项目用最基础的HTML、CSS和JavaScript实现&#xff0c;但包含了前端开发的几个核心概念&#xff0c;特别适合想通过实际案例学习的朋友。 项目功能…...

Android开发职位深度解析与面试指南

引言 Android开发作为移动应用开发的核心领域,近年来随着智能手机的普及和技术的迭代,已成为IT行业的热门职业方向。本文基于一份典型的Android开发职位描述展开,深入探讨其核心技能要求、经验门槛、工具使用等关键要素。职位描述强调了对Flutter、多线程、Framework、Andr…...

提升钱包开发效率:用快马AI一键生成imToken风格的高复用UI组件

提升钱包开发效率&#xff1a;用快马AI一键生成imToken风格的高复用UI组件 开发钱包类应用时&#xff0c;最让人头疼的就是那些重复性的UI组件和交互逻辑。每次新项目都要从零开始写资产卡片、交易记录列表、二维码弹窗这些基础组件&#xff0c;不仅耗时耗力&#xff0c;还容易…...

5分钟制作Windows启动盘:Rufus免费工具终极指南

5分钟制作Windows启动盘&#xff1a;Rufus免费工具终极指南 【免费下载链接】rufus The Reliable USB Formatting Utility 项目地址: https://gitcode.com/GitHub_Trending/ru/rufus 还在为系统重装而烦恼吗&#xff1f;Rufus作为一款完全免费的USB格式化工具&#xff0…...

别再只会用PS修图了!用Python的Richardson-Lucy算法,5分钟搞定模糊老照片修复

用Python拯救模糊老照片&#xff1a;零基础也能上手的Richardson-Lucy算法实战 翻箱倒柜找到一张泛黄的老照片&#xff0c;却发现画面模糊得连人脸都看不清&#xff1f;别急着叹气&#xff0c;更不用花大价钱找专业修图师。今天我要分享一个连Python新手都能轻松上手的黑科技—…...