




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
概 系统特 使用场 术 目 先决条 支持平 所需软 安装软 ....................................................................................................................................运行Hadoop集群的准备工 配 免ssh设 执 Slave(60,245上)配 初始化文件系 启动 停止 测 管理界面与命 hdfs运行状态界 Map-reduce的运行状态界 直接令行查 运行的进程查 架构分 HDFS的三个重要角 HDFS设计特 算法介 Hadoop框架下的 错误!未定义书签 经验总 新增节 删除节 datanode启动失败,各slave节点的namespaceIDs与masters不 taskTracker和jobTracker启动失 Toomanyfetch- 能够启动datanode,但无法,也无法结束的错 解决hadoopOutOfMemoryError问题 与HDFS有关的地址及端口属 与MapReduce有关的地址及端口属 附 配置文 集群配置说 概什么是HadoopApacheSoftwareFoundation2005Lucene的子项目Nutch的一部分正式引入。它受到最先由Lab开发的MapReduce和FileSystem的启发。2006年3月份,MapReduce和NutchDistributedFileSystem(NDFS)分别被纳入称为Hadoop的项目中。Hadoop并不仅仅是一个用于的分布式文件系统,而是设计用来在由通用计算设备组成的大型集群上执行分布式应用的基础框架。它由Apache开发。用户可以在不了解Hadoop是一个可以更容易开发和运行处理大规模数据的软件平台。下图是Hadoop的体系结Hadoop框架中最的设计就是:MapReduce和HDFSHDFS是Hadoop分布式文件系统(HadoopDistributedFileSystem)的缩写,为分布为什么要选择系统使用术 储。HDFS了文件系统的名字空间,用户能够以文件的形式在上面数据。从看,一个文件其实被分成一个或多个数据块,这些块在一组Datanode上。Datanode负责处理文件系统客户端的读写请求。在Namenode的统一调度下进行Secondnamenode:光从字面上来理解,很容易让一些初学者先入为主的认为:SecondaryNameNode(snn)NameNode(nn)的热备进程。其实不是。snnnamenodeHDFSmetadatanamenode重启的时间。JobtrackerTasktracherJobTrackerMapReducejobHadoopJobTrackertask,slavetask。要,一般情况应该把JobTracker部署在单独的机器上。Hadoop的单机部署mon/docs/current/singlenodesetup.html#Supported+Plat目Win32平台是作为开发平台支持的。由于分布式操作尚未在Win32平台上充分测试,以Linux为例:$sudoapt-getinstall$sudoapt-getinstall地址 运行Hadoop集群的准备$单机模式的操作下面的实例将已解压的conf $$mkdir$cpconf/*.xml$cat 伪分布式模式的操作方个独立的Java进程运行。配hadoop-site.xml文件变成三个配置文件core-site.xml,hdfssite.xml,mapred-site.xml.conf/core-conf/hdfs-conf/mapred-免ssh设$ssh$ssh-keygen-tdsa-P''-f$cat~/.ssh/id_dsa.pub>>执首先使hadoop命令HadoopFileSystemHDFS)进行格式化首先,请namenodeDFS文件系统进行格式化。在安装过程中完成了这个步骤,但是了解是否需STARTUP_MSG:StartingNameNode host=TEST085/06 args=[-format] build1099333;compiledby'oom'onWedMay 407:57:50PDT201111/07/1217:47:12INFOutil.GSet:VM=32-11/07/1217:47:12INFOutil.GSet:2%maxmemory=19.33375=2^22=419430411/07/1217:47:13INFOnamenode.FSNamesystem:fsOwner=hadoop11/07/1217:47:13INFOnamenode.FSNamesystem:supergroup=supergroup 11/07/1217:47:13INFOnamenode.FSNamesystem:isAccessTokenEnabled=falseaccessKeyUpdateInterval=0min(s),accessTokenLifetime=0min(s)11/07/1217:47:13INFOnamenode.NameNode:Cachingfilenamesoccuringmorethan10times11/07/1217:47:13INFOcommon.Storage:Imagefileofsize112savedin0seconds.11/07/1217:47:13INFOcommon.Storage:Storagedirectory/tmp/hadoop-hadoop/dfs/namehasbeensuccessfullyformatted.Hadoop[hadoop@TEST085hadoop-]$bin/start- exportHADOOP_SSH_OPTS="-p1234"--$bin/hadoopfs-putconf$bin/hadoopfs-getoutput$cat$bin/hadoopfs-catHadoop5个守护进程:namenode、secondarynamenode、datanode、jobtracker和tasktracker。在启动每个守护进程时,会看到一些相关信息(指出日志的位置)。每个守护进程都在运行。图1说明完成启动之后伪分布式配置1.HadoopHadoop集群搭建过程手记参考: /cluster85)60(160),54(254),架构规化免SSH设名称节点。2)以hadoop(85)ssh-keygen-trsa 到当前位置,命名为然后执行命令ssh,3)接下来,同样也hadoop用户登陆数据节点服务器(160,254),创建600权限 od600.ssh);再把名称服务器上的到数 Hadoop软件安至少需要将JAVA_HOME设置为Java安装根路径(安装过程参考“3hadoop。##Thejavaimplementationtouse.exportJAVA_HOME=/usr/local/java--修改成你自jdk安装#The umamountofheaptouse,inMB.Defaultis1000.exportHADOOP_HEAPSIZE=200 Master(85)配hadoop0.20版本,配置文件由以前的hadoop-site.xml文件变成三个配置文件core-site.xml,进行独立开发,配置文件也独立了。[[root@5conf]#catcore-<?xml<?xml<?xmlTheactualnumberofreplicationscanbespecifiedwhenthefileiscreated.Thedefaultisusedifreplicationisnotspecifiedincreatetime.<?xml<?xml在/home/hadoopbashrc加入exportexportexportPATH=/root/hadoop/hadoop/bin:$PATHSlave(60,245上)配置在Slave(60,245上)上的配置文件如下(hdfs-site.xml不需要配置<?xml<?xml<?xml<?xml初始化namenode,HDFS$bin/hadoopnamenode 人害怕真的是格式化自己的文件系统了,其实大可不必担心,namenodeformat只是初始化一些和文件而已。启动startingnamenode,logging60:startingdatanode,loggingto45:startingdatanode,loggingto5:startingstartingnamenode,logging60:startingdatanode,loggingto45:startingdatanode,loggingto5:startingsecondarynamenode,loggingstartingstartingjobtracker,logging60:startingtasktracker,loggingto45:startingtasktracker,loggingto 第一步启动[hadoop@TEST085[hadoop@TEST085hadoop-]$bin/start-dfs.shstartingnamenode,loggingto60:startingdatanode,loggingto45:startingdatanode,loggingto 5:startingsecondarynamenode,logging[hadoop@TEST085[hadoop@TEST085hadoop-]$bin/start-mapred.shstartingjobtracker,loggingto60:startingtasktracker,loggingto45:startingtasktracker,logging 注:实际应用中amede和othe不在同一台服务器上,则需要按下面在分配的NameNode上,运行下面令启动bin/start-dfs.sh会参照NameNode${HADOOP_CONF_DIR}/slaves文件的内容,在所有列出的slave上启动DataNode守护进程。在分配的JobTracker上,运行下面令启动bin/start-mapred.sh会参照JobTracker${HADOOP_CONF_DIR}/slaves文件的内容,在所有列出的slave上启动TaskTracker守护进程。停止在分配的NameNode上,执行下面令停止在分配的JobTracker上,运行下面令停止在hdfs上创建test1文件夹,上传文件到 [hadoop@TEST085hadoop-]$[hadoop@TEST085hadoop-]$bin/hadoopfs-mkdirtest1[hadoop@TEST085hadoop-]$bin/hadoopfs-put./README.txttest1[hadoop@TEST085hadoop-]$bin/hadoopfs-lsFound1 -hadoop 02011-07-2119:58运行一个map-reduce示例程序wordcount,运行结果如下11/07/2215:21:29INFOinput.FileInputFormat:Totalinputpathstoprocess:111/07/2211/07/2215:21:29INFOinput.FileInputFormat:Totalinputpathstoprocess:111/07/2215:21:30INFOmapred.JobClient:Runningjob:job_201107221440_000111/07/2215:21:31INFOmapred.JobClient:map0%reduce0%11/07/2215:21:51INFOmapred.JobClient:map100%reduce11/07/2215:22:09INFOmapred.JobClient:map100%reduce11/07/2215:22:15INFOmapred.JobClient:Jobcomplete:job_201107221440_000111/07/2215:22:15INFOmapred.JobClient:Counters:25 Job11/07/2215:22:15INFOmapred.JobClient: Launchedreducetasks=111/07/2215:22:15INFOmapred.JobClient: 11/07/2215:22:15INFOmapred.JobClient: Totaltimespentbyallreduceswaitingafterreservingslots(ms)=011/07/2215:22:15INFOmapred.JobClient: Totaltimespentbyallmapswaitingafterreservingslots11/07/2215:22:15INFOmapred.JobClient: Launchedmaptasks=111/07/2215:22:15INFO Data-localmap 11/07/2215:22:15INFOmapred.JobClient: FileOutputFormatCounters11/07/2215:22:15INFOmapred.JobClient: BytesWritten=130611/07/2215:22:15INFOmapred.JobClient: 11/07/2215:22:15INFOmapred.JobClient: 11/07/2215:22:15INFOmapred.JobClient: FileInputFormatCounters11/07/2215:22:15INFOmapred.JobClient: BytesRead=136611/07/2215:22:15INFOmapred.JobClient: Map-ReduceFramework11/07/2215:22:15INFOmapred.JobClient: 11/07/2215:22:15INFOmapred.JobClient: Mapoutputmaterializedbytes=183611/07/2215:22:15INFOmapred.JobClient: Combineoutputrecords=13111/07/2215:22:15INFOmapred.JobClient: Mapinputrecords=3111/07/2215:22:15INFOmapred.JobClient: Reduceshufflebytes=183611/07/2215:22:15INFOmapred.JobClient: 11/07/2215:22:15INFOmapred.JobClient: SpilledRecords=26211/07/2215:22:15INFOmapred.JobClient: Mapoutputbytes=205511/07/2215:22:15INFOmapred.JobClient: Combineinputrecords=17911/07/2215:22:15INFOmapred.JobClient: Mapoutputrecords=17911/07/2215:22:15INFOmapred.JobClient: 11/07/2215:22:15INFOmapred.JobClient: Reduceinputrecords=131[hadoop@TEST085hadoop-]$bin/hadoopfs-lsoutput1查看输出结果文件,这个文件在hdfs上[hadoop@TEST085[hadoop@TEST085hadoop-]$hadoopfs-lsoutput1Found3items 3hadoop 02011-07-2215:22 -hadoop 02011-07-2215:21 3hadoop [hadoop@TEST085hadoop-]$hadoopfs-catoutput1/part-r- 1 1111740.13)<>1111 11 管理界面与命令hdfs运行状态查看hdfs运行状态,可以通过web;Map-reduce查看map-reduce信息,可以通过web界面来直接令行查[root@5~]#hadoopdfsadmin-reportConfiguredCapacity:291104653312(271.11GB)PresentCapacity:74432905216(69.32DFSRemaining:74432823296(69.32DFSUsed:81920(80DFSUsed%:Underreplicatedblocks:Blockswithcorruptreplicas:Missingblocks:Datanodesavailable:2(2total,0Name:missionStatus:ConfiguredCapacity:37169479680(34.62DFSUsed:36864(36NonDFSUsed:30097534976(28.03DFSRemaining:7071907840(6.59DFSUsed%:DFSRemaining%:Lastcontact:FriJul2215:16:36CSTName:missionStatus:ConfiguredCapacity:253935173632(236.5DFSUsed:45056(44NonDFSUsed:186574213120(173.76DFSRemaining:67360915456(62.73DFSUsed%:DFSRemaining%:Lastcontact:FriJul2215:16:37CST 274400.95.8119557659428pts/0 /usr/local/java/bin/java-Dproc_namenode- - 178400.53.5118509236196 184350.94.2119983642744pts/0 /usr/local/java/bin/java-Dproc_jobtracker- -[hadoop@TEST085hadoop-]$netstat-ant|grep0000000000000000 111271.36.4117958432656S 111271.36.4117958432656S /usr/local/java/bin/java-Dproc_datanode-Xmx1000m- 112150.87.0118813235660S /usr/local/java/bin/java-Dproc_tasktracker--[hadoop@DBSERVER/]$netstat-ant|grep0000【架构参考:mo /hdfsdesign.html】Hadoop有许多元素构成。最底部是HadoopDistributedFileSystem(HDFS),它Hadoop集群中所有节点上的文件,与HDFS相关的服务有NameNode、SecondaryNameNodeDataNodeHDFS(对于本文)MapReduce引擎,该引擎由JobTrackers和TaskTrackers组成(MapReduce相关的服务有JobTracker和TaskTracker两种)。Hadoop集群中有两种角色:masterslave,mastermastermaster。对外部客户机而言,HDFS就像一个传统的分级文件系统。可以创建、删除、移动这是由它自身的特点决定的。这些节点包括NameNode(仅一个),它在HDFS提供元数据服务;DataNode,它为HDFS提供块。5-1Hadoop这与传统的RAID架构大不相同。块的大小(通常为64MB)和的块数量在创建文件时由客户机决定。NameNode可以控制所有文件操作。HDFS的所有通信都基于标准的TCP/IP协议。HDFS图5-2:HDFS结构示上面这个图很经典,图中展现了整个HDFS三个重要角色:NameNodeDataNode和ClientNameNode可以看作是分布式文件系统中的管理者,主要负责管理文件系统名空间、集群配置信息和块的等。NameNode会将文件系统的Meta-data在内DataNode是文件的基本单元,它将Block在本地文件系统中,保存了Block文件写入Client向NameNode文件文件BlockDataNode开始直接相互HDFS下面说说HDFS的几个设计特点(对于框架设计值得借鉴数据(场景为DataNode失败、需要平衡DataNode的利用率和需要平衡DataNodeNameNode当客户端要写入文件到DataNode上,首先客户端一个Block然后写到第一个DataNode算法 具体过程序如下: Map , 上述就是MapReduce大致处理过程,在Map前还可能会对输入的数据有Split(分割)Hadoop框架下的MapReduce3MapReduce函数和一个main函数。main函数将作业控制和文件输入/输出结合起来。在这点上,Hadoop提供了大量的接口和抽象类,从而为Hadoop应用程序开发提供许多工具,MapReduce本身就是用于并行处理大数据集的软件框架。MapReduce的根源是函数mapreduce函数。它由两个可能包含有许多实例(许多Map和Reduce)的操作组成。Map函数接受一组数据并将其转换为一个键/值对列表,输入域中的每个元素对应一个键/值对。Reduce函数接受Map函数生成的列表,然后根据它们的示例在这个域上运行Map函数将得出以下的键/值对列表:(one,(one,1)(small,1)(step,1)(for,1)(man,(one,1)(giant,1)(leap,1)(for,1)(mankind,(one, (small,1)(step,(one, (small,1)(step, (for,2)(man,(giant,1)(leap,1)(mankind,onesmallstepformanonegiantleapformankindMapReduce函数,然后将这两个键/值对列Reduce函数,这时得到与前面一样的结果。换句话说,可以在输入域并行使用相同的操作,得到的结果是一样的,但速度更快。这便是MapReduce的;它示例Input<行号,文本内容Map:<行号,文本内容List<<单词,数量Reduce:<单词List<数量1<单词,数量合计Output:List<<单词,数量Hadoop—客户机在单个主系统上启动的MapReduce应用程序称为JobTracker。类似于NameNode,它是Hadoop集群中惟一负责控制MapReduce应用程序的系统。在应用程序提交之后,将提供包含在HDFS中的输入和输出 理量和位置)确定如何创建其他TaskTracker从属任务。MapReduce应用程序被TaskTrackerJobTracker5-5显示一个示例集群中的工作分图5-5.显示处理和的物理分布的Hadoop集群下面综合MapReduce和HDFS来看Hadoop的结构图3:Hadoop结构示意MovingData。就是在分布式处理中,移动数据的代价总是高于转移计算的代价。简单来说对外部客户机而言,HDFS就像一个传统的分级文件系统。可以创建、删除、移动或重命HDFS的架构是基于一组特定的节点构建的(1),这是由它务;DataNode,它为HDFS提供块。由于仅存在一个NameNode,因此这是HDFSHadoop Hadoop命令常规选项描-D-fs-jt-files逗号分隔的文件列表指定要拷贝到mapreduce集群的文件的逗号分隔的列表。只适用于job。列表。只适用于job。用户命令用法:hadooparchive- Hadoop命令distcp用于递归地拷贝文件或 用法:hadoopdistcp<srcurl><desturl>srcurl源UrldesturlUrlfs(FSS命令用法:hadoopFSS命令指调用文件系统(FS)S命令应使用bin/hadoopfs<args>的形式。所有的的FSs命令使用URI路径作为参数。URI格式是scheme://authority/path。对HDFS文件系统,scheme是hdfs,对本地文件系统,scheme是file。其中schemeauthority参数都是可选的,如果未加指定,就会使用配置中指定的默认scheme。一个HDFS文件或比如出错信息会输出到stderr,其他信息输出到stdout。使用方法:hadoopfscatURI[URI…]将路径指定文件的内容输出到stdout。hadoopfs-cathadoopfs-cat和put命令相似。- Hadoopfs–cphadoopfs–cp使用方法:hadoopfsdu此HadoopS命令显示 Hadoopfs使用方法:hadoopfs使用方法:hadoopfs使用方法:hadoopfsget[-ignorecrc][-文件以及CRC信息。hadoopfs–gethadoopfs–get 用法:hadoop命令选项描述用法:hadoopbalancerthreshold命令选 描用法:hadoopdatanode命令选 描-dfsadmindfsadmin-help命令能列出所有当前支持令。比如: -finalizeUpgrade用法:hadoop用法:hadoopnamenode[-format|[-upgrade|[-rollback|[-|[-命令选 描----- 用法:hadoopsecondarynamenode[-checkpoint[force]]|[-命令选项描-用法:hadoop这部分内容其实可以通过命令的Help以及介绍了解,这里主要侧重于介绍一下我用的比较多的几个命令。Hadoopdfs这个命令后面加参数就是对于HDFSLinux操作系统的Hadoopdfs–ls就是查看/usr/root Hadoopdfs–rmrxxx就是删 Hadoop的应用Hadoop利用Hadoop的好方法。种搜索引擎的,比如Amazon的A9和用于查找酒信息的AbleGrape垂直搜索引为一个并行数据处理引擎,它的表现非常突出。Hadoop最有趣的方面之一是MapandReduceWebWeb页面作为输当前,Yahoo!HadoopLinux10,000多个内核组成,有超过5PB字节的分布到各个DataNode。在它们的Web索引差不多有一万亿个AmazonElasticComputeCloud(EC2)构建一个包含20个节点的虚拟集群。事实上,使用Hadoop和EC2在36个小时内将4TB的TIFF图像(包括405K大TIFF图像,3.3MSGML405KXML文件)800KWebPNG图像。这种处理称为云计算,它是一种展示Hadoop的的独特方式。 Hadoop的系通过从hadoophadoop-metrics文件中就可以知道hadoopGanglia是有支持的,而且hadoop自家的Chukwa。以下收集了一些比较好的资料以作参考:Chukwa在的应用实 hadoop状态分析系统 hadoopganglia GangliaNagios,第1部分:Ganglia GangliaNagios,第2部分:使用Nagios hadoopwikimonitoring-hadoop-clusters-using-NameNode与JobTracker单点故障说痪或者说主master瘫痪,整个Hadoop也就瘫痪了。对于主master的工作(如备份、重启经验总结和注意事项(这部分是我在使用过程中花了一些时间走的弯路MasterSlave上的几个conf配置文件不需要全部同步,如果确定都是通Master去启动和关闭,那么Slave机器上的配置不需要去。但如果希望在任意一台机Hadoop,那么就需要全部保持一致了。MasterSlave机器上的/etc/hosts中必须把集群中机器都配置上去,就算在各IPIP就不需要去配置Host,结果发现在执行Reduce的时候总是卡住,在拷贝的时候就无法继续下去,如果在新增了节点或者删除节点的时候出现了问题,首先就去删除Slave的hadoop.tmp.dir,然后重新启动试试看,如果还是不行那就干脆把Master的hadoop.tmp.dir删除(dfs上的数据也会丢失),Master的hadoop.tmp.dir,那么就需要重新namenode–format。Map任务个数以及Reduce任务个数配置。前面分布式文件系统设计提到一个文件默认dfs.block.size应该是64M,也就是说如果你放置到HDFS上的数据小于64,那么将只有一个Block,此时会被放置到某一个DataNode中,这个可以通过使用命令:hadoopdfsadmin–report就可以看到各个节点的情况。也可以直接去某一个DataNode查看 urrent就可以看到那些block了。Block的数量将会直接影响到Map的个数。当然可以通过配置来设定Map和Reduce的任务个数。Map的个数通常默认和HDFS需要处理的blocks相同。也可以通过配置Map的数量或者配置minimumsplitsize来设定,实 总的来说出了问题或者启动的时候最好去看看日志,这样心里有底。新增IP(master)conf/slaves文件。$cd$bin/hadoop(或者:bin/start-也可调用bin/start-balancer.sh命令执行,也可加参数-threshold5threshold是平衡阈值,默认是10%,值越低各节点越平衡,但消耗时间也更长。balancer也可以在有 job的cluster上运行,默认必须确保slave的firewall已关闭确保新的slave的ip已经添加到master及其他slaves的/etc/hostsmaster及其他slave的ip添加到新的slave的/etc/hosts注:在0.21中执行bin/hadoop-daemon.shstartdatanode会提示该命令已,建议使用./hdfsdatanode命令,但是用后者反而会抛异常。删除比如我原来有10个节点的集群.现在停掉2个,但数据不能丢失,只能让它们的数据转8这道过程就是mission.我们不能直接把2停掉,要在停掉之前确定要下架的机器首先namenode务HADOOP_HOME下建立一excludes件.它是一个文本,里面每行就是想要停掉的主机名或IP.这里excludes放在$HADOOP_HOME下 修改conf/hdfs-site.xml文件/ 强制重新加载配置然后你可以通过bin/hadoopdfsadmin-report就可以查看到类似这样的信息:DatanodesDatanodesavailable:2(2total,0Name:missionStatus: missioninprogressConfiguredCapacity:37169479680(34.62GB)DFSUsed:94208(92NonDFSUsed:30112800768(28.04GB)DFSRemaining:7056584704(6.57GB)DFSUsed%:0%DFSRemaining%:Lastcontact:TueJul2615:31:17CSTName:missionStatus:ConfiguredCapacity:253935173632(236.5DFSUsed:94208(92NonDFSUsed:188234915840(175.31GB)DFSRemaining:65700163584(61.19GB)DFSUsed%:0%DFSRemaining%:Lastcontact:TueJul2615:31:16CST可以看到160在停止中( missionStatus: missioninprogress),执行完成 missionStatus: 再次编辑excludes文件添加允许的节点到列表中(dfs.hosts里来直接去掉节点,不做数据副本备份(dfs.hosts里去掉主机名退服的逆操作——excludedfs.hostsission的节点的退服,也就是 issioninprogress的节点重新变Normal(webindatanode启动失败,各slave节点的namespaceIDs与masters /app/hadoop/tmp/dfs/data:namenodenamespaceID=308967713;datanodenamespaceID=113030094atorg.apache.hadoop.dfs.DataStorage.doTransition(DataStorage.java:281)atorg.apache.hadoop.dfs.DataNode.startDataNode(DataNode.java:230)atatorg.apache.hadoop.dfs.DataNoderun(DataNode.java:1146)atorg.apache.hadoop.dfs.DataNodemain(DataNode.java:1326)Workaround1:StartfromIcantestifythatthefollowingstepssolvethiserror,butthesideeffectswon’tmakeyouhappy(meneither).ThecrudeworkaroundIhavefoundisto:StoptheDeletethedatadirectoryontheproblematicDataNode:thedirectoryisspecifiedbydfs.data.dirinconf/hdfs-site.xml;ifyoufollowedthistutorial,therelevantdirectoryis/app/hadoop/tmp/dfs/dataReformattheNameNode(NOTE:allHDFSdataislostduringthisprocess!)RestarttheWhendeletingalltheHDFSdataandstartingfromscratchdoesnotsoundlikeagoodidea(itmightbeokduringtheinitialsetup/testing),youmightgivethesecondapproachatry.BigthankstoJaredStehlerforthefollowingsuggestion.Ihavenottesteditmyselfyet,butfeelfreetotryitoutandsendmeyourfeedback.Thisworkaroundis“minimallyinvasive”asyouonlyhavetoeditonefileontheproblematicDataNodes:StoptheEditthevalueofnamespaceIDin/current/VERSIONtomatchthevalueofthecurrentNameNodeRestarttheDataNodeIfyoufollowedtheinstructionsinmytutorials,thefullpathoftherelevantfilesDataNode:/app/hadoop/tmp/dfs/d (background:dfs.data.dirisbydefaultsetto${hadoop.tmp.dir}/dfs/data,andwesethadoop.tmp.dirinthistutorialto/app/hadoop/tmp).IfyouwonderhowthecontentsofVERSIONlooklike,here’soneof#contentsof/current/VERSIONCannotstarttasktrackerbecausejava.lang.RuntimeException:Notahost:portpair:需配置mapred.job.tracker属性,在mapred-site.xml的configuration节点中配置(job-trackerhost为
vi/etc/security/limits.confsoftnofilehardnofile$cd$sudovi添 Toomanyfetch-要求本机ip要求要包含所有的服务器ip3mapreducereduce=0%conf/hadoop-env.sh中的export能够启动datanode,但无法,也无法结束的错namenode用来存放NameNode持久名字空间及事务日志的本地文件系统路径删除,同时将各DataNode上的dfs.data.dir的路径DataNode存放块数据的本地文件系统 的那个版本(可以查看/home/hadoop/NameDurrent 上面记录了版本信息),在重新格式化新的分布式系统文件时,最好先删除NameData目java.io.IOException:Couldnotobtain java.lang.OutOfMemoryError:Javaheap出现这种异常,明显是jvm内存不够得原因,要修改所有的datanode的jvmJava-Xms1024m-一般jvm的最大内存使用应该为总内存大小的一半,我们使用的8G内存,所以设置为解决 OutOfMemoryError问题<value>-Xmx800M-WiththerightJVMsizeinyourhadoop-site.xml,youwillhavetocopythistoallmaprednodesandrestartthecluster.-Hadoopwhileindexing.wheniusenutch1.0,getthisHadoopjava.io.IOException:Jobfailed!at我这儿出现的是outofmemory解决办法是在给运行主类org.apache.nutch.crawl.Crawl加上参数:- 部署Hadoop集群时,master与slave的均要关闭。关闭的根本目的也是为了图与HDFS常用值:hdfs://[或IP地址]值应该是唯一一个NameNode主服务器的地址。与 有关的地址及端口属mapred.job.tracker的值应该是唯一一个JobTracker主服务器的地址。附Hadoop历Hadoop这个名字不是一个缩写,它是一个虚构的名字。该项目的创建者,DougCutting如此解释Hadoop着可以大致从其名字猜测其功能,例如,jobtracker的任务就是MapReduce作业。从头开始构建一个网络搜索引擎是一个雄心勃勃的目标,不只是要编写一个复杂的、能够抓取和索引将无法扩展到拥有数十亿网页的网络。在2003年的一篇描述分布式文件系统(简称GFS)的论文为他们提供了及时的帮助,文中称正在使用此文件系统。GFS或类似的东西,可以解决他们在储节点。在2004年,他们开始写一个开放源码的应用,即Nutch的分布式文件系统(NDFS)。2004年,了,向全世界介绍了MapReduce。2005年初,Nutch的开发者在Nutch上有了Nutch中的NDFS和MapReduce实现的应用远不只是搜索领域,在2006年2月,他们从Nutch转移出来成为一个独立的Lucene子项目,称为Hadoop。大同一时间,DougCutting加入雅虎,Yahoo提供一个专门的团队和资源将Hadoop发展成一个可在网络上运行的系统(见后文的补充材料)20082月,雅14章的案例研究和Hadoop有介绍,Hadoop的为)Web的PDF文件。这个过程历时不到24小时,使用100台机器运行,如果不结合亚马逊的按小时的中声称,它的MapReduce实现执行1TB数据的排序只用了68秒。在2009年5月,有宣称Yahoo的团队使用Hadoop1TB的数据进行排序只花了62秒时间。主要组成部分:Crawler,从因特网网页;WebMap,构建一个网络地图;Indexer,为最佳页面构建天。在2005年初,WebMap所用的基础设施名为Dreadnaught,需要重新设计以适应节点的需求。EricBaldeschwieler(Eric14)组建了一个小团队,我们开始设计并原型化一个新的框架(原型为GFS和与此同时,我们在关注Hadoop(当时还是Nutch的一部分)及其进展情况。20061月,雅虎聘请了Doug助真正的客户使用这个新的框架,速度比原来预计的快许多。另一个明显的优点是Hadoop已经开源,较了一个200个节点的研究集群,WebMap的计划暂时搁置,转而为研究用户支持和发展Hadoop。Hadoop2004年--最初的版本(现在称为HDFS和MapReduce)由DougCutting和MikeCafarella开始实施。2005年12月--Nutch移植到新的框架,Hadoop在20个节点上稳定运行。20061月DougCutting加入--20062月--雅虎的网格计算团队采用Hadoop------0611月--600--071月--研究集群到900----0810月--10TB的数据--Hadoop的几个主要子项:HDFSHadoop(DistributedFileSystem)HDFSHadoopDistributedFileHBase:类似BigTable的分布式NoSQL列数据库。(HBase和Avro已经于2010年5月成为顶级Apache项目[1])参考: /cluster配置对Hadoop的配置通过 下的两个重要配置文件完成 src/core/core-default.xmlsrc/hdfs/hdfs-default.xmlandsrc/mapred/mapred-default.xml-只读的默认配置。conf/core-site.xmlconf/hdfs-site.xmlandconf/m
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 3《不懂就要问》教学设计2024-2025学年统编版语文三年级上册
- 道路拓宽建设合同范本
- 5建立良好的公共秩序-公共生活需要秩序(教学设计)统编版道德与法治四年级下册
- 2025届高考生物备考教学设计:第七章 生物的变异和进化之构建图像模型分析细胞分裂与可遗传变异的关系
- 购买蛋糕卷合同范本
- 采购教具合同范本
- 木门长期合同范本
- Unit 1 My Classroom Part A. Lets learn;Lets chant. (教学设计)-2024-2025学年人教PEP版英语四年级上册
- 教育产品合同范本
- 药店委托配送合同范本
- C语言大学实用教程课后参考答案苏小红
- 新部编版四年级下册小学语文全册课件PPT
- 高中人教物理选择性必修一第3章第5节多普勒效应课件
- 全套桥梁施工技术交底记录
- 2021年山东省威海市中考语文真题(解析版)
- 主动脉夹层的护理-ppt课件
- 高新技术企业认定申请书样例与说明
- 数据结构英文教学课件:chapter6 Tree
- 高压氧科工作总结高压氧科个人年终总结.doc
- 《政治学概论》教学大纲
- 食品生物化学习题谢达平(动态)
评论
0/150
提交评论