Transcript LOGO - 东北大学
LOGO
Hadoop,Spark,Pregel,GraphLab类
比及Graphchi原理
王春磊
2014年4月3日
Hadoop及其半壁江山
Hadoop存在的问题
负载均衡
分布式容错
初始参数配置
大量的磁盘IO
不能高效的支持迭代计算
大量的中间结果
HDFS块不可控问题
Hadoop的优点
Page
简单,易用
任务提交简单
Hadoop是一个成功的产品
2
LOGO
Spark
LOGO
Spark是pair data-flow模型的基于内存的实现版
本
Spark最鲜明的特点——RDD
RDD让用户可以选择以何种方式存储、处理重用数
据
在Spark处理的过程中,一切数据结构都是RDD
RDD在容错方面具有绝对优势
RDD存在的问题
Page
3
LOGO
Page
4
Pregel——Giraph Giraph++
开创以点为中心的图处理模型
Page
5
LOGO
异步框架
伪异步
仍然存在超级步,只是在超级步结束时,筛选部分点进行下一超级步
Pregel,Grace
有限异步
达到了超级步的效果,但是放宽了超级步的限制
Graphlab
完全异步
各个点各行其是,完全不用考虑其他点的计算进度
Maiter
Page
6
LOGO
grace
封锁机制
Page
7
LOGO
graphlab
LOGO
Graphlab创新的使用封锁机制,实现了有限异步,
并且具有实现完全异步的能力,并且系统接管了更
多的责任,简化了用户编程、调试难度
Graphlab以图为中心,类似以点为中心,并且对
用户是透明的
同时支持同步计算和异步计算
创新的更新函数:
Page
8
LOGO
Page
9
LOGO
Page
10
graphlab
Graphlab同步引擎
Page
11
LOGO
graphlab
Graphlab异步引擎
Page
12
LOGO
LOGO
Page
13
SimRank算法
LOGO
SimRank算法的优点
节省时间成本
应对大规模数据
取得高质量的处理结果
将廉价的计算机组织成高可用性的集群
SimRank算法的优点
以数据可划分为前提
数据准备阶段的时间成本
需要大量的存储空间进行备份,容错
在分布式横行的今天,单机处理仍然具有重要的
地位
Page
14
Graphchi
LOGO
在单机上进行大数据处理,无非是将数据一部分一
部分的调入内存处理
在数据的调入内存的过程中,就会涉及到磁盘的读
写问题
尽量的减少访问磁盘的次数
尽量的采用顺序读写的方式读写磁盘
Graphchi所解决的问题,就是成功的将随机读
写,尽可能的转化为顺序读写
Page
15
graphchi
并行滑动窗口
Page
16
LOGO
LOGO
Page
17
LOGO
Page
18
LOGO
谢谢!
2013.12.07
东北大学计算机软件与理论研究所
东北大学计算机中心