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

spark-sgg-java

spark的内置模块:

一 spark集群部署(yarn)

spark是一种计算框架,spark集群部署有很多种.

  • 如果资源是当前单节点提供的,那么就称之为单机模式.
  • 如果资源是当前多节点提供的,那么就称为分布式模式.
  • 如果资源是由yarn提供的,那么久成为yarn部署环境.
  • 如果资源是由spark提供的,那么就称为spark部署环境.(standalone)

在生产环境中,一般是yarn部署环境.(spark on yarn)

如上图所示,将业务代码提交到spark到提交,然后用资源去计算.

bin /spark-submit --class spark.pi --master yarn ./examples/jars/spark-examples.jar 10

上边代码表示使用bin/spark-submit脚本,执行spark.pi类,jar包在./examples/jars/spark-examples.jar路径下,迭代10次.

问题:spark是怎么知道yarn在哪里并且连接到他的?

答:在配置spark的时候,/opt/module/spark/conf/spark-env.sh 脚本中配置了:YARN_CONF_DIR=/opt/module/hadoop/etc/hadoop,该目录下的yarn-site.xml中配置了yarn的resource manager在那台机器.

配置历史服务:

想查看spark的执行的记录,需要配一个历史服务.

  • 修改spark-default.conf文件:在该文件中添加
spark.eventLog.enabled true
spark.enventLog.dir hdfs://hadoop102:8020/directory
# 日志会保存到hdfs的directory 文件下,所以要先创建这个目录.
spark.yarn.historyServer.address=hadoop102:18080
spark.history.ui.port=18080
  • 修改spark-env.sh ,添加如下配置:
  • 重启spark历史服务

  • 重新提交任务到yarn上:
  • web页面查看日志:http://hadoop103:8088/cluster

1.2spark的两种执行方法:

client和cluster.

二 SparkCore

第一章可以运行成功自带的代码,那我们需要自己写好代码,就可以运行了,那这一章来学习怎么写.

2.1 RDD

RDD概述:RDD叫做弹性分布式数据集,是Spark中最基本的数据抽象.

代码中是一个抽象的类,它代表一个弹性的,不可变的,可分区的,里边元素可并行计算的集合.

2.2.1 数据结构和数据模型

数据结构:采用特殊的结构组织和管理数据.(链表,数组)

数据模型:某些东西特征的浓缩.(车子模型和,房子模型)

RDD是分布式计算模型,它不容纳数据,只是操作数据.

总结:

  • RDD一定是一个对象
  • RDD一定封装了大量的方法和属性.(用于计算)(注意,这里封装的方法和属性是不太复杂的,类似于公开的包,里边的方法是大家普遍用到的)
  • 一定适合分布式数据处理(减小数据规模,并行计算)

2.2.2 RDD数据处理流程

RDD功能类似于字符串的功能,需要把大量的RDD对象组合在一起实现复杂的功能,那是如何组合在一起的?

 2.3RDD编程

2.3.1 RDD的创建

在spark中创建RDD的方式有三种:从集合中创建,从外部存储创建,从其他RDD创建.

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 已解决Exception in thread “main“ java.lang.NullPointerException
  • 【数据结构题集(c语言版)】魔王语言解释 题解(字符串+栈)
  • 【JavaEE】文件操作
  • Shell——流程控制语句(if、case、for、while等)
  • SQLALchemy ORM 的关联关系之 ORM 中的一对一
  • 2024.8.17
  • 基于DPU云盘挂载的Spark优化解决方案
  • 【Linux网络】高级 I/O
  • 电脑监控怎样看回放视频?一键解锁电脑监控回放,守护安全不留死角!高效员工电脑监控,回放视频随时查!
  • mysql主从复制同步、mysql5.7版本安装配置、python操作mysql数据库、mycat读写分离实现
  • P2016 战略游戏
  • 【Python机器学习】利用PCA来简化数据——示例:利用PCA对半导体制造数据降维
  • 【书生大模型实战营(暑假场)闯关材料】基础岛:第1关 书生大模型全链路开源体系
  • Kubectl 常用命令汇总大全
  • Vue3里如何使用本地lottie动画以及如何更优雅的批量引入图片
  • 2019年如何成为全栈工程师?
  • Angular 响应式表单之下拉框
  • django开发-定时任务的使用
  • Javascript弹出层-初探
  • JavaScript的使用你知道几种?(上)
  • JavaScript对象详解
  • JavaScript设计模式之工厂模式
  • PHP变量
  • PHP那些事儿
  • Yii源码解读-服务定位器(Service Locator)
  • 缓存与缓冲
  • 可能是历史上最全的CC0版权可以免费商用的图片网站
  • 驱动程序原理
  • 如何在GitHub上创建个人博客
  • 使用 Node.js 的 nodemailer 模块发送邮件(支持 QQ、163 等、支持附件)
  • 原创:新手布局福音!微信小程序使用flex的一些基础样式属性(一)
  • PostgreSQL 快速给指定表每个字段创建索引 - 1
  • ​Kaggle X光肺炎检测比赛第二名方案解析 | CVPR 2020 Workshop
  • ​如何在iOS手机上查看应用日志
  • # Python csv、xlsx、json、二进制(MP3) 文件读写基本使用
  • ## 临床数据 两两比较 加显著性boxplot加显著性
  • #include<初见C语言之指针(5)>
  • #大学#套接字
  • $forceUpdate()函数
  • (0)Nginx 功能特性
  • (03)光刻——半导体电路的绘制
  • (2022 CVPR) Unbiased Teacher v2
  • (3) cmake编译多个cpp文件
  • (C++二叉树05) 合并二叉树 二叉搜索树中的搜索 验证二叉搜索树
  • (C语言)共用体union的用法举例
  • (PyTorch)TCN和RNN/LSTM/GRU结合实现时间序列预测
  • (动态规划)5. 最长回文子串 java解决
  • (附源码)python旅游推荐系统 毕业设计 250623
  • (附源码)spring boot建达集团公司平台 毕业设计 141538
  • (每日持续更新)jdk api之StringBufferInputStream基础、应用、实战
  • (四) Graphivz 颜色选择
  • (四)Controller接口控制器详解(三)
  • (一)为什么要选择C++
  • (转载)从 Java 代码到 Java 堆
  • (自适应手机端)响应式服装服饰外贸企业网站模板