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

【Spark集群部署系列一】Spark local模式介绍和搭建以及使用(内含Linux安装Anaconda)

简介

 

注意:

在部署spark集群前,请部署好Hadoop集群,jdk8【当然Hadoop集群需要运行在jdk上】,需要注意hadoop,spark的版本,考虑兼容问题。比如hadoop3.0以上的才兼容spark3.0以上的。

下面是Hadoop集群部署的链接,个人笔记,已经成功部署两次了,实时更新,分【一】【二】两部分,需要的自己看。不懂欢迎问,看到了解答。(链接失效的话请参考个人主页)

hadoop集群部署【一】HDFS集群icon-default.png?t=N7T8http://t.csdnimg.cn/BVKlqhadoop集群部署【二】YARN,MapReduce集群icon-default.png?t=N7T8http://t.csdnimg.cn/aJJt7

 搭建准备工作:

需要python环境,上传Anaconda,找到放置的位置。

安装Anaconda

在node1(我的第一台机器名)安装Anaconda(我的是Anaconda3-2021.05-Linux-x86_64.sh         版本python3.8)

sh ./Anaconda3-2021.05-Linux-x86_64.sh

然后一直空格,出现[yes|no] 就回答yes,懂?

出现这样的就填你要把anaconda安装到哪里。(路径)

完成后结果(退出终端,重新进来)

更改conda国内源

vim ~/.condarc(新建的,一般里面没东西)

channels:- defaults
show_channel_urls: true
default_channels:- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudmsys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudbioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudmenpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudpytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudsimpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

终端输入 

python

 创建spark运行的虚拟环境

conda create -n pyspark python=3.8
 切换虚拟环境
conda activate pyspark

 

Spark Local部署

上传解压spark

(我的是 spark-3.2.0-bin-hadoop3.2.tgz)

通过什么工具不管,能上传就行。

找到spark上传的位置,cd 进到该目录,不进去也行,自己在前面加路径哈!解压。

 tar -zxvf spark-3.2.0-bin-hadoop3.2.tgz -C /export/server spark-3.2.0-bin-hadoop3.2/

-C 参数后跟解压到哪(路径)

cd /export/server    #填你自己解压的路径

 建立软链接

 ln -s spark-3.2.0-bin-hadoop3.2/ spark
ll

 配置环境变量

vim /etc/profile

export SPARK_HOME=/export/server/spark
export PYSPARK_PYTHON=/export/server/anaconda3/envs/pyspark/bin/python3.8
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
:wq
source /etc/profile
vim /root/.bashrc

添加 

export JAVA_HOME=/export/server/jdk
export PYSPARK_PYTHON=/export/server/anaconda3/envs/pyspark/bin/python3.8
:wq

启动spark local模式

pyspark

进入spark的bin路径下

cd /export/server/spark/bin  # 注意路径
./pyspark

 运行下面代码,结果参考上图

sc.parallelize([1,2,3,4,5]).map(lambda x:x *10).collect()

可以通过游览器输入node1:4040查看监控页面(多个进程不会起冲突,具体监控页面的端口看上图spark版本下面第二行)

Ctrl+d退出

scala交互式界面
./spark-shell

 Ctrl+d退出

提交python文件(参考spark自带的案例文件pi.py    求圆周率,参数10 迭代十次)
./spark-submit --master local[*] /export/server/spark/examples/src/main/python/pi.py 10

 提交文件没有监控界面

相关文章:

【Spark集群部署系列一】Spark local模式介绍和搭建以及使用(内含Linux安装Anaconda)

简介 注意: 在部署spark集群前,请部署好Hadoop集群,jdk8【当然Hadoop集群需要运行在jdk上】,需要注意hadoop,spark的版本,考虑兼容问题。比如hadoop3.0以上的才兼容spark3.0以上的。 下面是Hadoop集群部署…...

泛微OA 常用数据库表

HrmDepartment 人力资源部门 HrmSubCompany 人力资源分部 HrmResource 员工信息表 HrmRoles 角色信息表 T_Condition 报表条件 T_ConditionDetail 报表条件详细值 T_DatacenterUser 基层用户信息 T_FadeBespeak 调查退订表 T_fieldItem 调查项目表输入项信息 T_fieldItemDetail…...

宜佰丰超市进销存管理系统

你好呀,我是计算机学姐码农小野!如果有相关需求,可以私信联系我。 开发语言: Java 数据库: MySQL 技术: JavaMysql 工具: IDEA/Eclipse、Navicat、Maven 系统展示 首页 管理员功能模块…...

生成Vue脚手架报错:npm error code ETIMEDOUT

