spark第四课

countByValue
数据源中相同的值有多少个,也就是WordCount
在这里插入图片描述
countByKey
表的是键值对中的key出现了几次,与Value的值无关
在这里插入图片描述
不推荐collect,因为他是将数据放入内存,但是内存不够大的话,就容易崩,所以使用saveAsTextFile更好,直接放入磁盘.在这里插入图片描述
保存成对象文件,需要序列化
启动了2个
Job数量: 只要执行一个行动算子,就会产生一个作业.(不考虑前面,例如sortby也会产生一个作业)

算子的外部代码 在Driver执行 ,内部在Executor执行
在这里插入图片描述
压栈也需要消耗的

forEachPartition
forEach
2个的效率比较
分区的大于foreach,因为foreach是一个一个压栈,而Partition是一个区一个区压栈
// 一次处理一个分区的数据
// 一次处理一个分区的数据
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
IO
计算机互相传的是ASCII(0-255),
JAVA byte -128-127 所以,网络传输可以使用字节流
所以网络传输必须序列化

在这里插入图片描述
这里还是序列化错误
可是为什么???
因为query是this,query 所以必须传Search,所以这里就需要序列化
在这里插入图片描述
这样改就不需要序列化了.
String q = this.query是在Driver中执行
而q是临时变量,不需要对象
在这里插入图片描述
为什么上面报错?
使用lambda 传的是方法,但是对象是在Driver端的
Sysout.out这个对象是在Driver中,但是方法在Executor执行

序列化与反序列化
反序列化通过序列码重新创建对象,而不是使用序列化的对象

在这里插入图片描述
对象输出流实现

在这里插入图片描述
装饰者设计模式就是层层依赖的
A-B B-C 直接依赖
A和C间接依赖
ABC(血缘关系)

RDD的依赖关系:
1.窄依赖 NarrowDependency OneToOneDependency
2.宽依赖 不是窄,就是宽
在这里插入图片描述
一对一

在这里插入图片描述
宽依赖 shuffle依赖 数据被打乱重新组合

依赖是在创建时就已经确定了,而shuffle是在创建后运行时才使用的.

Application数量(应用程序数量)
按照当前环境来算的,创建几个JavaSparkContext对象,就有几个Application对象.
在这里插入图片描述
在这里插入图片描述
Stage数量(一个job至少一个阶段,1个shuffle就是一个阶段)
一个stage数量 = 1(job基本数量)+宽依赖的数量

Task任务数量
最近分区的最大数量
当前RDD最后的分区数量

Result
基于Shuffle
在这里插入图片描述
Task数量 : 基于Stage = 分区数量
Task任务数 = 当前阶段中最后一个RDD的分区数量=-

coalesce方法默认在

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/89541.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

设计模式之中介者模式(Mediator)的C++实现

1、中介者模式的提出 在软件组件开发过程中,如果存在多个对象,且这些对象之间存在的相互交互的情况不是一一对应的情况,这种功能组件间的对象引用关系比较复杂,耦合度较高。如果有一些新的需求变化,则不易扩展。中介者…

『论文精读』FastViT(ICCV 2023,Apple开源)论文解读

『论文精读』FastViT(ICCV 2023,Apple开源)论文解读 文章目录 一. FastViT简介二. 模型架构2.1. Stage 的内部架构2.2. Stem 的结构2.3. Patch Embedding 的架构2.4. 位置编码 三. 参考文献 论文下载链接:https://arxiv.org/pdf/2303.14189.pdf论文代码…

TCP的可靠性之道:确认重传和流量控制

TCP 全称为 Transmission Control Protocol(传输控制协议),是一种面向连接的、可靠的、基于字节流的传输层通信协议,其中可靠性是相对于其他传输协议的优势点。TCP 为了确保数据传输的可靠性主要做了以下几点: 发送确…

Java云原生框架Quarkus初探

Java云原生框架Quarkus初探 Quarkus 介绍 Quarkus 是一个云原生,容器优先的Java应用框架,它号称是超音速和亚原子的框架,主要特点是构建速度、启动速度快和占用资源少等特点。它为OpenJDK HotSpot和GraalVM量身定制, 根据Java库和…

食品安全”有救了“!温湿度监控快速见效!

在储存、运输和加工过程中,适当的温湿度条件对于保持食品的新鲜度、延长货物寿命以及防止食品交叉污染至关重要。通过精确的温湿度监测和实时数据分析,食品行业能够降低损失、提高产品质量,并满足监管要求。 在这个竞争激烈的行业中&#xff…

曲面(弧面、柱面)展平(拉直)瓶子标签识别ocr

瓶子或者柱面在做字符识别的时候由于变形,识别效果是很不好的 或者是检测瓶子表面缺陷的时候效果也没有展平的好 下面介绍两个项目,关于曲面(弧面、柱面)展平(拉直) 项目一:通过识别曲面的6个点…

2023CCF图形学启明星计划夏令营感想记录

