
大数据
文章平均质量分 79
cclucc
吃吃喝喝人生辽阔
展开
-
spark源码分析之shufflemanager
1、shufflemanager的实现类:sortshufflemanagerSpark 0.8及以前 Hash Based Shuffle在Shuffle Write过程按照Hash的方式重组Partition的数据,不进行排序。每个map端的任务为每个reduce端的Task生成一个文件,通常会产生大量的文件(即对应为M*R个中间文件,其中M表示map端的Task个数,R表示reduce端的T...原创 2018-04-12 11:20:17 · 261 阅读 · 0 评论 -
spark源码分析之ExternalSorter
在SortShuffleWriter中调用ExternalSorter的两个方法insertAll和writePartitionedFile1】、blockManager2】、diskBlockManager3】、serializerManager4】、fileBufferSizespark.shuffle.file.buffer=32k5】、serializerBatchSize spark.s...原创 2018-04-12 11:27:11 · 660 阅读 · 0 评论 -
spark源码分析之RDD
Spark 的五大核心要素包括:partitionpartitionercompute funcdependencypreferredLocationRDD每次通过Transformation(map、flatMap、reduceByKey等等)进行转换后都会得到一个新的RDD,本篇文章以ShuffledRDD和JdbcRDD、HadoopRDD为例子,下面来介绍一下:1、partition(1)...原创 2018-04-25 18:16:25 · 268 阅读 · 0 评论 -
为什么 Kafka 那么快
一 .生产者生产数据1、顺序写入2、Memory Mapped Files(Kafka的数据并不是实时的写入硬盘,它充分利用了现代操作系统分页存储来利用内存提高I/O效率)它的工作原理是直接利用操作系统的Page来实现文件到物理内存的直接映射。完成映射之后你对物理内存的操作会被同步到硬盘上(操作系统在适当的时候)。写到mmap中的数据并没有被真正的写到硬盘,操作系统会在程序主动调用fl...原创 2018-09-21 18:18:20 · 341 阅读 · 0 评论 -
kafka学习笔记2
1、kafka分布式的情况下如何保证消息的顺序性kafka并不适用对数据时序性要求严格的场景Kafka的做法是提供消息队列,让生产者单往队列的末尾添加数据,让多个消费者从队列里面依次读取数据然后自行处理【生产】kafka的分布式单位是partition。同一个partition内的数据可以保证时序。不同partition之间无法保证消息的顺序性。可以设置producer生产messag...原创 2018-09-21 18:29:32 · 661 阅读 · 0 评论 -
spark常见问题分析
分析spark常见的问题不外乎oom:我们首先看一下Spark 的内存模型:Spark在一个Executor中的内存分为三块,一块是execution内存,一块是storage内存,一块是other内存。execution内存是执行内存,文档中说join,aggregate都在这部分内存中执行,shuffle的数据也会先缓存在这个内存中,满了再写入磁盘,能够减少IO。其实map...原创 2018-09-21 18:48:57 · 1368 阅读 · 0 评论