摘要:欢迎转载,转载请注明出处,徽沪一郎。概要之所以对spark shell的内部实现产生兴趣全部缘于好奇代码的编译加载过程,scala是需要编译才能执行的语言,但提供的scala repl可以实现代码的实时交互式执行,这是为什么呢?既然scala已经提供了repl,为什么spark还要自己单独搞一套sp...
阅读全文
摘要:欢迎转载,转载请注明出处,徽沪一郎。概要本文就standalone部署方式下的容错性问题做比较细致的分析,主要回答standalone部署方式下的包含哪些主要节点,当某一类节点出现问题时,系统是如何处理的。Standalone部署的节点组成介绍Spark的资料中对于RDD这个概念涉及的比较多,但对于...
阅读全文
摘要:欢迎转载,转载请注明出处,徽沪一郎。概要图的并行化处理一直是一个非常热门的话题,这里头的重点有两个,一是如何将图的算法并行化,二是找到一个合适的并行化处理框架。Spark作为一个非常优秀的并行处理框架,将一些并行化的算法移到其上面就成了一个很自然的事情。Graphx是一些图的常用算法在Spark上的...
阅读全文
摘要:欢迎转载,转载请注明出处,徽沪一郎概要在新近发布的spark 1.0中新加了sql的模块,更为引人注意的是对hive中的hiveql也提供了良好的支持,作为一个源码分析控,了解一下spark是如何完成对hql的支持是一件非常有趣的事情。Hive简介Hive的由来以下部分摘自Hadoop defini...
阅读全文
摘要:欢迎转载,转载请注明出处,徽沪一郎。楔子Hive是基于Hadoop的开源数据仓库工具,提供了类似于SQL的HiveQL语言,使得上层的数据分析人员不用知道太多MapReduce的知识就能对存储于Hdfs中的海量数据进行分析。由于这一特性而收到广泛的欢迎。Hive的整体框架中有一个重要的模块是执行模块...
阅读全文
摘要:欢迎转载,转载请注明出处,徽沪一郎。概要在即将发布的spark 1.0中有一个新增的功能,即对sql的支持,也就是说可以用sql来对数据进行查询,这对于DBA来说无疑是一大福音,因为以前的知识继续生效,而无须去学什么scala或其它script.一般来说任意一个sql子系统都需要有parser,op...
阅读全文
摘要:y欢迎转载,转载请注明出处,徽沪一郎。概要“spark已经比较头痛了,还要将其运行在yarn上,yarn是什么,我一点概念都没有哎,再怎么办啊。不要跟我讲什么原理了,能不能直接告诉我怎么将spark在yarn上面跑起来,I'm a dummy, just told me how to do it.”...
阅读全文
摘要:欢迎转载,转载请注明出处,徽沪一郎。概要本来源码编译没有什么可说的,对于java项目来说,只要会点maven或ant的简单命令,依葫芦画瓢,一下子就ok了。但到了Spark上面,事情似乎不这么简单,按照spark officical document上的来做,总会出现这样或那样的编译错误,让人懊恼不...
阅读全文
摘要:欢迎转载,转载请注明出处,徽沪一郎。概要Hadoop2中的Yarn是一个分布式计算资源的管理平台,由于其有极好的模型抽象,非常有可能成为分布式计算资源管理的事实标准。其主要职责将是分布式计算集群的管理,集群中计算资源的管理与分配。Yarn为应用程序开发提供了比较好的实现标准,Spark支持Yarn部...
阅读全文
摘要:欢迎转载,转载请注明出处,徽沪一郎。楔子在Spark源码走读系列之2中曾经提到Spark能以Standalone的方式来运行cluster,但没有对Application的提交与具体运行流程做详细的分析,本文就这些问题做一个比较详细的分析,并且对在standalone模式下如何实现HA进行讲解。没有...
阅读全文
摘要:欢迎转载,转载请注明出处,徽沪一郎。楔子Spark计算速度远胜于Hadoop的原因之一就在于中间结果是缓存在内存而不是直接写入到disk,本文尝试分析Spark中存储子系统的构成,并以数据写入和数据读取为例,讲述清楚存储子系统中各部件的交互关系。存储子系统概览上图是Spark存储子系统中几个主要模块...
阅读全文
摘要:欢迎转载,转载请注明出处,徽沪一郎,谢谢。在流数据的处理过程中,为了保证处理结果的可信度(不能多算,也不能漏算),需要做到对所有的输入数据有且仅有一次处理。在Spark Streaming的处理机制中,不能多算,比较容易理解。那么它又是如何作到即使数据处理结点被重启,在重启之后这些数据也会被再次处理...
阅读全文
摘要:欢迎转载,转载请注明出处,徽沪一郎。Spark Streaming能够对流数据进行近乎实时的速度进行数据处理。采用了不同于一般的流式数据处理模型,该模型使得Spark Streaming有非常高的处理速度,与storm相比拥有更高的吞能力。本篇简要分析Spark Streaming的处理模型,Spa...
阅读全文
摘要:欢迎转载,转载请注明出处,徽沪一郎。概要本篇主要阐述在TaskRunner中执行的task其业务逻辑是如何被调用到的,另外试图讲清楚运行着的task其输入的数据从哪获取,处理的结果返回到哪里,如何返回。准备spark已经安装完毕spark运行在local mode或local-cluster mod...
阅读全文
摘要:欢迎转载,转载请注明出处,徽沪一郎。概要本文以wordCount为例,详细说明spark创建和运行job的过程,重点是在进程及线程的创建。实验环境搭建在进行后续操作前,确保下列条件已满足。下载spark binary 0.9.1安装scala安装sbt安装java启动spark-shell单机模式运...
阅读全文
摘要:欢迎转载,转载请注明出处,徽沪一郎。楔子源码阅读是一件非常容易的事,也是一件非常难的事。容易的是代码就在那里,一打开就可以看到。难的是要通过代码明白作者当初为什么要这样设计,设计之初要解决的主要问题是什么。在对Spark的源码进行具体的走读之前,如果想要快速对Spark的有一个整体性的认识,阅读Ma...
阅读全文
摘要:Spark已正式申请加入Apache孵化器,从灵机一闪的实验室“电火花”成长为大数据技术平台中异军突起的新锐。本文主要讲述Spark的设计思想。Spark如其名,展现了大数据不常见的“电光石火”。具体特点概括为“轻、快、灵和巧”。轻:Spark 0.6核心代码有2万行,Hadoop 1.0为9万行,...
阅读全文
摘要:声明:1)该博文是整理自网上很大牛和专家所无私奉献的资料的。具体引用的资料请看参考文献。具体的版本声明也参考原文献2)本文仅供学术交流,非商用。所以每一部分具体的参考资料并没有详细对应,更有些部分本来就是直接从其他博客复制过来的。如果某部分不小心侵犯了大家的利益,还望海涵,并联系老衲删除或修改,直到...
阅读全文
摘要:simhash是google用来处理海量文本去重的算法。 google出品,你懂的。 simhash最牛逼的一点就是将一个文档,最后转换成一个64位的字节,暂且称之为特征字,然后判断重复只需要判断他们的特征字的距离是不是 110001这个就很简单啦,正1负0。到此,如何从一个doc到一个simhas...
阅读全文
摘要:整理归纳一下《推荐系统实践》和《推荐系统导论》两本书的知识点,文中排版格式可能会有点乱,如有问题请指正。OK,闲话不说,先上2张图 对推荐系统的建模数据进行分析,代表型数据:1)无上下文的隐形反馈数据;2) 无上下文的显性反馈数据;3) 有上下文的隐形反馈数据;4)有小上下文的显性反馈数据,其中...
阅读全文
摘要:本文从互联网收集并整理了推荐系统的架构,其中包括一些大公司的推荐系统框架(数据流存储、计算、模型应用),可以参考这些资料,取长补短,最后根据自己的业务需求,技术选型来设计相应的框架。后续持续更新并收集。。。 图1 界面UI那一块包含3块东西:1) 通过一定方式展示推荐物品(物品标题、缩略图...
阅读全文
摘要:深度学习word2vec笔记之基础篇 声明:1)该博文是多位博主以及多位文档资料的主人所无私奉献的论文资料整理的。具体引用的资料请看参考文献。具体的版本声明也参考原文献2)本文仅供学术交流,非商用。所以每一部分具体的参考资料并没有详细对应,更有些部分本来就是直接从其他博客复制过来的。如果某部分不小心...
阅读全文
摘要:(转)深度学习word2vec笔记之算法篇声明:1)该博文是Google专家以及多位博主所无私奉献的论文资料整理的。具体引用的资料请看参考文献。具体的版本声明也参考原文献2)本文仅供学术交流,非商用。所以每一部分具体的参考资料并没有详细对应,更有些部分本来就是直接从其他博客复制过来的。如果某部分不小...
阅读全文