遇到 ETIMEDOUT 错误通常表示你的 npm 请求在尝试连接到 npm 仓库(如 https://registry.npmjs.org)时超时了。这个问题通常与网络连接、代理设置或网络配置有关。以下是一些解决这个问题的步骤: 检查网络连接: 确保你的设备可以正…...

Readiness Probe可以解决应用启动慢造成访问异常的问题。

Readiness Probe可以解决应用启动慢造成访问异常的问题。 正确 错误 这句话是正确的。 ‌Readiness Probe确实可以解决应用启动慢造成的访问异常问题。‌ Readiness Probe,也称为就绪性探针,是Kubernetes中用于监控容器应用状态稳定性的重要机制之一。…...

第一批AI原住民开始变现:9岁小学生,用大模型写书赚1个w

前言 当人们正在观望,AI什么时候抢走自己的饭碗时,北京一名9岁的小学生在AI的帮助下写了一本小说,并赚到了2万元的版税。 这件看似不可思议的事,他是如何做到的?此外,他还带来一个启发:面对AI时…...

电路笔记(PCB):串扰的原理与减少串扰的几种方法

串扰 串扰(Crosstalk)是指在电路中,一条信号线上的电磁干扰不经意间耦合到另一条相邻的信号线上,从而影响其正常信号传输的现象。串扰会导致相邻信号线上的信号出现畸变或噪声,从而影响信号的完整性和电路的正常工作。…...

QT-监测文件内容重复工具)

QT-监测文件内容重复工具 一、演示效果二、核心代码三、下载链接 一、演示效果 二、核心代码 #include "widget.h" #include "ui_widget.h" #include <QDir> #include <QFile> #include <QCryptographicHash> #include <QApplicatio…...

振兴杯全国青年职业技能大赛信息通信网络线务员解决方案

一、引言 随着数字化时代的到来&#xff0c;信息技术的飞速发展正深刻改变着人们的生活与工作方式。智能楼宇作为这一时代的产物&#xff0c;以其提升生活和工作效率、改善居住和办公环境的特点&#xff0c;受到了广泛关注。智能安防作为智能楼宇的重要组成部分&#xff0c;其…...

Ai音频文件转文字工具 会议音频转文字 录音转文字提取工具 下载

工具基于Ai模型&#xff0c;进行语音音频转文字&#xff0c;进行文字提取&#xff0c;功能强大好用&#xff0c;识别准确率还不错 运行速度取决于音频文件的时长及电脑的性能&#xff0c;音频越长则需要的时间越长&#xff0c;耐心等待即可 使用视频示例如下&#xff1a; Ai语…...

深入理解Spring Boot日志框架与配置

目录 Spring Boot日志框架概述Spring Boot默认日志框架&#xff1a;Logback日志配置文件日志级别的调整日志输出配置日志格式化日志轮转和归档集成其他日志框架日志管理工具最佳实践总结 Spring Boot日志框架概述 Spring Boot 支持多种日志框架&#xff0c;如 Logback、Log4…...

WPF——动态排名图表实现

开发环境 VS2022 .NET 8.0 MVVM Toolkit 8.2.2 需求 开发中需要实现按照成绩动态指名&#xff0c;以展示当前的竞赛成绩的一个实时情况及变化。 即如下效果&#xff1a; 需求分析 按照接收到的信息&#xff0c;就是要将获取到的集合排序&#xff0c;并且要将排序前后的变…...

reactive() 的局限性

reactive() API 有一些局限性&#xff1a; 有限的值类型&#xff1a;它只能用于对象类型 (对象、数组和如 Map、Set 这样的集合类型)。它不能持有如 string、number 或 boolean 这样的原始类型。 不能替换整个对象&#xff1a;由于 Vue 的响应式跟踪是通过属性访问实现的&…...

stm32f407vet6驱动3.2寸lcd(9341 FSMC hal)

最近在钻研一些显示屏&#xff0c;研究到了lcd显示屏&#xff0c;然后入手了一块f407的开发板,但是店家给的资料有点怪&#xff0c;是keil4的工程,我一打开显示缺少f407vexxx&#xff0c;keil现在还巨慢&#xff0c;然后我到处找资料&#xff0c;发现网上大多是vgt6,又去各家ve…...

替换后的最长重复字符(LeetCode)

题目 给你一个字符串 s 和一个整数 k 。你可以选择字符串中的任一字符&#xff0c;并将其更改为任何其他大写英文字符。该操作最多可执行 k 次。 在执行上述操作后&#xff0c;返回 包含相同字母的最长子字符串的长度。 解题 def characterReplacement(s, k):count {}max_len…...

[sqlserver][sql]sqlserver查询表信息和字段信息

