<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Bbbbbbbbbbbbig data~]]></title><description><![CDATA[志存高远 脚踏实地]]></description><link>https://blog.youkuaiyun.com/bigbigdata</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; bigbigdata]]></copyright><item><title><![CDATA[Spark Application调试心得]]></title><link>https://blog.youkuaiyun.com/bigbigdata/article/details/48789191</link><guid>https://blog.youkuaiyun.com/bigbigdata/article/details/48789191</guid><author>bigbigdata</author><pubDate>Mon, 28 Sep 2015 19:57:41 +0800</pubDate><description><![CDATA[能用local模式，千万不要用分布式模式~]]></description><category></category></item><item><title><![CDATA[协同过滤]]></title><link>https://blog.youkuaiyun.com/bigbigdata/article/details/48706425</link><guid>https://blog.youkuaiyun.com/bigbigdata/article/details/48706425</guid><author>bigbigdata</author><pubDate>Thu, 24 Sep 2015 09:09:18 +0800</pubDate><description><![CDATA[文章内容摘自《推荐系统实践》
实现个性化推荐的最理想情况是用户能在注册的时候主动告诉我们他喜欢什么，但这种方法有3个缺点：
首先，现在的自然语言理解技术很难理解用户用来描述兴趣的自然语言
其次，用户的兴趣是不断变化的，但用户不会不停地更新兴趣描述
最后，很多用户并不知道自己喜欢什么，或者很难用语言描述自己喜欢什么
基于用户行为分析的推荐算法是个性化推荐系统的重要算法，学术界一般将这种类型的算法成为协]]></description><category></category></item><item><title><![CDATA[[spark源码剖析]RDD相关源码阅读笔记]]></title><link>https://blog.youkuaiyun.com/bigbigdata/article/details/48412199</link><guid>https://blog.youkuaiyun.com/bigbigdata/article/details/48412199</guid><author>bigbigdata</author><pubDate>Sun, 13 Sep 2015 07:23:31 +0800</pubDate><description><![CDATA[RDD相关源码阅读笔记
  最好的源码阅读方法就是调试，没有之一
之前其实有阅读过RDD相关的源码，最近学习过程中发现在之前原本阅读过的模块中有一些『关节』并没有打通，所以想通过调试的方式来更细致得学习源码。 
本文为编写测试用例并调试RDD相关模块的笔记，并没有列出具体的调试过程，仅列出结论以做备忘，特别是那些比较容易忽略或者说是其他blog或者书本中比较少提到的。RDD重要成员及方法依赖RDD共]]></description><category></category></item><item><title><![CDATA[[Spark源码剖析] Task的调度与执行源码剖析]]></title><link>https://blog.youkuaiyun.com/bigbigdata/article/details/47801483</link><guid>https://blog.youkuaiyun.com/bigbigdata/article/details/47801483</guid><author>bigbigdata</author><pubDate>Thu, 20 Aug 2015 06:11:46 +0800</pubDate><description><![CDATA[本文基于Spark 1.3.1，Standalone模式
一个Spark Application分为stage级别和task级别的调度，stage级别的调度已经用DAGScheduler划分stage和DAGScheduler提交stage两片文章进行源码层面的说明，本文将从源码层面剖析task是如何被调度和执行的。函数调用流程先给出task调度的总体函数调用流程，并说明每个关键函数是干嘛的。这样一]]></description><category></category></item><item><title><![CDATA[[Spark源码剖析] DAGScheduler提交stage]]></title><link>https://blog.youkuaiyun.com/bigbigdata/article/details/47310657</link><guid>https://blog.youkuaiyun.com/bigbigdata/article/details/47310657</guid><author>bigbigdata</author><pubDate>Thu, 06 Aug 2015 08:15:32 +0800</pubDate><description><![CDATA[DAGScheduler通过调用submitStage来提交stage，实现如下：  private def submitStage(stage: Stage) {
    val jobId = activeJobForStage(stage)
    if (jobId.isDefined) {
      logDebug("submitStage(" + stage + ")")]]></description><category></category></item><item><title><![CDATA[[Spark源码剖析] DAGScheduler划分stage]]></title><link>https://blog.youkuaiyun.com/bigbigdata/article/details/47293263</link><guid>https://blog.youkuaiyun.com/bigbigdata/article/details/47293263</guid><author>bigbigdata</author><pubDate>Wed, 05 Aug 2015 10:36:29 +0800</pubDate><description><![CDATA[本文基于Spark 1.3.1
先上一些stage相关的知识点：
DAGScheduler将Job分解成具有前后依赖关系的多个stage
DAGScheduler是根据ShuffleDependency划分stage的
stage分为ShuffleMapStage和ResultStage；一个Job中包含一个ResultStage及多个ShuffleMapStage
一个stage包含多个tasks]]></description><category></category></item><item><title><![CDATA[举例说明Spark RDD的分区、依赖]]></title><link>https://blog.youkuaiyun.com/bigbigdata/article/details/47292119</link><guid>https://blog.youkuaiyun.com/bigbigdata/article/details/47292119</guid><author>bigbigdata</author><pubDate>Wed, 05 Aug 2015 09:45:12 +0800</pubDate><description><![CDATA[例子如下:scala> val textFileRDD = sc.textFile("/Users/zhuweibin/Downloads/hive_04053f79f32b414a9cf5ab0d4a3c9daf.txt")
15/08/03 07:00:08 INFO MemoryStore: ensureFreeSpace(57160) called with curMem=0, maxMem]]></description><category></category></item></channel></rss>