自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (2)
  • 收藏
  • 关注

原创 SQL相关知识

dataframe 和 RDD 的比较case class Person(name:String,age:Int) val rdd = sc.textFile("hdfs://hadoop1:9000/examples/src/main/resources/people.txt").map(line => line.split(",")).map(p => Person(p(0),p(1).tri

2017-12-18 21:52:50 227

原创 RDD 转化为 DataFrame

DataFrame:读取和执行查询都会返回DataFrame,是一个由ROW 对象组成的RDD,附带包括每列数据类型的结构信息。ROW对象是支队基本数据类型的数组的封装。 ROW对象:表示DataFrame中的记录。本质是一个定长的字段数组。Spark将RDD转换成DataFrame的两种方式一、通过反射指定结构类型 通过反射的方式来推断RDD元素中的元数据。因为RDD本身一条数据本身是没有元数

2017-12-17 22:39:56 805

转载 Spark 内核的总结

专用词汇 Transformations操作 Action操作

2017-12-14 17:48:17 158

原创 Spark 调优总结

开发调优:持久化、序列化 资源调优: 数据本地化 shuffle调优 数据倾斜调优 JVM调优

2017-12-14 16:44:37 275

原创 Spark JVM调优 --GC

Spark发生垃圾回收的原理: GC:garbage collector 垃圾回收executor是JVM中的服务进程。Spark任务运行的时候就是不断的在executor中创建对象。若JVM存不下对象了,就会触发GC(把不需要的对象清除)。 若内存中数据量较大,则可能会很频繁的发生GC,而GC本身很耗费性能,对Spark作业性能影响很大。 同时若数据量很大,那么GC一个涉及的数据量

2017-12-14 14:42:41 1306

原创 资源调优

num-executors 说明:该参数用于设置Spark作业总共要用多少Executor进程来执行。Driver在向YARN集群管理器申请资源时,YARN集群管理器会尽可能按照设置来在集群的各个工作节点上启动相应数量的Executor进程。此参数非常重要,若不设置,默认只会启动少量的Executor进程,此时会非常慢 建议:每个Spark作业的运行一般设置50~100个左右的Executor进

2017-12-14 13:55:53 224

原创 Spark资源模型

Spark作业运行图: 1. 使用spark-submit提交一个spark应用,这个应用/作业会启动一个对应的driver进程,这个driver会根据提交模式的不同,可能在本地启动(client),也可能在集群中某个工作节点(cluster)上启动。 driver服务进程启动,会根据我们设置的参数,占用一定量的cpu和内存。 2. driver启动完成后做的第一件事是像集群的资源管理器

2017-12-13 23:19:08 343

原创 shuffle发展概述和调优

Spark中的shuffle发展概述和调优

2017-12-13 22:39:07 354

原创 数据倾斜

数据倾斜发生时的现象: 1.绝大多数task执行得都非常快,但个别task执行的极慢。 2.原本能正常执行的Spark作业,某天突然爆出OOM(内存溢出)异常。观察异常栈,是我们写的业务代码造成的数据倾斜发生的原理 在进行shuffle的时候,必须将各个节点上海相同的Key拉取到某个节点上的一个task来进行处理,比如按照key进行聚合或者join操作。如果某个key对应的数据量特别大的话,会

2017-12-10 19:58:14 2316

原创 Spark的数据本地化

数据本地化对于Spark Job性能有着巨大影响。如果数据以及要计算它的代码是在一起的,那么性能必然会很高,若不在一起,则其中之一必须移动到另外一方机器上,通常移动代码的速度会快得多。Spark基于这个数据本地化的原则来构建task调度算法的。 数据本地化:数据离计算它的代码有多近。基于数据距离代码的距离,有几种数据本地化级别: 1. PROCESS_LOCAL :数据和计算它的代码在同一个JV

2017-12-10 16:23:03 1086

原创 Spark调优的策略

1. RDD的持久化 cahce() persist() checkpoint() 2. 避免创建重复的RDD 3.尽可能复用同一个RDD 类似于多个RDD的数据有重叠或者包含的情况,应该尽量复用一个RDD,以尽可能减少RDD的数量,从而减少算子计算次数 4.尽量避免使用shuffle类算子 spark运行过程中,最消耗性能的地方就是shuff

2017-12-09 16:43:35 3505

JAVA实现的Spark的解决数据倾斜的单词技术的计数

用JAVA实现的基于Spark的解决数据倾斜的单词技术的计数

2017-12-11

java实现的spark的wordcount单词技术程序

采用java实现的spark的wordcount单词技术的程序.可以跑通。

2017-12-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除