
Spark学习笔记概念
文章平均质量分 86
GC??
这个作者很懒,什么都没留下…
展开
-
14. DataFrame
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0PH9hGCO-1655396298057)(assets/1653400255144.png)]上图直观地体现了DataFrame和RDD的区别。DataFrame是基于RDD之上的分布式数据集,给予Schema信息。(1)数据准备,在/opt/module/spark-local目录下创建一个user.json文件(2)查看Spark支持创建文件的数据源格式,使用tab键查看(3)读取json文件创建DataFrame原创 2022-06-17 00:18:34 · 418 阅读 · 0 评论 -
13.Storm框架应用
在介绍Storm之前,我们先看一个日志统计的例子:假如我们想要根据用户的访问日志统计使用斗鱼客户端的用户的地域分布情况,一般情况下我们会分这几步:取出访问日志中客户端的IP把IP转换成对应地域按照地域进行统计如果有时效性要求呢?小时级:还行,每小时跑一个MapReduce Job10分钟:还凑合能跑5分钟 :够呛了,等槽位可能要几分钟呢1分钟 :算了吧,启动Job就要几十秒呢秒级 :… 要满足秒级别的数据统计需求,需要进程常驻运行;数据在内存中Storm正好适合这种需求。Storm vs. MapReduc原创 2022-06-17 00:17:57 · 267 阅读 · 0 评论 -
12.SparkSQL概述
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-g7Xrat4M-1655396200675)(assets/1653210188965.png)]Spark SQL是Spark用于结构化数据(structured data)处理的Spark模块。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EB5w3gRG-1655396200677)(assets/1653223225529.png)]SparkCore:RDD -> 取代 Ma原创 2022-06-17 00:16:53 · 193 阅读 · 0 评论 -
11.RDD行动算子
函数签名函数说明1.3 collect函数签名函数说明函数实例1.4 count函数签名函数说明返回RDD中元素的个数实例1.5 first函数签名函数说明返回RDD中的第一个元素实例1.6 take函数签名函数说明函数实例1.7 takeOrdered函数签名函数说明返回该RDD排序后的前n个元素组成的数组函数实例1.8 aggregate函数签名函数原创 2022-06-17 00:16:22 · 131 阅读 · 0 评论 -
10.RDD用法
函数签名函数说明用法1.3 mapPartitions方法函数签名函数说明小功能:获取每个数据分区的最大值[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-w0ka0mjo-1655396109919)(assets/clip_image002.jpg)] 思考一个问题:map和mapPartitions的区别?数据处理角度Map算子是分区内一个数据一个数据的执行,类似于串行操作。而mapPartitions算子是以分区为单位进行批处理操作。功能的角原创 2022-06-17 00:15:26 · 310 阅读 · 0 评论 -
9.RDD用法
从集合中创建RDD,Spark主要提供了两个方法:parallelize和makeRDD1.1.2 从外部存储(文件)创建RDD由外部存储系统的数据集创建RDD包括:本地的文件系统,所有Hadoop支持的数据集,比如HDFS、HBase等。1.1.3 从其他RDD创建主要是通过一个RDD运算完后,再产生新的RDD。1.1.4 直接创建RDD使用new的方式直接构造RDD,一般由Spark框架自身使用。2.2 RDD并行度与分区2.2.1 概述默认情况下,Spark可原创 2022-06-17 00:14:17 · 239 阅读 · 0 评论 -
8.RDD用法
RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据处理模型。代码中是一个抽象类,它代表一个弹性的、不可变、可分区、里面的元素可并行计算的集合。弹性分布式:数据存储在大数据集群不同节点上数据集:RDD封装了计算逻辑,并不保存数据数据抽象:RDD是一个抽象类,需要子类具体实现不可变:RDD封装了计算逻辑,是不可以改变的,想要改变,只能产生新的RDD,在新的RDD里面封装计算逻辑可分区、并行计算[外链图片转存失败,源站可能有防盗链机制,建议将图片保原创 2022-06-17 00:13:43 · 169 阅读 · 0 评论 -
7.Spark历史服务器配置及ha机制
1) 修改spark-defaults.conf.template文件名为spark-defaults.conf2) 修改spark-default.conf文件,配置日志存储路径注意:需要启动hadoop集群,HDFS上的directory目录需要提前存在。3) 修改spark-env.sh文件, 添加日志配置参数1含义:WEB UI访问的端口号为18080参数2含义:指定历史服务器日志存储路径参数3含义:指定保存Application历史记录的个数,如果超过这个值,旧的应原创 2022-06-17 00:12:26 · 313 阅读 · 0 评论 -
7.Spark历史服务器配置及ha机制
1) 修改spark-defaults.conf.template文件名为spark-defaults.conf2) 修改spark-default.conf文件,配置日志存储路径注意:需要启动hadoop集群,HDFS上的directory目录需要提前存在。3) 修改spark-env.sh文件, 添加日志配置参数1含义:WEB UI访问的端口号为18080参数2含义:指定历史服务器日志存储路径参数3含义:指定保存Application历史记录的个数,如果超过这个值,旧的应原创 2022-06-17 00:11:19 · 622 阅读 · 0 评论 -
6.Spark运行环境
Spark作为一个数据处理框架和计算引擎,被设计在所有常见的集群环境中运行, 在国内工作中主流的环境为Yarn,不过逐渐容器式环境也慢慢流行起来。接下来,我们就分别看看不同环境下Spark的运行将spark-3.0.0-bin-hadoop3.2.tgz文件上传到Linux并解压缩,放置在指定位置,路径中不要包含中文或空格1.2.3 启动Local环境进入解压缩后的路径,执行如下指令启动成功后,可以输入网址进行Web UI监控页面访问在解压缩文件夹下的data目录中,添加word.txt文件。原创 2022-06-17 00:10:10 · 196 阅读 · 0 评论 -
5.Spark框架入门
回顾Hadoop历史Spark历史hadoopHadoop是由java语言编写的,在分布式服务器集群上存储海量数据并运行分布式分析应用的开源框架作为Hadoop分布式文件系统,HDFS处于Hadoop生态圈的最下层,存储着所有的数据,支持着Hadoop的所有服务。它的理论基础源于Google的TheGoogleFileSystem这篇论文,它是GFS的开源实现。MapReduce是一种编程模型,Hadoop根据Google的MapReduce论文将其实现,作为Hadoop的分布式计算模型,是Hadoop的原创 2022-06-16 23:39:42 · 226 阅读 · 0 评论 -
4.Spark学习笔记(scala综合案例分析)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0CfK7v4n-1655393698247)(assets/1649650988285.png)]6.3 优化写法7. 作业练习题如何通过统计计算算出单词出现次数,使用reduce方法ount)}...原创 2022-06-16 23:35:53 · 533 阅读 · 0 评论 -
3.Spark学习笔记(高级集合用法)
3.1.2 基本操作3.2 可变List3.2.1 基本语法3.2.2 基本操作3.2.3 可变集合和不可变集合转换3.3 Set集合3.3.1 不可变Set3.3.1.1 创建不可变的Set3.3.1.2 基本操作3.3.2 可变Set3.3.2.1 基本语法3.3.2.2 基本操作3.4 Map集合3.4.1 概述Map(映射)是一种可迭代的键值对(key/value)结构。所有的值都可以通过键来获取。Map 中的键都是唯一的。3.4.2 不可变Map原创 2022-06-16 23:33:41 · 357 阅读 · 0 评论 -
2.Spark学习(集合用法)
可变集合可以在适当的地方被更新或扩展。这意味着你可以修改,添加,移除一个集合的元素。scala.collection.immutable[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0LUUC6OQ-1655393424628)(assets/1648536124515.png)]不可变集合类,相比之下,永远不会改变。不过,你仍然可以模拟添加,移除或更新操作。但是这些操作将在每一种情况下都返回一个新的集合,同时使原来的集合不发生改变,所以这里的不可变并不是变量本身的值不可变,原创 2022-06-16 23:30:56 · 456 阅读 · 0 评论 -
Spark学习笔记(面向对象编程)
Scala是一门完全面向对象的语言,摒弃了Java中很多不是面向对象的语法。虽然如此,但其面向对象思想和Java的面向对象思想还是一致的1.2 包用法1.2.1 基本语法Scala中基本的package包语法和Java完全一致1.2.2 scala包的特点可以让源码文件中多次使用package关键字源码物理路径和包名没有关系明确包的作用域,可以在package关键字的后面增加大括号同一个源码中,子包中可以直接访问父包中的内容scala可以将包当成对象来用可以直接声明属性和方法原创 2022-06-16 23:26:10 · 211 阅读 · 0 评论