快速业务通道

使用Linux 和Hadoop 进行分布式计算

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-05-11
age 和 EditLog 文件也需要复制副本,以防文件损坏或 NameNode 系统丢失.

DataNode

NameNode 也是一个通常在 HDFS 实例中的单独机器上运行的软件.Hadoop 集群包含一个 NameNode 和大量 DataNode.DataNode 通常以机架的形式组织,机架通过一个交换机将所有系统连接起来.Hadoop 的一个假设是:机架内部节点之间的传输速度快于机架间节点的传输速度.

DataNode 响应来自 HDFS 客户机的读写请求.它们还响应创建、删除和复制来自 NameNode 的块的命令.NameNode 依赖来自每个 DataNode 的定期心跳(heartbeat)消息.每条消息都包含一个块报告,NameNode 可以根据这个报告验证块映射和其他文件系统元数据.如果 DataNode 不能发送心跳消息,NameNode 将采取修复措施,重新复制在该节点上丢失的块.

文件操作

可见,HDFS 并不是一个万能的文件系统.它的主要目的是支持以流的形式访问写入的大型文件.如果客户机想将文件写到 HDFS 上,需要将该文件缓存到本地的临时存储.如果缓存的数据大于所需的 HDFS 块大小,创建文件的请求将发送给 NameNode.NameNode 将以 DataNode 标识和目标块响应客户机.同时也通知将要保存文件块副本的 DataNode.当客户机开始将临时文件发送给第一个 DataNode 时,将立即通过管道方式将块内容转发给副本 DataNode.客户机也负责创建保存在相同 HDFS 名称空间中的校验和(checksum)文件.在的文件块发送之后,NameNode 将文件创建提交到它的持久化元数据存储(在 EditLog 和 FsImage 文件).

Linux 集群

Hadoop 框架可在单一的 Linux 平台上使用(开发和调试时),但是使用存放在机架上的商业服务器才能发挥它的力量.这些机架组成一个 Hadoop 集群.它通过集群拓扑知识决定如何在整个集群中分配作业和文件.Hadoop 假定节点可能失败,因此采用本机方法处理单个计算机甚至所有机架的失败.

Hadoop 应用程序

Hadoop 的最常见用法之一是 Web 搜索.虽然它不是惟一的软件框架应用程序,但作为一个并行数据处理引擎,它的表现非常突出.Hadoop 最有趣的方面之一是 Map and Reduce 流程,它受到 Google 开发的启发.这个流程称为创建索引,它将 Web 爬行器检索到的文本 Web 页面作为输入,并且将这些页面上的单词的频率报告作为结果.然后可以在整个 Web 搜索过程中使用这个结果从已定义的搜索参数中识别内容.

MapReduce

最简单的 MapReduce 应用程序至少包含 3 个部分:一个 Map 函数、一个 Reduce 函数和一个 main 函数.main 函数将作业控制和文件输入/输出结合起来.在这点上,Hadoop 提供了大量的接口和抽象类,从而为 Hadoop 应用程序开发人员提供许多工具,可用于调试和性能度量等.

MapReduce 本身就是用于并行处理大数据集的软件框架.MapReduce 的根源是函数性编程中的 map 和 reduce 函数.它由两个可能包含有许多实例(许多 Map 和 Reduce)的操作组成.Map 函数接受一组数据并将其转换为一个键/值对列表,输入域中的每个元素对应一个键/值对.Reduce 函数接受 Map 函数生成的列表,然后根据它们的键(为每个键生成一个键/值对)缩小键/值对列表.

这里提供一个示例,帮助您理解它.假设输入域是 one small step for man, one giant leap for mankind.在这个域上运行 Map 函数将得出以下的键/值对列表:

(one, 1) (small, 1) (step, 1) (for, 1) (man, 1)
(one, 1) (giant, 1) (leap, 1) (for, 1) (mankind, 1)

如果对这个键/值对列表应用 Reduce 函数,将得到以下一组键/值对:

(one, 2) (small, 1) (step, 1) (for, 2) (man, 1)
(giant, 1) (leap, 1) (mankind, 1)

结果是对输入域中的单词进行计数,这无疑对处理索引

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号