随笔分类 -  Apache Spark

Spark的使用及源码走读
摘要:Spark Elasticsearch 阅读全文
posted @ 2020-12-22 16:23 徽沪一郎 阅读(668) 评论(0) 推荐(0) 编辑
摘要:在学习使用Spark的过程中,总是想对内部运行过程作深入的了解,其中DEBUG和TRACE级别的日志可以为我们提供详细和有用的信息,那么如何进行合理设置呢,不复杂但也绝不是将一个INFO换为TRACE那么简单。 阅读全文
posted @ 2015-04-13 22:18 徽沪一郎 阅读(4437) 评论(1) 推荐(0) 编辑
摘要:Spark运行过程中资源的申请和释放一直是源码分析时需要关注的重点,从资源种类上来说,有CPU、内存、网络、磁盘,其中前三者会在进程退出时由OS来负责释放。而占用的磁盘资源,如果Spark自身不及时的清理,就势必会造成文件的堆积,直至磁盘被占满不可用。 因此有必要弄清楚Spark运行过程中产生的临时文件及其释放的时机,这样有助于部署和运维过程中采取相应的文件清理策略。 阅读全文
posted @ 2015-03-08 20:25 徽沪一郎 阅读(4577) 评论(1) 推荐(1) 编辑
摘要:本文就spark-cassandra-connector的一些实现细节进行探讨,主要集中于如何快速将大量的数据从cassandra中读取到本地内存或磁盘。 阅读全文
posted @ 2014-11-17 21:11 徽沪一郎 阅读(4091) 评论(0) 推荐(0) 编辑
摘要:编写了独立运行的Spark Application之后,需要将其提交到Spark Cluster中运行,一般会采用spark-submit来进行应用的提交,在使用spark-submit的过程中,有哪些事情需要注意的呢? 本文试就此做一个小小的总结。 阅读全文
posted @ 2014-10-26 20:43 徽沪一郎 阅读(11228) 评论(0) 推荐(1) 编辑
摘要:根据论坛上的信息,在Sparkrelease计划中,在Spark 1.3中有将SparkR纳入到发行版的可能。本文就提前展示一下如何安装及使用SparkR. 阅读全文
posted @ 2014-09-28 21:18 徽沪一郎 阅读(5246) 评论(0) 推荐(1) 编辑
摘要:Spark 1.1中对spark core的一个重大改进就是引入了sort-based shuffle处理机制,本文就该处理机制的实现进行初步的分析。 阅读全文
posted @ 2014-09-19 10:22 徽沪一郎 阅读(4343) 评论(2) 推荐(0) 编辑
摘要:本文简要介绍如何使用spark-cassandra-connector将json文件导入到cassandra数据库,这是一个使用spark的综合性示例。 阅读全文
posted @ 2014-09-06 14:54 徽沪一郎 阅读(2555) 评论(1) 推荐(1) 编辑
摘要:本文讲述如何使用datastax提供的spark-cassandra-connector来连接cassandra进行数据读取和更新。 阅读全文
posted @ 2014-09-02 21:48 徽沪一郎 阅读(3967) 评论(0) 推荐(1) 编辑
摘要:本文就拟牛顿法L-BFGS的由来做一个简要的回顾,然后就其在spark mllib中的实现进行源码走读。 阅读全文
posted @ 2014-08-25 19:52 徽沪一郎 阅读(3462) 评论(0) 推荐(1) 编辑
摘要:本文简要描述线性回归算法在Spark MLLib中的具体实现,涉及线性回归算法本身及线性回归并行处理的理论基础,然后对代码实现部分进行走读。 阅读全文
posted @ 2014-08-15 20:04 徽沪一郎 阅读(4852) 评论(3) 推荐(0) 编辑
摘要:通过一个简明的Demo程序来说明如何使用scala中的PackratParsers 阅读全文
posted @ 2014-08-11 13:40 徽沪一郎 阅读(2281) 评论(0) 推荐(0) 编辑
摘要:WEB UI和Metrics子系统为外部观察监测Spark内部运行情况提供了必要的窗口,本文将简略的过一下其内部代码实现。 阅读全文
posted @ 2014-08-05 10:12 徽沪一郎 阅读(4352) 评论(0) 推荐(0) 编辑
摘要:Spark应用开发实践性非常强,很多时候可能都会将时间花费在环境的搭建和运行上,如果有一个比较好的指导将会大大的缩短应用开发流程。 本篇主要讲述如何运行KafkaWordCount,这个需要涉及Kafka集群的搭建,还是说越仔细越好。 阅读全文
posted @ 2014-08-02 21:57 徽沪一郎 阅读(9938) 评论(3) 推荐(2) 编辑
摘要:ShuffleMapTask的计算结果保存在哪,随后Stage中的task又是如何知道从哪里去读取的呢,reduceByKey(_ + _)中的combine计算发生在什么地方,本文将为你一一揭晓。 阅读全文
posted @ 2014-07-24 12:58 徽沪一郎 阅读(4220) 评论(0) 推荐(1) 编辑
摘要:本文主要讲述在standalone cluster部署模式下,应用(Driver Application)所需要的资源是如何获得,在应用退出时又是如何释放的。 阅读全文
posted @ 2014-07-21 23:36 徽沪一郎 阅读(3047) 评论(0) 推荐(1) 编辑
摘要:上篇博文讲述了如何通过修改源码来查看调用堆栈,尽管也很实用,但每修改一次都需要编译,花费的时间不少,效率不高,而且属于侵入性的修改,不优雅。本篇讲述如何使用intellij idea来跟踪调试spark源码。 阅读全文
posted @ 2014-07-17 13:47 徽沪一郎 阅读(10707) 评论(4) 推荐(3) 编辑
摘要:今天不谈Spark中什么复杂的技术实现,只稍为聊聊如何进行代码跟读。众所周知,Spark使用scala进行开发,由于scala有众多的语法糖,很多时候代码跟着跟着就觉着线索跟丢掉了,另外Spark基于Akka来进行消息交互,那如何知道谁是接收方呢? 阅读全文
posted @ 2014-07-05 20:15 徽沪一郎 阅读(4622) 评论(0) 推荐(0) 编辑
摘要:之所以对spark shell的内部实现产生兴趣全部缘于好奇代码的编译加载过程,scala是需要编译才能执行的语言,但提供的scala repl可以实现代码的实时交互式执行,这是为什么呢? 既然scala已经提供了repl,为什么spark还要自己单独搞一套spark repl,这其中的缘由到底何在? 显然,这些都是问题,要解开这些谜团,只有再次开启一段源码分析之旅了。 阅读全文
posted @ 2014-06-28 09:21 徽沪一郎 阅读(5189) 评论(0) 推荐(1) 编辑
摘要:本文就standalone部署方式下的容错性问题做比较细致的分析,主要回答standalone部署方式下的包含哪些主要节点,当某一类节点出现问题时,系统是如何处理的。 组成cluster的不同节点,启动时有没有固定的顺序,为什么是这样的顺序,针对这些问题,本文会做一个详尽的分析。 阅读全文
posted @ 2014-06-17 21:51 徽沪一郎 阅读(3762) 评论(2) 推荐(7) 编辑