摘要: Spark计算速度远胜于Hadoop的原因之一就在于中间结果是缓存在内存而不是直接写入到disk,本文尝试分析Spark中存储子系统的构成,并以数据写入和数据读取为例,讲述清楚存储子系统中各部件的交互关系。 阅读全文
posted @ 2014-05-08 13:37 徽沪一郎 阅读(5956) 评论(2) 推荐(0) 编辑
摘要: 在流数据的处理过程中,为了保证处理结果的可信度(不能多算,也不能漏算),需要做到对所有的输入数据有且仅有一次处理。在Spark Streaming的处理机制中,不能多算,比较容易理解。那么它又是如何作到即使数据处理结点被重启,在重启之后这些数据也会被再次处理呢? 阅读全文
posted @ 2014-05-02 19:05 徽沪一郎 阅读(5560) 评论(1) 推荐(0) 编辑
摘要: Spark Streaming能够对流数据进行近乎实时的速度进行数据处理。采用了不同于一般的流式数据处理模型,该模型使得Spark Streaming有非常高的处理速度,与storm相比拥有更高的吞吐能力。 本篇简要分析Spark Streaming的处理模型,Spark Streaming系统的初始化过程,以及当接收到外部数据时后续的处理步骤。 阅读全文
posted @ 2014-04-25 21:22 徽沪一郎 阅读(7627) 评论(0) 推荐(1) 编辑
摘要: 本篇主要阐述在TaskRunner中执行的task其业务逻辑是如何被调用到的,另外试图讲清楚运行着的task其输入的数据从哪获取,处理的结果返回到哪里,如何返回。 阅读全文
posted @ 2014-04-23 15:07 徽沪一郎 阅读(11592) 评论(0) 推荐(4) 编辑
摘要: 本文以wordCount为例,详细说明spark创建和运行job的过程,涉及的内容有spark运行环境的搭建,如何将spark以local cluster模式运行,同时大体勾勒出job在提交过程中的函数调用路径。 阅读全文
posted @ 2014-04-21 17:33 徽沪一郎 阅读(15384) 评论(1) 推荐(1) 编辑
摘要: 在对Spark的源码进行具体的走读之前,如果想要快速对Spark的有一个整体性的认识,阅读Matei Zaharia做的Spark论文是一个非常不错的选择。 在阅读该论文的基础之上,再结合Spark作者在2012 Developer Meetup上做的演讲Introduction to Spark Internals,那么对于Spark的内部实现会有一个比较大概的了解。 有了上述的两篇文章奠定基础之后,再来进行源码阅读,那么就会知道分析的重点及难点。 阅读全文
posted @ 2014-04-15 11:36 徽沪一郎 阅读(24432) 评论(6) 推荐(12) 编辑
摘要: Scala越来越流行, Spark也愈来愈红火, 对spark的代码进行走读也成了一个很普遍的行为。不巧的是,当前java社区中很流行的ide如eclipse,netbeans对scala的支持都不算太好。在这种情况下不得不想到编辑器之神emacs,利用emacs+ensime来打造scala编程环境。 本文讲述的步骤全部是在arch linux上,其它发行版的linux视具体情况变通。 阅读全文
posted @ 2014-04-11 16:49 徽沪一郎 阅读(7416) 评论(2) 推荐(0) 编辑
摘要: 简单介绍clojure的语法 阅读全文
posted @ 2014-04-10 21:29 徽沪一郎 阅读(1691) 评论(0) 推荐(0) 编辑
摘要: 由于近期手头的工作和数据库的选型相关,纠结于是否使用一款NoSQL数据库来替换已有的MySQL数据库。在这个过程中随着学习研究的深入,对于二者的异同有了一些初步的认识和想法,将这些想法暂时记录下来,权且作为进一步学习数据库领域知识的开端。 阅读全文
posted @ 2014-03-29 17:27 徽沪一郎 阅读(1646) 评论(0) 推荐(1) 编辑
摘要: 本文主要讲述如何利用hortonworks sanbox来搭建hadoop2的学习环境。Hortonworks sanbox集成了hadoop2及其上的一些常用工具如hive, pig等。 阅读全文
posted @ 2014-02-20 12:25 徽沪一郎 阅读(6716) 评论(1) 推荐(0) 编辑