--查询一个表中的所有字段 SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAMEzsyh_AccInfo --查询一个库下的所有表 select * from sysobjects where xtypeU --查询一个数据库下的所有字段 SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME in(select nam…...

easypoi模板导出word并且合并行

导出流程 引入依赖制作模板合并导出 引入依赖 <dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-base</artifactId><version>4.1.2</version> </dependency>制作模板 合并行是备注那一列&#xff0c;这一列…...

雨云美国二区E5v2服务器测评(非广告)

注&#xff1a;本文非广告&#xff0c;非推广 本文长期更新地址&#xff1a; 雨云美国二区E5v2服务器测评&#xff08;非广告&#xff09;-星零岁的博客https://blog.0xwl.com/13594.html 今天来测评一下雨云美国二区v2服务器。我测试的这台配置是4-8&#xff0c; 35 M上传&a…...

前端form表单post请求

前端请求post&#xff0c;以表单的形式&#xff0c;后端传来的str,就是url携带的参数 const form document.createElement(form); form.style.display none; form.setAttribute(target, _blank); form.setAttribute(method, post); form.setAttribute(action,url); var vars …...

oracle共享池(shared pool):一、工作原理、组成部分 二、软硬解析过程

文章目录 oracle整体结构图共享池&#xff08;shared pool&#xff09;shared pool的作用shared pool的组成查询 shared pool 各组成部分大小硬解析和软解析 oracle整体结构图 共享池&#xff08;shared pool&#xff09; shared pool的作用 1、 将 sql 语句解析成执行计划 …...

设计模式六大原则中的里氏替换原则

设计模式六大原则中的里氏替换原则&#xff08;Liskov Substitution Principle, LSP&#xff09;是面向对象设计中一个至关重要的原则&#xff0c;它定义了继承的基本原则和约束&#xff0c;确保子类能够透明地替换父类&#xff0c;而不会破坏系统的正确性和稳定性。以下是对里…...

安装Cellpose

Cellpose是目前运用范围最广、效果最好的细胞分割模型&#xff0c;以下是安装方法。 3.1 安装cellpose 3.1.1 创建cellpose 打开Anaconda Navigator,如下图所示&#xff1a; 图3.1.1.1 Anaconda Navigator 依次点击 Environments、Create&#xff0c;在弹出的窗中&#xff0…...

图卷积神经网络算法

图神经网络 图卷积神经网络 GNN GCN 算法 咨询 图卷积神经网络&#xff08;GCN&#xff09; python D码&#xff0c;应用于节点分类。元学习&#xff0c;自监督学&#xff0c;transformer&#xff0c;lstm&#xff0c;cnn&#xff0c;bert&#xff0c;GAN&#xff0c;交通预测 …...

【C#】System.Text.Json

文章目录 主要特点使用场景基本用法序列化反序列化 自定义序列化与反序列化注意事项 System.Text.Json 是 .NET Core 3.0 及更高版本中引入的一个高性能的、低内存的 JSON 序列化与反序列化库。它是 .NET Core 和 .NET 5/6/7 等新版本中推荐的 JSON 处理方式&#xff0c;因为它…...

经典游戏,用java实现的坦克大战小游戏

今天给大家分享一个使用java编写的坦克大战小游戏&#xff0c;整体还是挺好玩的&#xff0c;通过对这款游戏的简单实现&#xff0c;加深对java基础的深刻理解。 一、设计思路 1.坦克大战小游戏通过java实现&#xff0c;其第一步需要先绘制每一关对应的地图&#xff0c;地图包括…...

linux开通端口命令

这块需要开通8088 8083 端口限制 查看已开放端口&#xff1a;sudo firewall-cmd --list-ports 开放8083端口&#xff1a;sudo firewall-cmd --add-port8088/tcp --permanent 开放8088端口&#xff1a;sudo firewall-cmd --add-port8083/tcp --permanent 移除端…...

5、并发锁机制之synchronized

并发锁机制之synchronized i/i--引起的线程安全问题分析原因分析i的JVM字节码指令i--的JVM 字节码指令结论 解决方案 synchronized的使用加锁方式使用synchronized解决之前的共享问题方式一方式二 synchronized底层实现原理分析查看synchronized的字节码指令序列重量级锁实现之…...

职场那些事:应对施暴者的智慧

在职场中&#xff0c;有些人用各种手段让你感到难受&#xff0c;让你屈服&#xff0c;甚至适应他们的变态心理。面对这种人&#xff0c;最重要的就是保持低调。&#x1f910; 很多同事选择倾诉&#xff0c;然而这其实是个大错特错。正如鲁迅所说&#xff0c;“同事间的悲欢并不…...

精细化管理和智慧化运营的智慧油站开源了。

AI视频监控平台简介 AI视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒&#xff0c;省去繁琐重复的适配流程&#xff0c;实现芯片、算法、应用的全流程组合&#xff0c;从而大大减少企业级应用约95%的开发成本。用…...

vue项目配置基础路由vue-router

1、运行以下命令安装vue-router yarn add vue-router 2、在src目录下的components中新建两个vue页面 3、在src目录下新建router文件夹&#xff0c;在router文件夹下面新建index.js文件 4、配置main.js文件 //引入Vue import Vue from "vue"; //引入App import App…...