paper学习MapReduce:SimplIFied Data Processing on Large Clusters

Posted ceph与分布式系统

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了paper学习MapReduce:SimplIFied Data Processing on Large Clusters相关的知识,希望对你有一定的参考价值。

MapReduce:SimplIFied Data Processing on Large Clusters



ABSTRACT摘要:

MapReduce是用于处理和生成大型数据集的编程模型以及相关的实现。用户指定一个处理键/值对以生成一组中间键/值对的映射函数,以及一个归约函数,该reduce【归约】函数合并与同一中间键关联的所有中间值。如本文所示,此模型中可应用于许多现实世界中的任务。

以这种功能风格编写的程序会自动并行化,并在大型商用机器集群上执行。run-timesystem【运行时系统】负责划分输入数据,安排程序在一组机器上的执行,处理机器故障以及管理所需的机器间通信的细节。这使没有并行和分布式系统经验的程序员可以轻松利用大型分布式系统的资源。

我们对MapReduce的实现可以在大型商用机器集群上运行,并且具有高度可扩展性:典型的MapReduce计算可在数千台机器上处理数TB的数据。程序员发现该系统易于使用:每天实施数百个MapReduce程序,每天在Google集群上执行多达一千个MapReduce作业。



INTRODUCTION介绍

在过去的五年中,Google的作者和许多其他人已经实现了数百种特殊用途的计算,这些处理可以处理大量原始数据(例如抓取的文档,Web请求日志等),以计算各种派生数据,例如 作为反向索引,Web文档的图形结构的各种表示形式,每个主机爬网的页面数摘要,给定日期中最 频繁的查询集等。大多数此类计算在概念上都很简单。但是,输入数据通常很大,必须在数百或数千台计算机上分布计算,才能在合理的时间内完成。如何并行化计算,分配数据和处理故障的问题共同困扰着用大量复杂代码来掩盖最初的简单计算,以应对这些问题。

为了应对这种复杂性,我们设计了一个新的抽象,该抽象使我们能够表达我们试图执行的简单计算,但在库中隐藏了并行化,容错,数据分发和负载平衡的混乱细节。我们的抽象受到地图的启发,并减少了Lisp和许多其他功能语言中存在的原语。我们意识到,大多数计算都涉及对输入中的每个逻辑“记录”应用映射操作,以计算一组中间键/值对,然后对所有共享同一键的值应用归约操作,为了适当地组合得出的数据。我们使用具有用户指定的映射和归约运算的功能模型,使我们能够轻松地并行化大型计算,并使用重新执行作为容错的主要机制。

这项工作的主要贡献是一个简单而强大的界面,该界面可实现大规模计算的自动并行化和分配,并结合了该界面的实现,可在大型商用PC集群上实现高性能。

第2节描述了基本的编程模型,并给出了几个示例。第3节介绍了针对我们基于集群的计算环境量身定制的MapReduce接口的实现。第4节描述了一些有用的编程模型改进。第5节对我们执行各种任务的性能进行了度量。第6部分探讨了Google在MapReduce中的用法,包括我们使用它的经验作为重写生产索引系统的基础。第7节讨论了相关的未来工作。


。。。。


更多内容,请自行翻阅官方PDF资料:

链接:https://pan.baidu.com/s/192z1xD_b1pAJECnCSNMGpw

提取码:sbok


感谢支持,感谢关注,谢谢!!


以上是关于paper学习MapReduce:SimplIFied Data Processing on Large Clusters的主要内容,如果未能解决你的问题,请参考以下文章

深度学习CVPR2019-PAPER IDEAS

近期学习

paper学习笔记 - PLE

Paper Reading | 基于深度学习的多标准中文分词

阿里深度兴趣网络模型paper学习

paper 149:Deep Learning 学习笔记