设为首页 收藏本站
查看: 1640|回复: 0

[经验分享] 使用Linux和Hadoop进行分布式计算(版主精简)

[复制链接]

尚未签到

发表于 2018-11-1 10:11:58 | 显示全部楼层 |阅读模式
  先决条件
  Hadoop 是一个能够对大量数据进行分布式处理的软件框架。但是 Hadoop  是以一种可靠、高效、可伸缩的方式进行处理的。Hadoop  是可靠的,因为它假设计算元素和存储会失败,因此它维护多个工作数据副本,确保能够针对失败的节点重新分布处理。Hadoop  是高效的,因为它以并行的方式工作,通过并行处理加快处理速度。Hadoop 还是可伸缩的,能够处理 PB 级数据。此外,Hadoop  依赖于社区服务器,因此它的成本比较低,任何人都可以使用。
  您可能已经想到,Hadoop 运行在 Linux 生产平台上是非常理想的,因为它带有用 Java™ 语言编写的框架。Hadoop 上的应用程序也可以使用其他语言编写,比如 C++。
  Hadoop架构
  Hadoop 有许多元素构成。最底部是 Hadoop Distributed File System(HDFS),它存储 Hadoop 集群中所有存储节点上的文件。HDFS(对于本文)的上一层是 MapReduce 引擎,该引擎由 JobTrackers 和 TaskTrackers 组成。
  Hadoop 集群的简化视图
DSC0000.gif

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

  现在回到 Hadoop 上,它是如何实现这个功能的?一个代表客户机在单个主系统上启动的 MapReduce 应用程序称为  JobTracker。类似于 NameNode,它是 Hadoop 集群中惟一负责控制 MapReduce  应用程序的系统。在应用程序提交之后,将提供包含在 HDFS 中的输入和输出目录。JobTracker  使用文件块信息(物理量和位置)确定如何创建其他 TaskTracker 从属任务。MapReduce  应用程序被复制到每个出现输入文件块的节点。将为特定节点上的每个文件块创建一个惟一的从属任务。每个 TaskTracker 将状态和完成信息报告给  JobTracker。
  显示处理和存储的物理分布的 Hadoop 集群
DSC0002.gif

  Hadoop 的这个特点非常重要,因为它并没有将存储移动到某个位置以供处理,而是将处理移动到存储。这通过根据集群中的节点数调节处理,因此支持高效的数据处理。
  Hadoop 的其他应用程序
  流程以阶梯函数的形式出现,其中一个组件使用另一个组件的结果。当然,它不是万能的开发工具,但如果碰到的问题属于这种情况,那么可以选择使用 Hadoop。 Hadoop 一直帮助解决各种问题,包括超大型数据集的排序和大文件的搜索。它还是各种搜索引擎的核心,比如 Amazon 的 A9  和用于查找酒信息的 Able Grape 垂直搜索引擎。Hadoop Wiki  提供了一个包含大量应用程序和公司的列表,这些应用程序和公司通过各种方式使用 Hadoop。
  当前,Yahoo! 拥有最大的 Hadoop Linux 生产架构,共由 10,000 多个内核组成,有超过 5PB 字节的储存分布到各个  DataNode。在它们的 Web 索引内部差不多有一万亿个链接。不过您可能不需要那么大型的系统,如果是这样的话,您可以使用 Amazon  Elastic Compute Cloud (EC2) 构建一个包含 20 个节点的虚拟集群。事实上,纽约时报 使用  Hadoop 和 EC2 在 36 个小时内将 4TB 的 TIFF 图像 — 包括 405K 大 TIFF 图像,3.3M SGML 文章和  405K XML 文件 — 转换为 800K 适合在 Web 上使用的 PNG 图像。这种处理称为云计算,它是一种展示 Hadoop  的威力的独特方式。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-629250-1-1.html 上篇帖子: hadoop作业调优参数整理及原理(2) 下篇帖子: hadoop配置过程(简化版,推荐)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表