摘要: Spark Streaming学习笔记 同Spark SQL一样,Spark Streaming学习也是放在了 "github" "https://github.com/yangtong123/RoadOfStudySpark/blob/master/src/com/spark/streaming/ 阅读全文
posted @ 2017-07-11 15:48 杨同不爱吃洋葱 阅读(212) 评论(0) 推荐(0) 编辑
摘要: Spark SQL学习笔记 Spark SQL学习笔记设计到很多代码操作,所以就放在 "github" , "https://github.com/yangtong123/RoadOfStudySpark/blob/master/src/com/spark/sql/Readme.md" 其中包括了对 阅读全文
posted @ 2017-07-10 15:34 杨同不爱吃洋葱 阅读(199) 评论(0) 推荐(0) 编辑
摘要: Spark Shuffle分析 目录 "Shuffle简介" "Shuffle写操作" "Shuffle读操作" Shuffle简介 在Hadoop中的MapReduce框架中,Shuffle是连接Map和Reduce的桥梁,Map的输出到Reduce中必须经过Shuffle这个环节。由于Shuff 阅读全文
posted @ 2017-07-10 14:55 杨同不爱吃洋葱 阅读(587) 评论(0) 推荐(0) 编辑
摘要: Spark应用程序之间调度算法 在Standalone模式下,Master提供里资源管理调度功能。在调度过程中,Master先启动等待列表中应用程序的Driver,这个Driver尽可能分散在集群的Worker节点上,然后根据集群的内存和CPU使用情况,对等待运行的应用程序进行资源分配。默认分配规则 阅读全文
posted @ 2017-07-09 13:58 杨同不爱吃洋葱 阅读(1313) 评论(0) 推荐(0) 编辑
摘要: 作业执行源码分析 当我们的代码执行到了action(行动)操作之后就会触发作业运行。在Spark调度中最重要的是DAGScheduler和TaskScheduler两个调度器,其中,DAGScheduler负责任务的逻辑调度, 将作业拆分为不同阶段的具有依赖关系的任务集。TaskScheduler则 阅读全文
posted @ 2017-07-07 15:54 杨同不爱吃洋葱 阅读(3513) 评论(0) 推荐(0) 编辑
摘要: Spark消息通信 Spark启动消息通信 Spark启动过程中主要是进行Master和Worker之间的通信,其消息发送关系如下,首先由worker节点向Master发送注册消息,然后Master处理完毕后,返回注册成功消息或失败消息。 其详细过程如下: (1) 当Master启动后,随之启动各W 阅读全文
posted @ 2017-07-06 13:23 杨同不爱吃洋葱 阅读(1849) 评论(0) 推荐(0) 编辑
摘要: SparkContext源码分析 在任何Spark程序中,必须要创建一个SparkContext,在SparkContext中,最主要的就是创建了TaskScheduler和DAGScheduler,以及SparkUI 图解如下(其中的SparkDeploySchedulerBackend是1.0的 阅读全文
posted @ 2017-07-05 10:00 杨同不爱吃洋葱 阅读(390) 评论(0) 推荐(0) 编辑
摘要: 堆排序 堆排序 对于非递归的堆排序主要有两个步骤: (一)构建大/小根堆 (二)对于构建好的堆,每次取第一个元素(也就是最大或者最小的那个元素)和最后一个元素交换,并把它移除堆的结构,这样,就必须重新维护剩下的树,使它重新变成一个大/小根堆,重复这个步骤,直到堆中的元素为0。 代码 代码 结果 结果 阅读全文
posted @ 2017-05-27 16:40 杨同不爱吃洋葱 阅读(1018) 评论(0) 推荐(0) 编辑
摘要: 直接插入排序 直接插入排序 直接插入排序就是每步将一个待排序的记录按其关键字的大小插到前面已经排序的序列中的适当位置,直到全部记录插入完毕为止。比较简单就直接上代码了。 代码 代码 二叉查找插入排序 二叉查找插入排序 又之前的代码可以看出,直接插入排序的时间复杂度为O(n2),而且还可以看出,每次有 阅读全文
posted @ 2017-05-25 22:26 杨同不爱吃洋葱 阅读(440) 评论(0) 推荐(0) 编辑
摘要: 题目 题目 给定一个二叉树的头节点head,已知其中所有节点的值都不一样,找到含有节点最多的搜索二叉子树,并返回这个子树的头节点。 例如, 最大搜索子树如右图 解析 解析 首先解释一下什么是最大搜索子树,就是二叉搜索树,任意节点的值必定大于左子树的最大值,小于右子树的最小值,且左右子树都是二叉搜索树 阅读全文
posted @ 2017-04-10 22:02 杨同不爱吃洋葱 阅读(2013) 评论(0) 推荐(0) 编辑