两种模式运行Hadoop分布式并行程序

两种模式运行Hadoop分布式并行程序

作者:刘定 2010-06-03 19:28:02

开发

架构

分布式

Hadoop Hadoop可能大家还不是很了解,这里就向大家简单介绍一下Hadoop的概念以及Hadoop分布式并行程序方面的知识,欢迎大家一起来学习,希望本文的介绍对你的学习有所帮助。

本节和大家一起学习一下Hadoop方面的知识,主要包括Hadoop的概念和两种模式实现Hadoop分布式并行程序等,希望通过本节的介绍大家对Hadoop有新的认识。

Hadoop初体验

Hadoop支持Linux及Windows操作系统,但其官方网站声明Hadoop的分布式操作在Windows上未做严格测试,建议只把Windows作为Hadoop的开发平台。在Windows环境上的安装步骤如下(Linux平台类似,且更简单一些):

(1)在Windows下,需要先安装Cgywin,安装Cgywin时注意一定要选择安装openssh(在Netcategory)。安装完成之后,把Cgywin的安装目录如c:\cygwin\bin加到系统环境变量PATH中,这是因为运行Hadoop要执行一些linux环境下的脚本和命令。

(2)安装Java1.5.x,并将JAVA_HOME环境变量设置为Java的安装根目录如C:\ProgramFiles\Java\jdk1.5.0_01。

(3)到Hadoop官方网站http://hadoop.apache.org下载HadoopCore,最新的稳定版本是0.16.0.将下载后的安装包解压到一个目录,本文假定解压到c:\hadoop-0.16.0。

4)修改conf/hadoop-env.sh文件,在其中设置JAVA_HOME环境变量:exportJAVA_HOME=”C:\ProgramFiles\Java\jdk1.5.0_01”(因为路径中ProgramFiles中间有空格,一定要用双引号将路径引起来)

至此,一切就绪,可以运行Hadoop了。以下的运行过程,需要启动cygwin,进入模拟Linux环境。在下载的HadoopCore包中,带有几个示例程序并且已经打包成了hadoop-0.16.0-examples.jar。其中有一个WordCount程序,功能是统计一批文本文件中各个单词出现的次数,我们先来看看怎么运行这个程序。Hadoop共有三种运行模式:单机(非分布式)模式,伪分布式运行模式,分布式运行模式,其中前两种运行模式体现不了Hadoop分布式计算的优势,并没有什么实际意义,但对程序的测试及调试很有帮助,我们先从这两种模式入手,了解基于Hadoop的分布式并行程序是如何编写和运行的。

单机(非分布式)模式

这种模式在一台单机上运行,没有分布式文件系统,而是直接读写本地操作系统的文件系统。

注意事项:运行bin/hadoopjarhadoop-0.16.0-examples.jarwordcounttest-intest-out时,务必注意第一个参数是jar,不是-jar,当你用-jar时,不会告诉你是参数错了,报告出来的错误信息是:Exceptioninthread”main”java.lang.NoClassDefFoundError:org/apache/hadoop/util/ProgramDriver,笔者当时以为是classpath的设置问题,浪费了不少时间。通过分析bin/hadoop脚本可知,-jar并不是bin/hadoop脚本定义的参数,此脚本会把-jar作为Java的参数,Java的-jar参数表示执行一个Jar文件(这个Jar文件必须是一个可执行的Jar,即在MANIFEST中定义了主类),此时外部定义的classpath是不起作用的,因而会抛出java.lang.NoClassDefFoundError异常。而jar是bin/hadoop脚本定义的参数,会调用Hadoop自己的一个工具类RunJar,这个工具类也能够执行一个Jar文件,并且外部定义的classpath有效。

伪分布式运行模式

这种模式也是在一台单机上运行,但用不同的Java进程模仿分布式运行中的各类结点(NameNode,DataNode,JobTracker,TaskTracker,SecondaryNameNode),请注意分布式运行中的这几个结点的区别:从分布式存储的角度来说,集群中的结点由一个NameNode和若干个DataNode组成,另有一个SecondaryNameNode作为NameNode的备份。从分布式应用的角度来说,集群中的结点由一个JobTracker和若干个TaskTracker组成,JobTracker负责任务的调度,TaskTracker负责并行执行任务。TaskTracker必须运行在DataNode上,这样便于数据的本地计算。JobTracker和NameNode则无须在同一台机器上。
 

【编辑推荐】

  1. Hadoop机架感知及启动停止方法详解
  2. Hadoop概念及其用法专家讲解
  3. Hadoop集群与Hadoop性能优化
  4. HadoopHBase实现配置简单的单机环境
  5. Hadoop命令手册使用指南

 

 

 

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/247955.html<

(0)
运维的头像运维
上一篇2025-04-27 08:50
下一篇 2025-04-27 08:52

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注