spark
THE ORDER
卷,学习笔记
展开
-
25 Spark 3.0 新特性
1 Spark 3.0 新特性2 Adaptive Query Execution 自适应查询(SparkSQL)3 总结AQE的开启通过: spark.sql.adaptive.enabled 设置为true开启,触发后极大提升SparkSQL计算性能动态分区裁剪可以让我们更好的优化运行时分区内数据的量级. 通过动态的谓词下推来获取传统静态谓词下推无法获得的更高过滤属性, 减少操作的分区数据量以提高性能.新版Koalas类库可以让我们写Pandas API(原创 2022-03-14 10:34:22 · 2371 阅读 · 0 评论 -
24 Spark新特性+核心回顾 Spark Shuffle
1 Spark Shuffle总结SortShuffle对比HashShuffle可以减少很多的磁盘文件,以节省网络IO的开销SortShuffle主要是对磁盘文件进行合并来进行文件数量的减少, 同时两类Shuffle都需要经过内存缓冲区溢写磁盘的场景. 所以可以得知, 尽管Spark是内存迭代计算框架, 但是内存迭代主要在窄依赖中. 在宽依赖(Shuffle)中磁盘交互还是一个无可避免的情况. 所以, 我们要尽量减少Shuffle的出现, 不要进行无意义的Shuffle计算原创 2022-03-14 10:21:40 · 1772 阅读 · 0 评论 -
24 分布式SQL执行引擎
1 概念2 配置3 测试总结分布式SQL执行引擎就是使用Spark提供的ThriftServer服务,以“后台进程”的模式持续运行,对外提供端口。可以通过客户端工具或者代码,以JDBC协议连接使用。SQL提交后,底层运行的就是Spark任务。相当于构建了一个以MetaStore服务为元数据,Spark为执行引擎的数据库服务,像操作数据库那样方便的操作SparkSQL进行分布式的SQL计算...原创 2022-03-14 10:00:26 · 2618 阅读 · 0 评论 -
23 Spark On Hive
1 原理2 配置3 在代码中集成Spark On Hive4 总结Spark On Hive 就是因为Spark自身没有元数据管理功能, 所以使用Hive的Metastore服务作为元数据管理服务。计算由Spark执行。原创 2022-03-14 09:48:03 · 1551 阅读 · 0 评论 -
22 SparkSQL的运行流程
1 RDD的执行流程回顾2 SparkSQL的自动优化3 Catalyst优化器4 总结DataFrame因为存储的是二维表数据结构,可以被针对,所以可以自动优化执行流程。自动优化依赖Catalyst优化器自动优化2个大的优化项是:1. 断言(谓词)下推(行过滤) 2. 列值裁剪(列过滤)DataFrame代码在被优化有,最终还是被转换成RDD去执行...原创 2022-03-14 09:37:15 · 827 阅读 · 0 评论 -
21 SparkSQL函数定义
1 SparkSQL 定义UDF函数2 SparkSQL 使用窗口函数3 总结SparkSQL支持UDF和UDAF定义,但在Python中,暂时只能定义UDFUDF定义支持2种方式, 1:使用SparkSession对象构建. 2: 使用functions包中提供的UDF API构建. 要注意, 方式1可用DSL和SQL风格, 方式2 仅可用于DSL风格SparkSQL支持窗口函数使用, 常用SQL中的窗口函数均支持, 如聚合窗口\排序窗口\NTILE分组窗口等原创 2022-03-13 10:46:23 · 2052 阅读 · 0 评论 -
21 DataFrame入门
1 DataFrame的组成2 DataFrame的代码构建 - 基于RDD方式13 DataFrame的入门操作4 词频统计案例练习5 电影评分数据分析案例6 SparkSQL Shuffle 分区数目7 SparkSQL 数据清洗API8 DataFrame数据写出9 DataFrame 通过JDBC读写数据库(MySQL示例)DataFrame 在结构层面上由StructField组成列描述,由StructType原创 2022-03-12 14:38:50 · 1942 阅读 · 0 评论 -
20 SparkSQL 概述
1 SparkSQL和Hive的异同2 SparkSQL的数据抽象3 SparkSQL数据抽象的发展4 DataFrame概述5 SparkSession对象6 SparkSQL HelloWorld 演示原创 2022-03-11 19:16:07 · 314 阅读 · 0 评论 -
19 SparkSQL-快速入门
1 什么是SparkSQL2 为什么学习SparkSQL3 SparkSQL的特点4 SparkSQL发展历史 - 前身 Shark框架5 总结原创 2022-03-09 12:38:14 · 69 阅读 · 0 评论 -
18 Spark 内核调度
1DAG2 DAG的宽窄依赖和阶段划分3 内存迭代计算4 Spark 并行度5 Spark的任务调度6 拓展 - Spark运行中的概念名词大全7 spark shuffle原创 2022-03-08 15:00:58 · 274 阅读 · 0 评论 -
17 共享变量
1 广播变量2累加器3 综合案例4 总结1. 广播变量解决了什么问题?分布式集合RDD和本地集合进行关联使用的时候, 降低内存占用以及减少网络IO传输, 提高性能.2. 累加器解决了什么问题?分布式代码执行中, 进行全局累加...原创 2022-02-19 12:22:04 · 197 阅读 · 0 评论 -
16 Spark案例练习
1 搜索引擎日志分析2 提交到集群运行3 总结1. 案例中使用的分词库是?jieba库2. 为什么要在全部的服务器安装jieba库?因为YARN是集群运行, Executor可以在所有服务器上执行, 所以每个服务器都需要有jieba库提供支撑3. 如何尽量提高任务计算的资源?计算CPU核心和内存量, 通过–executor-memory 指定executor内存, 通过–executor-cores 指定executor的核心数通过–num-executors 指定总exe原创 2022-02-19 11:49:50 · 711 阅读 · 0 评论 -
15 RDD的持久化
1 RDD 的数据是过程数据2 RDD 的缓存3 RDD 的CheckPoint1. Cache和Checkpoint区别Cache是轻量化保存RDD数据, 可存储在内存和硬盘, 是分散存储, 设计上数据是不安全的(保留RDD血缘关系)CheckPoint是重量级保存RDD数据, 是集中存储, 只能存储在硬盘(HDFS)上, 设计上是安全的(不保留RDD血缘关系)2. Cache 和 CheckPoint的性能对比?Cache性能更好, 因为是分散存储, 各个Execut原创 2022-02-18 09:49:53 · 635 阅读 · 0 评论 -
14 groupByKey和reduceByKey的区别
1 在功能上RDD总结1. RDD创建有哪几种方法?通过并行化集合的方式(本地集合转分布式集合)或者读取数据的方式创建(TextFile\WholeTextFile)2. RDD分区数如何查看?通过 getNumPartitions API 查看, 返回值Int3. Transformation 和 Action的区别?转换算子的返回值100%是RDD, 而Action算子的返回值100%不是RDD.转换算子是懒加载的, 只有遇到Action才会执行. Action就是转换算子处理链原创 2022-02-18 09:37:57 · 1018 阅读 · 0 评论 -
13 RDD编程 分区操作算子
1 mappartitions2 foreachpartition3 partitionby4 repartition5 coalesce6 mapvalues7 join原创 2022-02-17 13:25:54 · 237 阅读 · 0 评论 -
12 RDD基础编程 action算子
1 countbykey2 collect3 reduce4 fold5 first6 take7 top8 count9 take sample10 takeordered11 foreach12 saveAsTextFile13 注意点总结常用actio算子countbykeycollectreducefoldfirsttaketoptaketakeSamplettakeOrderforeachsaveAsTextfile原创 2022-02-17 13:11:47 · 66 阅读 · 0 评论 -
10 RDD 编程入门 transformation算子
1 程序执行入口 SparkContext对象2 RDD的创建3 RDD 算子4 常用Transformation算子4.1 map算子4.2 flatmap算子4.3 reducebykey算子4.4 groupby算子4.5 filter算子4.6 distinct算子4.7 union算子4.8 join算子4.9 intersection算子4.10 glom算子4.12 groupbykey算子4.13 sortby算子原创 2022-02-17 12:29:59 · 227 阅读 · 0 评论 -
9 RDD详解
1 为什么需要RDD?2 什么是RDD3 RDD的五大特性4 WordCount案例分析5 总结1 如何正确理解RDD?弹性分布式数据集, 分布式计算的实现载体(数据抽象)2 RDD五大特点分别是?原创 2022-02-16 17:13:32 · 429 阅读 · 0 评论 -
8 分布式代码执行分析
1 Spark集群角色回顾(YARN)2 分布式代码执行分析原创 2022-02-16 16:58:34 · 774 阅读 · 0 评论 -
7 本机开发环境搭建
1 本机PySpark环境配置2 PyCharm配置Python解释器3 应用入口:SparkContext4 WordCount代码实战5 代码结果解析6 从HDFS读取数据7 提交代码到集群执行8 总结1 Python语言开发Spark程序步骤?主要是获取SparkContext对象,基于SparkContext对象作为执行环境入口2 如何提交Spark应用?将程序代码上传到服务器上, 通过spark-submit客户端工具进行提交...原创 2022-02-15 10:50:11 · 386 阅读 · 0 评论 -
6 PySpark库
1 框架 VS 类库2 什么是PySpark3 Anaconda的安装4 PySpark安装5 总结1 PySpark是什么?和bin/pyspark 程序有何区别?PySpark是一个Python的类库, 提供Spark的操作APIbin/pyspark 是一个交互式的程序,可以提供交互式编程并执行Spark计算2 本此的Python运行环境由什么来提供?由Anaconda提供,并使用虚拟环境, 环境名称叫做: pyspark...原创 2022-02-15 10:27:51 · 457 阅读 · 0 评论 -
5 环境搭建-Spark on YARN
1 SparkOnYarn本质2 配置spark on yarn环境此部分直接参考<<spark部署文档.doc>> 即可3 部署模式DeployMode4 Spark On Yarn两种模式总结5 扩展阅读:两种模式详细流程5 总结1 SparkOnYarn本质?Master由ResourceManager代替Worker由NodeManager代替Driver可以运行在容器内(Cluster模式)或客户端进程中(Client模式)Ex原创 2022-02-15 10:23:16 · 383 阅读 · 0 评论 -
4 环境搭建-Standalone HA
1 StandAlone HA 运行原理2 基于Zookeeper实现HA3 测试运行5 总结1 StandAlone HA的原理基于Zookeeper做状态的维护, 开启多个Master进程, 一个作为活跃,其它的作为备份,当活跃进程宕机,备份Master进行接管.2 为什么需要Zookeeper?分布式进程是分布在多个服务器上的, 状态之间的同步需要协调,比如谁是master,谁是worker.谁成了master后要通知worker等, 这些需要中心化协调器Zookeepe原创 2022-02-14 20:05:21 · 295 阅读 · 0 评论 -
3 环境搭建-Standalone
1 Standalone 架构2 Standalone 环境安装操作3 测试4 Spark 应用架构5 总节1 StandAlone的原理?Master和Worker角色以独立进程的形式存在,并组成Spark运行时环境(集群)2 Spark角色在StandAlone中的分布?Master角色:Master进程, Worker角色:Worker进程, Driver角色和Executor角色:以线程运行在Worker中3 Standalone如何提交Spark原创 2022-02-14 19:44:16 · 303 阅读 · 0 评论 -
2 Spark环境搭建-Local
1 基本原理2 搭建3 测试 - 基于bin/pyspark4 基于bin/spark-shell测试 - 了解(此项需Scala语言操作)5 总结1 Local模式的运行原理?Local模式就是以一个独立进程配合其内部线程来提供完成Spark运行时环境. Local模式可以通过spark-shell/pyspark/spark-submit等来开启2 bin/pyspark是什么程序?是一个交互式的解释器执行环境,环境启动后就得到了一个Local Spark环境,可以运行P原创 2022-02-14 19:10:12 · 233 阅读 · 0 评论 -
1 Spark基础入门
1 Spark是什么2 spark风雨十年3 扩展资料4 Spark四大特点5 Spark 框架模块1.6 Spark的运行模式1.7 Spark的架构角色8 总结1 Spark解决什么问题?海量数据的计算,可以进行离线批处理以及实时流计算2 Spark有哪些模块?核心SparkCore、SQL计算(SparkSQL)、流计算(SparkStreaming)、图计算(GraphX)、机器学习(MLlib)3 Spark特点有哪些?速度快、使用简单原创 2022-02-14 18:09:13 · 404 阅读 · 0 评论