SparkCore
ss
稳哥的哥
babe babe babe wowowowowowoow~!
寒江孤影、江湖故人
展开
-
SparkCore之RDD持久化
SparkCore之RDD持久化RDD的常见持久化方式有3种cache()将RDD持久化在内存中,底层是调用 /** * Persist this RDD with the default storage level (`MEMORY_ONLY`). */ def cache(): this.type = persist()persist()可以为RDD选择不同的持久化存储级别StorageLevels.MEMORY_ONLY等 /** * Set原创 2020-05-24 10:50:49 · 158 阅读 · 0 评论 -
Spark官网调优解析
SparkCore之-调优建议:大家在读文章的时候尽量先看看文字描述,这样的话可能对大佬们来说更容易理解一些,么么么哒么么么么么大!~由于大多数Spark计算都是基于内存的,Spark程序可能会受到集群中任何资源(Cpu、网络带宽、内存)的瓶颈。通常,如果内存足够那么瓶颈有可能是网络带宽,有时,我们可以通过一些调整:例如序列化存储RDD=>减少内存使用量,以下通过3个方面来介绍Spark调优:**数据序列化 **<减少内存消耗及IO消耗>**内存调优 **<防止OOM等,避原创 2020-05-19 00:07:14 · 323 阅读 · 0 评论 -
Spark之作业提交
Spark之作业提交Spark常见的集群管理器有:K8s 、Mesos、Yarn、StandAlone# 本地模式./bin/spark-submit \ --class org.apache.spark.examples.SparkPi \ --master local[8] \ /path/to/examples.jar \ 100# standalone集群-客户端模式./bin/spark-submit \ --class org.apache.spark.ex原创 2020-05-18 14:19:02 · 212 阅读 · 0 评论 -
SparkCore之共享变量(acc\broadcast var)
SparkCore之共享变量在Spark程序中,当一个函数随着算子的分布式计算被传递到远程的机器节点进行执行,为了减少内存占用和通信消耗,spark提供了2种共享变量:BroadCast VariableAccumulator1、BroadCast VariableBroadCast Variable通常是一个只读的封装变量那么为什么需要使用广播变量?1、假如一个变量value需要随着算子被分布到多个Executor节点去进行使用,那么默认的会将value进行序列化,在每个task的线程内原创 2020-05-18 12:54:48 · 387 阅读 · 0 评论 -
Spark之RDD的持久化
SparkCore之RDD的持久化持久化也是作为Spark程序的一个重要的优化手段官网参考地址Spark的最重要的功能特性之一就是持久化(persisting or caching),当你持久化一个RDD,每个节点都会存储RDD的任何分区在内存中计算的数据并且对这些数据进行reuse重用,这样可以使以后的操作更快,在spark中缓存时用于迭代和交互式使用的关键工具。持久化的方式spark的持久化的方式有2种:一、persist() 可以选择持久化的存储级别二、cache() 默认是持久化在内原创 2020-05-16 15:51:40 · 668 阅读 · 0 评论 -
SparkCore之shuffle
Spark之shuffle什么是shuffleSpark中的shuffle是指将不同的key重新进行分配的一个中间过程,首先Spark有3种类型的算子会产生shuffle:重新分区操作,例如:repartition&coalesceRDD的join操作, 例如:cogroup&joinbykey操作,例如:reduceByKey…为什么会产生shuffle,shuffle中具体发生了什么事,我们通过reduceByKey()算子进行分析首先我们写一段简单的代码://假如s原创 2020-05-15 21:19:15 · 187 阅读 · 2 评论 -
SPARK-CORE&RDD(概述)
SPARK-CORE&RDD(概述)前言RDD共享变量每个Spark应用都包含一个Driver程序运行在用户的主程序中,而且Spark应用可以通过一个Spark集群并行执行多个操作,Spark在数据层面提供了一个非常重要的抽象RDD(resilient distributed dataset)即弹性分布式数据集,RDD是一个能够并行执行,并切存在与不同节点上的elements的集合,RDD可以从Hadoop文件系统、scala集合等不同的数据源进行创建,主要创建方式有:sc.make原创 2020-05-15 15:22:23 · 219 阅读 · 0 评论