Cover Story封面报道
有向无环图
Dryad
●文,徐永睿
Dryad是Microsoftfl9分布式并行计算基础
平台,不同于Google的MapReduce,Dryad主要
用于Windows HPC Server平台上三只虫草 的大规模并行
计算。本文将结合Microsoft的技术论文Dryad."
Distributed Data-Parallel Programs from Sequential
Building Blocks世界最高大的狗 重点讲述Dryad采用的有向无环图
并行编程模式。 接操作支持非常有限,无论是Map端还是Reduce
有向无环图并行编程模式的优势
Dryad与MapReduce的设计目标基本一致,
主要是解决大规模静态数据的批量处理,比如
分析系统日志等。但这两者背后的编程模型却
区别较大,MapReduce的灵感主要来源于LISP
等函数式编程语言中的Map和Reduce操作。在
MapRe水粉画图片大全 duce中,开发者只需要根据应用需求关
注系统特定的Map和Reduce操作,几乎不需要
关注分布式处理的诸多细节问题。同时,由于
MapReduce系统执行过程、系统通信方式基本固
定,MapReduce的控制能力稍显不足,灵活性也
有所欠缺。因此,MapReduce简化的编程模型使
其更适合于那些没有多少并行计算经验的开发者
方便}臭速地进行并行应用程序开发。
Dryad最初的开发动机五年级的画 就是允许开发者对系 操作,其中需要联接的查询占了绝大多数。
统的交互过程、并行化等进行精细的控制。因
此,Dryad采用了灵活的有向无环图并行模型。 不佳,而Dryad通过有向无环图给出了相应的解
在这个有向无环图中,每一个顶点代表系统需要 决方法。下面结合论文中提到的SQL查询例子介
完成的一个任务,而顶点之间的边表示两个任务 绍Dryad采用的有向无环图并行编程模型。
之间的通信。由于每一个顶点代表的任务都是一
个完成单一功能的简单任务,内部并不需要进行 photoObjAll,每一条记录存储一个天体对象,其
并行化,业务逻辑实现非常容易。同时,Dryad 主码是ObjlD。另外记录中存储了该天体对象颜
允许开发者对有向无环图中的羽毛球英语怎么读 每一条边进行精细 色的各亮度分量的对数大小,这些亮度分量在
控制,任务之间的数据传输机制既可以采用共享
内存,也可以采用文件、TCP管道通信等,相对
于MapReduce中Mapper和Reducer之间单一高时
延 ̄gRPC通信方式,Dryad灵活的通信机制明显
适用范围更广而且能够取得更为理想的性能。此
外,Dryad可以通过组合一些简单的有向无环图
构成更为复杂的图,在不明显提升应用开发复杂
性的前提下就能简单地适应具有复杂并发关系的
应用程序。MapReduce对常见的数据集之间的联
端的联接操作都需要开发者技巧性的实现,否则
只能通过采用构建于MapReduce之上的Pig、Hive
或Sawzall等提供支持。而在Dryad中,由于有向
无环图支持任意数量的输入和输出顶点,支持
SQL风格的联接操作非常简单,同时,Dryad单
--
Job支持多输入多输出数据集也和MapReduce
中一个Job只能对应单一输入数据集和单一输出
数据集形学校面试 成鲜明对比。在MapReduce中,当涉及
不同数据学雷锋作文 集时,往往需要采春节的作文怎么写 用多个Job以管道的
形式完成最终任务,音频输出设备 这种方式虽然很好地符合了
“Do one thing and do it well”的编程哲学,但对
于一些简单的任务而言,稍显“笨拙”。
从SQL查询说起
SQL查询是我们每天不得不大量面对的
MapReduce恰好对这种常见数据集联接操作支持
论文的SQL例子中,有两张表,第一张表为
表中的属性分别是u、g、r、i、z两面黄 ,mode属性为1
表明该天体对象是“Primary Object”。第二张表
为neighbors,存储了1个天体对象在30弧秒(角
本文发布于:2023-04-25 04:27:07,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/fan/82/513348.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |