1 / 20

Maiter 框架介绍及 SimRank 算法在 Maiter 上的实现

Maiter 框架介绍及 SimRank 算法在 Maiter 上的实现. 王春磊 2013.07.05. 1. 2. 3. 4. Maiter 框架介绍. Maiter 框架的改进. Simrank 算法的实现. 性能检测及实验结果. 主要内容. Page  2. 相关技术简介 -Hadoop. Hadoop 是应用较广,且比较通用的分布式框架,但是不能高效的解决迭代算法. Page  3. Maiter 框架简介. Hadoop Maiter

tarala
Download Presentation

Maiter 框架介绍及 SimRank 算法在 Maiter 上的实现

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Maiter框架介绍及SimRank算法在Maiter上的实现 王春磊 2013.07.05

  2. 1 2 3 4 Maiter框架介绍 Maiter框架的改进 Simrank算法的实现 性能检测及实验结果 主要内容 Page 2

  3. 相关技术简介-Hadoop Hadoop是应用较广,且比较通用的分布式框架,但是不能高效的解决迭代算法 Page 3

  4. Maiter框架简介 Hadoop Maiter Maiter框架可高效的支持异步迭代 Page 4

  5. Maiter的异步条件 Page 5

  6. Maiter的异步迭代 Page 6

  7. 相关技术简介-Maiter Maiter框架可高效的解决迭代算法,但是刚刚被提出,系统功能不是很完备,支持算法有限 Page 7

  8. Maiter框架的改进 • 改进前Maiter的执行过程: Page 8

  9. Maiter框架的改进 • 改进后Maiter的执行过程: Page 9

  10. Maiter框架的改进 • 改进前Maiter提供的API: • void read_data(string& line, K* k, D* data) ; • void init_c(const K& k, V* delta) • const V& default_v() const • void accumulate(V* a, const V& b) • void priority(V* pri, const V& value, const V& delta) ; • void g_func(const V& delta, const D& data, vector<pair<K, V>>*output) • 改进后Maiter提供的API: • void read_data(string& line, K& k, D& data) • void init_c(const K& k, V& delta, D& data) • const V& default_v() const • void init_v(const K& k,V& v,D& data) • void accumulate(V& a, const V& b) • void process_delta_v(const K& k, V& dalta,V& value, D& data) • void priority(V& pri, const V& value, const V& delta) • void g_func(const K& k,const V& delta,const V& value, const D& data, vector<pair<K, V> >* output) Page 10

  11. 异步迭代算法的实现 Page 11

  12. Page 12

  13. Page 13

  14. Page 14

  15. 性能检测及实验结果 • 集群硬件软件配置: • CPU:INTEL CORE i3-2100 LGA-1155 接口 3MB 高速缓存 2核 虚拟4核 • 内存:apacer 4G-DDR3 *2 • 硬盘:hitachi 500G/7200RPM • 主板:ASUS P8H61-I • JDK:JDK1.6.0_30 • 系统:redhat 6.1 64bit • 实验集群: • Hadoop集群,0.20.2版本,1个master节点,八个worker节点 • Maiter集群,2.0版本,1个master节点,八个worker节点 Page 15

  16. 性能检测及实验结果 • 实验结果-运行时间: • 其中pagerank算法在Maiter框架下的运行速度是在Hadoop框架下的60多倍,与作者的实验数据吻合,说明对MaiterAPI的修改没有影响Maiter的效率 • Simrank 算法在100个顶点的时候,在Maiter框架下执行的速度是Hadoop框架下的35倍。500个顶点的时候是11倍。1000个顶点时是3.6倍。 Page 16

  17. 性能检测及实验结果 • 实验结果-运行时间: • 图中显示的是simrank算法分别在Maiter框架和Hadoop框架下随着数据集的增长运行时间的增长情况,可以看出Maiter框架下simrank算法随数据集规模增大,运行时间增的速度比Hadoop框架下慢 Page 17

  18. 性能检测及实验结果 • 实验结果-通行量: • 由左图可以看到,Maiter框架下simrank的通信量显著的减少了,一方面是由于MPI通信方式,另一方面在于在simrank算法中的优化。右图则显示随着数据集的增加,通信量的变化趋势,可以看出Maiter几乎是线性变化的,而Hadoop则增加明显 Page 18

  19. 未来工作 • Maiter是开源项目 • https://code.google.com/p/maiter • Maiter没有分布式文件系统支撑 • 理想文件系统HDFS • Maiter不支持双引擎 • 同步引擎 • 异步引擎 Page 19

  20. 东北大学毕业设计 谢谢! 2013.06.16

More Related