摘要: mr的shuffle mapShuffle 数据存到hdfs中是以块进行存储的,每一个块对应一个分片,maptask就是从分片中获取数据的 在某个节点上启动了map Task,map Task读取是通过k-v来读取的,读取的数据会放到环形缓存区,这样做的目的是为了防止IO的访问次数,然后环形缓存区的 阅读全文
posted @ 2018-06-14 23:41 大葱拌豆腐 阅读(5785) 评论(0) 推荐(0)
摘要: 1.诊断内存的消耗 在Spark应用程序中,内存都消耗在哪了? 1.每个Java对象都有一个包含该对象元数据的对象头,其大小是16个Byte。由于在写代码时候,可能会出现这种情况:对象头比对象本身占有的字节数更多,比如对象只有一个int的域。一般这样设计是不合理的,造成对象的“浪费”,在实际开发中应 阅读全文
posted @ 2018-06-14 22:21 大葱拌豆腐 阅读(443) 评论(0) 推荐(0)
摘要: Spark 的shuffle 服务是spark的核心,本文介绍了非ExternalShuffleClient的方式,看BlockService的整个架构。ShuffleClient是整个框架的基础,有init方法和fetchBlock两个方法。 BlockFetchingListener接口,onB 阅读全文
posted @ 2018-06-14 21:47 大葱拌豆腐 阅读(1782) 评论(0) 推荐(0)
摘要: 对性能消耗的原理详解 在分布式系统中,数据分布在不同的节点上,每一个节点计算一部份数据,如果不对各个节点上独立的部份进行汇聚的话,我们计算不到最终的结果。我们需要利用分布式来发挥Spark本身并行计算的能力,而后续又需要计算各节点上最终的结果,所以需要把数据汇聚集中,这就会导致Shuffle,这也是 阅读全文
posted @ 2018-06-14 21:28 大葱拌豆腐 阅读(693) 评论(0) 推荐(0)
摘要: 一、概述 将公司集群升级到Yarn已经有一段时间,自己也对Yarn也研究了一段时间,现在开始记录一下自己在研究Yarn过程中的一些笔记。这篇blog主要主要从大体上说说Yarn的基本架构以及其各个组件的功能。另外,主要将Yarn和MRv1做详细对比,包括Yarn相对于MRv1的各种改进。最后,大概说 阅读全文
posted @ 2018-06-14 18:12 大葱拌豆腐 阅读(4858) 评论(1) 推荐(2)
摘要: Hadoop的MapReduce的Map Task和Reduce Task都是进程级别的;而Spark Task则是基于线程模型的。 多进程模型和多线程模型 所谓的多进程模型和多线程模型,指的是同一个节点上多个任务的运行模式。无论是MapReduce和Spark,整体上看都是多进程的:MapRedu 阅读全文
posted @ 2018-06-14 17:20 大葱拌豆腐 阅读(2072) 评论(0) 推荐(0)
摘要: 本文主要简述spark checkpoint机制,快速把握checkpoint机制的来龙去脉,至于源码可以参考我的下一篇文章。 1、Spark core的checkpoint 1)为什么checkpoint? 分布式计算中难免因为网络,存储等原因出现计算失败的情况,RDD中的lineage信息常用来 阅读全文
posted @ 2018-06-14 16:50 大葱拌豆腐 阅读(1557) 评论(0) 推荐(0)
摘要: 简介 HDFS(Hadoop Distributed File System )Hadoop分布式文件系统。是根据google发表的论文翻版的。论文为GFS(Google File System)Google 文件系统。 HDFS有很多特点: ① 保存多个副本,且提供容错机制,副本丢失或宕机自动恢复 阅读全文
posted @ 2018-06-14 14:49 大葱拌豆腐 阅读(224) 评论(0) 推荐(0)
摘要: HDFS的工作机制 概述 HDFS集群分为两大角色:NameNode、DataNode NameNode负责管理整个文件系统的元数据 DataNode 负责管理用户的文件数据块 文件会按照固定的大小(blocksize)切成若干块后分布式存储在若干台datanode上 每一个文件块可以有多个副本,并 阅读全文
posted @ 2018-06-14 14:42 大葱拌豆腐 阅读(409) 评论(0) 推荐(0)