netty框架概述

摘要: 概述 最近在学习netty的相关知识,也在看netty的源码,光看不练假把式,所以也正好利用自己学习的机会写几篇netty的分析文章,主要还是一些源码解析的文章,一方面有输出会促使自己在看源码,学习原理的过程中更系统,更深入,同时也能加强记忆,巩固对知识的理解。 关于netty的简介和应用我就不做介 阅读全文
posted @ 2019-06-21 00:27 _朱葛 阅读(957) 评论(0) 推荐(0) 编辑

spark源码解析--Shuffle输出追踪者--MapOutputTracker

摘要: Shuffle输出追踪者 MapOutputTracker 这个组件作为shuffle的一个辅助组件,在整个shuffle模块中具有很重要的作用。我们在前面一系列的分析中,或多或少都会提到这个组件,比如在DAGScheduler提交一个stage时会将这个stage封装成一个任务集(TaskSet) 阅读全文
posted @ 2019-06-19 01:29 _朱葛 阅读(821) 评论(0) 推荐(0) 编辑

spark源码阅读--shuffle读过程源码分析

摘要: shuffle读过程源码分析 上一篇中,我们分析了shuffle在map阶段的写过程。简单回顾一下,主要是将ShuffleMapTask计算的结果数据在内存中按照分区和key进行排序,过程中由于内存限制会溢写出多个磁盘文件,最后会对所有的文件和内存中剩余的数据进行归并排序并溢写到一个文件中,同时会记 阅读全文
posted @ 2019-06-16 19:50 _朱葛 阅读(578) 评论(0) 推荐(1) 编辑

最长连续序列

摘要: leetcode地址: https://leetcode.com/problems/longest-consecutive-sequence/description/ 难度:hard 描述: Given an unsorted array of integers, find the length o 阅读全文
posted @ 2019-06-16 10:15 _朱葛 阅读(173) 评论(0) 推荐(0) 编辑

spark源码阅读--shuffle过程分析

摘要: ShuffleManager(一) 本篇,我们来看一下spark内核中另一个重要的模块,Shuffle管理器ShuffleManager。shuffle可以说是分布式计算中最重要的一个概念了,数据的join,聚合去重等操作都需要这个步骤。另一方面,spark之所以比mapReduce的性能高其中一个 阅读全文
posted @ 2019-06-15 00:43 _朱葛 阅读(834) 评论(0) 推荐(0) 编辑

spark内存管理器--MemoryManager源码解析

摘要: MemoryManager内存管理器 内存管理器可以说是spark内核中最重要的基础模块之一,shuffle时的排序,rdd缓存,展开内存,广播变量,Task运行结果的存储等等,凡是需要使用内存的地方都需要向内存管理器定额申请。我认为内存管理器的主要作用是为了尽可能减小内存溢出的同时提高内存利用率。 阅读全文
posted @ 2019-06-13 01:35 _朱葛 阅读(618) 评论(0) 推荐(0) 编辑

spark存储管理之磁盘存储--DiskStore

摘要: DiskStore 接着上一篇,本篇,我们分析一下实现磁盘存储的功能类DiskStore,这个类相对简单。在正式展开之前,我觉得有必要大概分析一下BlockManager的背景,或者说它的运行环境,运行的作用范围。Blockmanager这个类其实在运行时的每个节点都会有一个实例(包括driver和 阅读全文
posted @ 2019-06-12 00:59 _朱葛 阅读(744) 评论(0) 推荐(0) 编辑

spark存储模块之内存存储--MemeoryStore

摘要: MemeoryStore 上一节,我们对BlockManager的主要写入方法做了一个整理,知道了BlockMananger的主要写入逻辑,以及对于块信息的管理。但是,由于spark的整个存储模块是在是很庞大,而且很多细节的逻辑错综复杂,如果对于每个细节都刨根问底,一来精力有限,二来感觉也没有太大的 阅读全文
posted @ 2019-06-11 23:02 _朱葛 阅读(1184) 评论(0) 推荐(1) 编辑

spark的存储系统--BlockManager源码分析

摘要: spark的存储系统 BlockManager源码分析 根据之前的一系列分析,我们对spark作业从创建到调度分发,到执行,最后结果回传driver的过程有了一个大概的了解。但是在分析源码的过程中也留下了大量的问题,最主要的就是涉及到的spark中重要的几个基础模块,我们对这些基础设施的内部细节并不 阅读全文
posted @ 2019-06-10 00:26 _朱葛 阅读(830) 评论(0) 推荐(1) 编辑

根据有序链表构造平衡的二叉查找树

摘要: leetcode地址: https://leetcode.com/problems/convert-sorted-list-to-binary-search-tree/description/ 难度:中等 描述: Given a singly linked list where elements a 阅读全文
posted @ 2019-06-07 22:02 _朱葛 阅读(446) 评论(0) 推荐(0) 编辑