这篇就是纯日记了,想记录一下参加这个夏令营的感想,中间的一些过程,毕竟这对我来说算是一段难忘的经历。 一、了解到的渠道 我个人是比较喜欢图形渲染的,之前也学过GAMES的课程,然后偶然的一天,GAMES101里…

Qt 阴影边框

阴影边框很常见,诸如360以及其他很多软件都有类似效果,了解CSS3的同学们应该都知道box-shadow,它就是来设定阴影效果的,那么Qt呢?看过一些资料,说是QSS是基于CSS2的,既然如此,box-sh…

目标检测笔记(十一):如何结合特定区域进行目标检测(基于OpenCV的人脸检测实例)

文章目录 背景代码结果 背景 由于我们在做项目的时候可能会涉及到某个指定区域进行目标检测或者人脸识别等任务,所以这篇博客是为了探究如何在传统目标检测的基础上来结合特定区域进行检测,以OpenCV自带的包为例。 一般来说有两种方式实现区域指定&…

Numpy学习笔记

科学计算库(Numpy) 通常数据都能转换成矩阵,行就是每一条样本数据,列就是每个字段的特征,Numpy在矩阵运算上非常高效,可以快速处理数据并进行数据计算。 Numpy基本操作 先导入 import numpy as nparray…

告别数字化系统“物理叠加”,华为云推动智慧门店价值跃迁

文|智能相对论 作者|叶远风 有大屏幕滚动播放广告; 有人脸识别系统让消费者自助结账; 有订单管理系统综合分析一段时间内总体经营情况; 有全门店监控直连总部机房; …… 以搭载数字化系统的硬件设备为表面特征的智慧门店&a…

OS 内核级线程代码实现

state和counter实现阻塞和时间片的判断是否跳转进程 先把旧内容通过TR放入原TSS,通过TR找到新TSS然后把TSS内容拷入CPU内部,通过esp值变化实现栈的切换。ip使用的copy的ip

Spring-MVC的数据响应-19

在访问服务端MVC的时候,这个controller层进行相应操作之后 他要做两件事:页面跳转和返回字符串,在做完这些操作之后,我们一般进行页面展示:排除页面展示之外,有些需求可能直接回写给我们一些数据: 页面跳…

亚马逊云科技CEO谈及企业领导力原则的核心:坚持顾客至上

亚马逊云科技首席执行官Adam Selipsky几乎从一开始就在那里:他于2005年加入,在效力亚马逊11年后于2016年离开,转而经营Tableau,并于2021年成为亚马逊云科技首席执行官。当时亚马逊云科技前首席执行官安迪贾西(Andy Jassy)接替杰夫…

idea的断点调试

1、行断点 首先在代码的最左侧点击会显示红色的圆圈 第二步在main方法中右键选中debug run进行运行 会出现下面图片的情况 出现上图之后,点击console 下一步 这个时候就可以看到调试的结果了 6、方法调用栈:这里显示了该线程调试所经过的所有方法&…

UI设计第一步,在MasterGo上开展一个新项目

我们都知道,一个完整的项目,要经历创建团队、搭建组件库、应用规范以及管理设计资产,那么今天小编就在MasterGo中带你从0到1开展一个全新的项目。 你一定遇到过这种情况,同团队的设计师,由于使用不同版本或不同软件&a…

用加持了大模型的 Byzer-Notebook 做数据分析是什么体验

Byzer-Notebook 是专门为 SQL 而研发的一款 Web Notebook。他的第一公民是 SQL,而 Jupyter 则是是以 Python 为第一公民的。 随着 Byzer 引擎对大模型能力的支持日渐完善, Byzer-Notebook 也在不自觉中变得更加强大。我和小伙伴在聊天的过程中才发现他已…

小猫爪:嵌入式小知识17-XCP on CAN简介

小猫爪:嵌入式小知识17-XCP on CAN简介 0 目录1 前言2 XCP on CAN3 实战演练3.1 CONNECT3.2 GET_COMM_MODE_INFO和GET_STATUS3.3 GET_SEED和UNLOCK3.4 获取Slave信息3.5 SET_MTA和BUILD_CHECKSUM3.6 设置DAQ3.7 DAQ传输3.8 SHORT_UPLOAD3.9 标定3.10 FLASH Program …

基于OpenCV实战(基础知识二)

目录 简介 1.ROI区域 2.边界填充 3.数值计算 4.图像融合 简介 OpenCV是一个流行的开源计算机视觉库,由英特尔公司发起发展。它提供了超过2500个优化算法和许多工具包,可用于灰度、彩色、深度、基于特征和运动跟踪等的图像处理和计算机视觉应用。Ope…

动捕设备助力打造沉浸式虚拟现实体验

在纪录片《超时空寻找》中,借助了实时动捕设备,基于三维数字人技术进行老战士与历史场景还原,让抗美援朝老战士可以通过虚拟现实技术,跨越时空与战友实现隔空对话。 随着动捕设备的不断发展,虚拟现实技术越来越成熟&a…