- 博客(22)
- 资源 (6)
- 收藏
- 关注
原创 Curator在大数据集群可靠性中的应用以及改进
Curator在大数据集群可靠性中的应用以及改进Curator简介大家都知道,ZooKeeper是当前大数据领域内常用的分布式协调组件。几乎在所有的大数据、分布式处理组件中都能见到它的应用。但由于ZooKeeper提供的原始API并不是很易用,在其基础上封装一些高级应用(服务发现、分布式锁、Master选举等)需要处理到很多细节,是一件很复杂的事情。Curator在此场景下应运而生,由Netflix
2017-04-25 00:09:27
2209
原创 Spark SQL中的聚合(Aggregate)实现
Spark SQL中的聚合(Aggregate)实现Sort Based Aggregate首先来说说实现比较简单(但实际执行起来却不简单)的Sort Based Aggregate。顾名思义,这是一种基于排序的聚合实现,在进行聚合之前,会根据grouping key进行分区以及分区内排序,将具有相同grouping key的记录都分布在同一个partition内且前后相邻,聚合时只需要顺序遍历整个
2017-04-08 16:50:08
9157
原创 SparkSQL中的Sort实现(二)
SparkSQL中的Sort实现二用到的数据结构UnsafeInMemorySorterUnsafeExternalSorterprefix comparatorrecord comparator数据的插入prefix computer数据插入数据的排序无spillradix sortTim sort有spill后记SparkSQL中的Sort实现(二)上节说到Spark
2017-03-12 22:40:39
4335
1
原创 SparkSQL中的Sort实现(一)
SparkSQL中同样支持Order by和Sort by两种操作,本篇文章简单介绍Order by的分区间排序。
2016-12-18 18:36:37
9722
原创 SparkSQL的3种Join实现
本文简单介绍SparkSQL中的几种Join实现。SparkSQL会根据用户配置,对不同大小的表应用不同的Join策略,兼顾效率和稳定性。
2016-12-12 23:06:16
18001
1
原创 Spark大师之路:广播变量(Broadcast)源码分析
概述最近工作上忙死了……广播变量这一块其实早就看过了,一直没有贴出来。本文基于Spark 1.0源码分析,主要探讨广播变量的初始化、创建、读取以及清除。 类关系BroadcastManager类中包含一个BroadcastFactory对象的引用。大部分操作通过调用BroadcastFactory中的方法来实现。BroadcastFactory是一个Trait,有两个直接子
2014-07-09 01:59:29
10456
原创 Spark 1.0.0版本发布
前言今天Spark终于跨出了里程碑的一步,1.0.0版本的发布标志着Spark已经进入1.0时代。1.0.0版本不仅加入了很多新特性,并且提供了更好的API支持。Spark SQL作为一个新的组件加入,支持在Spark上存储和操作结构化的数据。已有的标准库比如ML、Streaming和GraphX也得到了很大程度上的增强,对Spark和Python的接口也变得更稳定。以下是几个主要的改进点
2014-05-31 00:07:52
3735
1
原创 Coursera公开课Functional Programming Principles in Scala习题解答:Week 3
引言这周的作业其实有点复杂,需要完成的代码有点多,有点绕。本周的课程主要讲了Scala中的类、继承和多态,作业也很好的从各个方面考察了课程的内容。作业题目工程主要需要完成的部分是TweetSet.scala这个文件中的内容,比较新潮,都是和推特相关。其中定义了一个抽象类TweetSet,以及其的两个子类Empty、NonEmpty,表示空集和非空集。非空集使用二叉树来表示,二叉树的根是一个Tw
2014-05-24 21:38:03
3292
原创 Scala从零开始:使用Intellij IDEA写hello world
引言在之前的文章中,我们介绍了如何使用Scala IDE也就是eclipse中集成的Scala开发插件来进行Scala语言程序的开发,在使用了一段时间之后,发现eclipse对Scala的支持并不是很好。用户体验比较差,比如联想速度比较慢等。由于在公司一直使用的Scala开发工具是Intellij IDEA(好吧,其实我使用Scala IDE的目的就是想试一下这两个各有什么优缺点),各方面感觉
2014-05-23 00:39:14
88904
1
原创 Coursera公开课Functional Programming Principles in Scala习题解答:Week 2
引言OK.时间很快又过去了一周,第一周有五一假期所以感觉时间绰绰有余,这周中间没有假期只能靠晚上加周末的时间来消化,其实还是有点紧张呢!后来发现每堂课的视频还有对应的课件(Slide)、字幕(subtitles)可以下载,这样下载视频学习和在线学习就只差课程中间的Exercise了Week 2主要讲函数,函数在Scala里是first-class citizen,可以在任意域内出现,这门课
2014-05-14 00:21:22
4033
原创 Coursera公开课Functional Programming Principles in Scala习题解答:Week 1
引言工作之余参加了Coursera的公开课Functional Programming Principles in Scala,这个课是第三次开讲了,讲师仍然是Scala的祖师爷Martin Odersky先生。个人认为学习公开课最大的阻碍在于有些老师的口音实在是……不忍直视,比如最早在Coursera开授公开课的Andrew Ng(当然他现在是小老板了)。幸好Martin大爷的英文口音不是很
2014-05-08 01:07:07
5559
1
原创 Scala从零开始:函数参数的传名调用(call-by-name)和传值调用(call-by-value)
引言Scala的解释器在解析函数参数(function arguments)时有两种方式:先计算参数表达式的值(reduce the arguments),再应用到函数内部;或者是将未计算的参数表达式直接应用到函数内部。前者叫做传值调用(call-by-value),后者叫做传名调用(call-by-name)。package com.doggieobject Add { def
2014-03-23 22:58:23
15863
6
原创 Scala从零开始:中缀表示法和后缀表示法
在Scala中有很多为了方便而创造的语法规则,使用这些语法规则可以创建更简洁的语法,使编程更加有效。今天我们来看两个常用的语法规则,即中缀表示法(infix syntax)和后缀表示法(suffix syntax)。中缀表示法这两个语法规则都是针对方法(methed)来说的,所以在开始,我们创建两个类:package com.doggieobject Bartender {
2014-03-19 23:44:26
5253
1
原创 Scala从零开始:使用Scala IDE写hello world
简介在上一篇文章中,我们阐述了Coursera使用Scala的理由,以及Scala的优缺点。说多不如少练,我们今天就开始练习如何使用Scala编程。虽然Scala是一门比较新的语言,但是很多机构都为其开发了IDE或者集成插件,比较流行的有Eclipse、IntelliJ以及Netbeans。今天我们使用集成了Scala IDE插件的Eclipse进行代码的编写。IDE下载及安装
2014-03-19 01:12:27
42197
3
翻译 选择Scala的理由?
先来张镇宅神图:火热的网上公开课网站Coursera采用了Scala来作为他们的首选编程语言。最初这个网站是由几个Stanford的学生用PHP写的,后来随着业务扩展,团队开始寻找合适的语言来搭建平台。在尝试过了包括Python和Go在内的许多种框架后,Coursera决定采用Scala以及使用Scala编写的web框架Play Framework,原因有以下几条:
2014-03-14 00:28:56
4104
原创 在优快云博客中用latex写公式
直接在html中添加:这里有常用数学符号的 LaTeX 表示方法参考:http://blog.youkuaiyun.com/abcjennifer/article/details/8036018
2014-03-13 01:00:54
2075
原创 Inferring Taxi Status Using GPS Trajectories论文思路
这篇论文主要使用GPS轨迹来判断出租车的状态,包含Occupied(用O表示)、Non-occupied(用N表示)、Parked(用P表示)。当前出租车的现状:1.大多数出租车没有把计费表和GPS连接到一起,所以驱动了本论文技术的研究;2.为了省电,出租车一般将GPS的上报时间调整为分钟级,这就造成了数据的稀疏性,降低了采样率;3.出租车状态变换比较频繁,乘客、司机、道路
2014-03-09 20:53:10
1808
原创 Efficient Graph-Based Image Segmentation论文思路
Efficient Graph-Based Image Segmentation 是2004年由Felzenszwalb发表在IJCV上的一篇文章。主要介绍了基于图表示的图像分割。并且提出了一种基于贪心选择的图像分割方法,此方法能够考虑到全局特征。根据距离度量方式的不同,此算法有两种具体的实现形式。结果表明算法的运行时间接近于线性(相对于图中边的个数来说)。此算法的更重要的特性在于,在特征变化较小
2012-12-25 19:41:54
9757
1
Functional Programming Principles in Scala Assignments Week3
2014-05-24
Functional Programming Principles in Scala Assignments Week1
2014-05-14
Functional Programming Principles in Scala Assignments Week2
2014-05-14
windows 7 theme avatar 阿凡达主题
2010-11-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人