<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[cclucc的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/cclucc</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; cclucc]]></copyright><item><title><![CDATA[spark常见问题分析]]></title><link>https://blog.youkuaiyun.com/cclucc/article/details/82805784</link><guid>https://blog.youkuaiyun.com/cclucc/article/details/82805784</guid><author>cclucc</author><pubDate>Fri, 21 Sep 2018 18:48:57 +0800</pubDate><description><![CDATA[分析

spark常见的问题不外乎oom：

我们首先看一下Spark 的内存模型：


Spark在一个Executor中的内存分为三块，一块是execution内存，一块是storage内存，一块是other内存。


execution内存是执行内存，文档中说join，aggregate都在这部分内存中执行，shuffle的数据也会先缓存在这个内存中，满了再写入磁盘，能够减少IO。其实map...]]></description><category></category></item><item><title><![CDATA[kafka监控]]></title><link>https://blog.youkuaiyun.com/cclucc/article/details/82805656</link><guid>https://blog.youkuaiyun.com/cclucc/article/details/82805656</guid><author>cclucc</author><pubDate>Fri, 21 Sep 2018 18:34:04 +0800</pubDate><description><![CDATA[编辑文章

监控策略

1、Kafka总体监控

leader 选举频率：kafka.controller:type=ControllerStats,name=LeaderElectionRateAndTimeMs

2、Kafka Broker监控

kafka集群中Broker列表,broker运行状况,包括node下线，活跃数量
Broker是否提供服务
失败的生产消息请求数量：阈值？
失败...]]></description><category></category></item><item><title><![CDATA[kafka学习笔记2]]></title><link>https://blog.youkuaiyun.com/cclucc/article/details/82805598</link><guid>https://blog.youkuaiyun.com/cclucc/article/details/82805598</guid><author>cclucc</author><pubDate>Fri, 21 Sep 2018 18:29:32 +0800</pubDate><description><![CDATA[1、kafka分布式的情况下如何保证消息的顺序性

kafka并不适用对数据时序性要求严格的场景

Kafka的做法是提供消息队列，让生产者单往队列的末尾添加数据，让多个消费者从队列里面依次读取数据然后自行处理

【生产】kafka的分布式单位是partition。同一个partition内的数据可以保证时序。不同partition之间无法保证消息的顺序性。可以设置producer生产messag...]]></description><category></category></item><item><title><![CDATA[kafka学习笔记1]]></title><link>https://blog.youkuaiyun.com/cclucc/article/details/82805587</link><guid>https://blog.youkuaiyun.com/cclucc/article/details/82805587</guid><author>cclucc</author><pubDate>Fri, 21 Sep 2018 18:28:22 +0800</pubDate><description><![CDATA[下面以一个Kafka集群中4个Broker举例，创建1个topic包含4个Partition，2 Replication；数据Producer流动如图所示：



clipboard (2).png

当集群中新增2节点，Partition增加到6个时分布情况如下：



clipboard (3).png

Producer在发布消息到某个Partition时，先通过ZooKeeper找到该Pa...]]></description><category></category></item><item><title><![CDATA[为什么 Kafka 那么快]]></title><link>https://blog.youkuaiyun.com/cclucc/article/details/82805498</link><guid>https://blog.youkuaiyun.com/cclucc/article/details/82805498</guid><author>cclucc</author><pubDate>Fri, 21 Sep 2018 18:18:20 +0800</pubDate><description><![CDATA[一 .生产者生产数据

1、顺序写入

2、Memory Mapped Files（Kafka的数据并不是实时的写入硬盘，它充分利用了现代操作系统分页存储来利用内存提高I/O效率）

它的工作原理是直接利用操作系统的Page来实现文件到物理内存的直接映射。完成映射之后你对物理内存的操作会被同步到硬盘上（操作系统在适当的时候）。写到mmap中的数据并没有被真正的写到硬盘，操作系统会在程序主动调用fl...]]></description><category></category></item><item><title><![CDATA[spark源码分析之RDD]]></title><link>https://blog.youkuaiyun.com/cclucc/article/details/80077572</link><guid>https://blog.youkuaiyun.com/cclucc/article/details/80077572</guid><author>cclucc</author><pubDate>Wed, 25 Apr 2018 18:16:25 +0800</pubDate><description><![CDATA[Spark 的五大核心要素包括：partitionpartitionercompute funcdependencypreferredLocationRDD每次通过Transformation（map、flatMap、reduceByKey等等）进行转换后都会得到一个新的RDD，本篇文章以ShuffledRDD和JdbcRDD、HadoopRDD为例子，下面来介绍一下：1、partition（1）...]]></description><category></category></item><item><title><![CDATA[spark源码分析之ExternalSorter]]></title><link>https://blog.youkuaiyun.com/cclucc/article/details/79910996</link><guid>https://blog.youkuaiyun.com/cclucc/article/details/79910996</guid><author>cclucc</author><pubDate>Thu, 12 Apr 2018 11:27:11 +0800</pubDate><description><![CDATA[在SortShuffleWriter中调用ExternalSorter的两个方法insertAll和writePartitionedFile1】、blockManager2】、diskBlockManager3】、serializerManager4】、fileBufferSizespark.shuffle.file.buffer=32k5】、serializerBatchSize spark.s...]]></description><category></category></item><item><title><![CDATA[spark源码分析之shufflemanager]]></title><link>https://blog.youkuaiyun.com/cclucc/article/details/79910986</link><guid>https://blog.youkuaiyun.com/cclucc/article/details/79910986</guid><author>cclucc</author><pubDate>Thu, 12 Apr 2018 11:20:17 +0800</pubDate><description><![CDATA[1、shufflemanager的实现类：sortshufflemanagerSpark 0.8及以前 Hash Based Shuffle在Shuffle Write过程按照Hash的方式重组Partition的数据，不进行排序。每个map端的任务为每个reduce端的Task生成一个文件，通常会产生大量的文件（即对应为M*R个中间文件，其中M表示map端的Task个数，R表示reduce端的T...]]></description><category></category></item></channel></rss>