




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Hadoop基础操作Hadoop框架的核心设计为HDFS和MapReduce,HDFS负责海量数据的存储,MapReduce则负责海量数据的计算。对海量数据进行计算前,数据的存储是必要的一步操作,因此,需要先掌握HDFS分布式文件系统的基本操作。某社交网站有数百万注册用户,网站的服务器上保留了用户登录网站的日志记录,用户每登录一次网站,将在日志文件中记录一次用户的邮件地址,现有一份社交网站在2021年某一天的原始日志文件email_log.txt,共800万行记录,部分数据如下所示。任务背景HillarSt@CardBlvdsnaase.nop_b@Care2www.rosu.h@UseNM.netloabat.noadrienn_c@mailccszex.huCedricR@Jilli_Cohen@NCTTA.orgpref.hyogo.jpRobe_Peterson@AsianWiredVibo-Valentia.itMClay@JesusAnswershorten.noreginaada@FitMommiesoystre-slidre.novh@GAMPortlunner.no社交网站的运营管理者希望能定期获得用户在某天的登录次数信息,作为用户行为分析的基础数据,因此统计出日志文件中每个用户的登录次数,是一个迫切需要解决的实际任务。数据是该社交网站一天的日志数据,如果处理一周或一月的日志数据,那么数据量可能高达数千万或数亿条。当数据量较大时,传统数据库(如MySQL)的处理能力局限性也比较大。对于海量数据的计算处理,以数据库服务器为主的传统方式已经难以满足需求了。Hadoop框架正是解决大数据计算的有效方案。Hadoop有两大突出特点,即分布式存储与并行计算,而且即便在一般通用的服务器硬件环境下,也能发挥出积极的作用,因此本章将使用Hadoop框架实现社交网站的用户登录次数统计的任务。任务背景搭建并配置好Hadoop集群后,本章将通过一个社交网站用户访问日志的实例任务,讲解Hadoop的基础操作。首先介绍Hadoop的安全模式及其基本操作,包括查看、解除与开启安全模式。其次将介绍查看Hadoop集群基本信息的方法,重点介绍HDFS文件系统及其基本操作。再以Hadoop官方的示例程序包为例,介绍提交MapReduce任务至Hadoop集群运行的方法,并实现社交网站的用户登录次数统计任务。最后介绍多个MapReduce任务运行时管理方法,包括查询与中断MapReduce任务。任务背景1查看Hadoop集群的基本信息目录认识Hadoop安全模式2上传文件到HDFS目录3运行首个MapReduce任务4管理多个MapReduce任务5安全模式是保证一个系统保密性、完整性及可使用性的一种机制,一定程度上可以防止系统里的资源遭到破坏、更改和泄露,安全模式可以使整个系统持续可靠地正常运行。Hadoop集群也有安全模式,在安全模式下可保证Hadoop集群中数据块的安全性。本小节的任务是介绍Hadoop的安全模式,了解安全模式的作用,并学习查看、开启和解除安全模式的操作方法。任务描述安全模式是Hadoop的保护机制,保障系统不受侵坏。当处于安全模式时,文件系统只接收读数据的请求,而不接受删除、修改等变更请求。若没有安全模式,则Hadoop将处在不受保护的状态,可能存在如下安全风险。了解Hadoop安全模式Hadoop服务将不验证用户或其他服务。攻击者可以伪装成Hadoop服务。DataNode节点不会对节点上数据块的访问实施任何访问控制。Hadoop开发者设定了一个安全模式,以满足如下需求。了解Hadoop安全模式用户只能访问有权限访问的HDFS目录或文件。用户只能访问或修改自身的MapReduce任务。用户对Hadoop集群的相关服务要进行身份验证,以防未经授权的NameNode、DataNode、jobtracker或tasktracker服务。服务与服务之间也需要相互认证,以防未经授权的服务。Kerberos凭证的获取和使用对用户和应用程序是透明的,前提是操作系统在登录时为用户获取了Kerberos票证授予票证(TGT)。Kerberos是一种计算机网络授权协议,使用在非安全网络中,对个人通信以安全的手段进行身份认证。当启动Hadoop集群时,首先会进入安全模式,主要是为了检查系统中DataNode节点上的数据块数量和有效性。在Linux系统上启动Hadoop集群,启动完成后可以在本机的浏览器输入“http://master:9870”网址,查看HDFS的监控服务。查看、解除与开启Hadoop安全模式1.查看安全模式Summary模块下将提示安全模式信息,默认情况下刚开启集群时将自动开启安全模式,显示“SafemodeisON”的信息,说明安全模式已启动。衔接的信息为“Thereportedblocks0needsadditional1376blockstoreachthethreshold0.9990oftotalblocks1378.Theminimumnumberoflivedatanodesisnotrequired.Safemodewillbeturnedoffautomaticallyoncethethresholdshavebeenreached.”,这说明报告的数据块数是0块,如果要达到总数据块1378中的0.9990
(即阈值)还需要额外的1376个数据块。不需要活动数据节点的最小数目,一旦达到阈值,即使用的数据块个数达到总数据块数量的99.9%,安全模式将自动关闭。查看、解除与开启Hadoop安全模式因为数据块还没有加载到阈值,所以集群处于安全模式。等待一段时间,再次刷新网页,查看安全模式情况,将发现出现了“Safemodeisoff”信息,表示安全模式已自动关闭。除了在Web端查看安全模式状态外,还可以在Liunx终端使用“hdfsdfsadmin-safemodeget”命令查看。查看、解除与开启Hadoop安全模式当启动Hadoop集群时集群会开启安全模式,原因是DataNode的数据块数没有达到总块数的阈值。如果没有先关闭Hadoop集群时,而直接关闭了虚拟机,那么Hadoop集群也会进入安全模式,保护系统。当再次开启Hadoop集群时,系统会一直处于安全模式不会自动解除,这时使用“hdfsdfsadmin-safemodeleave”令可以解除安全模式。查看、解除与开启Hadoop安全模式2.解除和开启安全模式使用“hdfsdfsadmin-safemodeenter”命令则可以使集群进入安全模式。在安全模式中,用户只能读取HDFS上的数据,不能进行增加、修改等变更请求。例如,使用“hdfsdfs-mkdir/Hadoop”命令,在HDFS上创建一个/Hadoop目录,系统将会提示集群处于安全模式,不能创建/Hadoop目录查看、解除与开启Hadoop安全模式1查看Hadoop集群的基本信息目录认识Hadoop安全模式2上传文件到HDFS目录3运行首个MapReduce任务4管理多个MapReduce任务5Hadoop集群有两大核心功能,即分布式存储与并行计算。在向Hadoop集群提交任务前,需要先了解集群的存储资源与计算资源。Hadoop集群的数据存储,是通过HDFS实现的。HDFS分布式文件系统是由一个NameNode节点与多个DataNode节点组成的。查看HDFS文件系统的信息有两种方式,分别是命令行方式与浏览器方式。Hadoop集群的计算资源也是分布在集群的各个节点上的,通过ResourceManager与NodeManager协同调配。一般可以通过浏览器访问ResourceManager的监控服务端口查询Hadoop集群的计算资源。本小节的任务是查询集群的存储系统信息与计算资源信息。任务描述当HDFS文件系统完成启动时,在服务器集群上也将启动相关的监控服务。通过这些监控服务,即可查询到大量相与HDFS文件系统相关的信息。HDFS的监控服务默认是通过NameNode节点的9870端口进行访问。在本机浏览器的地址栏输入“http://master:9870”网址,查看当前HDFS文件系统的基本统计信息。查询集群的存储系统信息查询集群的存储系统信息表示HDFS文件系统可使用的剩余容量大小,目前为39.26GB。表示被非HDFS的应用所占用的存储总量,目前为10.18GB。ConfiguredCapacityLiveNodesDFSUsedNonDFSUsedDFSRemaining表示已配置的文件系统存储总量,目前为50.96GB。表示在线的数据节点(DataNode),目前共有3个。各存储容量之间的关系为Configured
Capacity等于Non
DFS
Used、DFSUsed和DFSRemaining的容量之和。表示已使用的HDFS存储总量,目前为1.52GB。继续单击页面中的“Datanodes”标签栏,可以显示出各数据节点的信息。在图中显示了组成HDFS的3个Datanode节点的状态与各自的存储使用情况。在HDFS中,数据是被分块进行存储的,每个数据块默认有3个副本,即每个数据节点上存储一份数据副本,因此各节点的存储用量是大致相等的。查询集群的存储系统信息Hadoop也提供了命令行查询HDFS文件系统资源信息的方式,即hdfsdfsadmin-report命令,该命令的基本语法格式如下。hdfsdfsadmin-report[-live][-dead][-decommissioning]查询集群的存储系统信息查询集群的存储系统信息-report-report-decommissioning-report-live-report-dead输出文件系统的基本信息及相关数据统计。输出文件系统中停用节点的基本信息及相关数据统计。输出文件系统中在线节点的基本信息及相关数据统计。输出文件系统中失效节点的基本信息及相关数据统计。例如,在master节点中,使用“hdfsdfsadmin-report–live”命令查看在线节点的基本信息。通过查询HDFS在线节点的基本信息,可以确定在当前Hadoop集群的HDFS文件系统中,共有3个可用的数据存储节点,即3个DataNde节点,可使用的存储总量为39.26GB。而每个DataNde节点的存储量则需参考HDFS数据副本的备份策略,在Hadoop集群的搭建过程中,配置文件hdfs-site.xml已指定了文件块的副本数为3,因此,可以推算出每个DataNode节点实际可供使用的存储量约为13GB。通过查询HDFS在线节点的基本信息,可初步了解当前文件系统的基本情况。若发现HDFS的NameNode和DataNode节点有异常情况,则方便相关技术人员采取对应的措施。例如,若发现HDFS可使用的存储容量不足5%,则需要考虑对HDFS的存储容量进行扩充。查询集群的存储系统信息ConfiguredCapacity:54716792832(50.96GB)PresentCapacity:43781386240(40.77GB)DFSRemaining:42152087552(39.26GB)DFSUsed:1629298688(1.52GB)DFSUsed%:3.72%ReplicatedBlocks: Underreplicatedblocks:2 Blockswithcorruptreplicas:0 Missingblocks:0 Missingblocks(withreplicationfactor1):0 Lowredundancyblockswithhighestprioritytorecover:0 Pendingdeletionblocks:0ErasureCodedBlockGroups: Lowredundancyblockgroups:0 Blockgroupswithcorruptinternalblocks:0 Missingblockgroups:0 Lowredundancyblockswithhighestprioritytorecover:0 Pendingdeletionblocks:0
-------------------------------------------------Livedatanodes(3):
Name:31:9866(slave1)Hostname:slave1DecommissionStatus:NormalConfiguredCapacity16.99GB)DFSUsed:543096832(517.94MB)NonDFSUsed:3656306688(3.41GB)DFSRemaining13.08GB)DFSUsed%:2.98%DFSRemaining%:76.98%ConfiguredCacheCapacity:0(0B)CacheUsed:0(0B)CacheRemaining:0(0B)CacheUsed%:100.00%CacheRemaining%:0.00%Xceivers:1Lastcontact:WedMay2616:06:09CST2021LastBlockReport:WedMay2610:53:16CST2021NumofBlocks:1378
Name:32:9866(slave2)Hostname:slave2DecommissionStatus:NormalConfiguredCapacity16.99GB)DFSUsed:543100928(517.94MB)NonDFSUsed:3639062528(3.39GB)DFSRemaining13.09GB)DFSUsed%:2.98%DFSRemaining%:77.07%ConfiguredCacheCapacity:0(0B)CacheUsed:0(0B)CacheRemaining:0(0B)CacheUsed%:100.00%CacheRemaining%:0.00%Xceivers:1Lastcontact:WedMay2616:06:07CST2021LastBlockReport:WedMay2610:18:32CST2021NumofBlocks:1378
Name:33:9866(slave3)Hostname:slave3DecommissionStatus:NormalConfiguredCapacity16.99GB)DFSUsed:543100928(517.94MB)NonDFSUsed:3640037376(3.39GB)DFSRemaining13.09GB)DFSUsed%:2.98%DFSRemaining%:77.06%ConfiguredCacheCapacity:0(0B)CacheUsed:0(0B)CacheRemaining:0(0B)CacheUsed%:100.00%CacheRemaining%:0.00%Xceivers:1Lastcontact:WedMay2616:06:09CST2021LastBlockReport:WedMay2612:04:35CST2021NumofBlocks:1378Hadoop集群的计算资源,是由YARN资源管理器的ResourceManager进行管理的。通过ResourceManager的监控服务,可以方便地查询目前集群上的计算资源信息。在本机浏览器的地址栏输入“http://master:8088/cluster/nodes”网址,查看当前集群的计算资源信息。查询集群的计算资源信息了解分布式文件系统——HDFSActiveNodesMemoryTotal表示在线的计算节点,目前为3个。表示可使用的内存总量,目前为6GB。VcoresTotal表示可使用的CPU核心,目前共有3个。了解分布式文件系统——HDFSRackNodeAddress表示机架名称,默认机架名为default-rack。表示计算节点的名称及端口。Containers表示执行计算任务的容器数量,无任务时值为0。了解分布式文件系统——HDFSMemUsed与MemAvail表示实际内存使用数量与可用内存的数量。VCoresUsed与VCoresAvail表示实际CPU核心使用数量与可用CPU核心的数量。单击集群的计算资源信息页面上的“slave1:8042”超链接,可以显示计算节点slave1的各项资源信息。可初步了解当前集群的计算资源情况,主要包括集群上的可用计算节点、可用的CPU核心与内存,以及各个节点自身的CPU及内存资源。在该Hadoop集群中,有3个可用的计算节点,可用的内存总量为6GB,可用的CPU核心有3个,其中每个节点各有2GB的内存与一个CPU核心。查询集群的计算资源信息1查看Hadoop集群的基本信息目录认识Hadoop安全模式2上传文件到HDFS目录3运行首个MapReduce任务4管理多个MapReduce任务5HDFS是Hadoop的核心组件之一,负责文件数据的存储。本小节的任务如下。了解HDFS文件系统,以及HDFS与其他文件系统之间的关系。其次介绍HDFS文件系统的基本操作。将存储在Linux本地中的日志文件email_log.txt上传至HDFS的/user/root/目录下。任务描述文件系统是对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。具体地说,HDFS文件系统负责为用户创建、写入、读出、修改和转储文件,当用户不再使用时删除文件等。了解HDFS文件系统Windows操作系统Linux操作系统安装于大部分个人计算机中,使用者将文件存储在磁盘驱动器(如D盘、E盘)的目录中。在大部分企业服务器中,更多的是使用此操作系统,Linux文件系统以及类Linux的文件系统均提供了树状的文件目录结构,可以供使用者存储或读取文件。Hadoop集群也有专有的文件系统,即HDFS,HDFS也使用了类Linux的目录结构进行文件存储。以第2章安装及配置的Hadoop集群为例,介绍HDFS与本地计算机的文件系统、Linux本地的文件系统之间的关系。了解HDFS文件系统在使用HDFS文件系统前,需要对HDFS所存储的内容有一定的了解,可以通过浏览HDFS目录结构与文件列表进行查看。在本地计浏览器的地址栏输入“http://master:9870”网址,远程访问HDFS的监控服务端口。当需要访问HDFS上的目录及文件时,可以单击网页的“Utilities”标签栏,在下拉选项中选择“Browsethefilesystem”选项。了解HDFS文件系统与Linux文件系统相似,根目录“/”是HDFS所有目录的起始点。HDFS的根目录“/”下的目录列表。继续单击图中的“test”超链接,将可以浏览/test目录下的内容。图中显示了HDFS的/test目录下的列表,此目录下有一个文件1.txt。以此类推,可以通过单击界面上的目录链接,浏览更多的子目录。继续单击图中的文件“1.txt”超链接,在弹出的新窗口中单击“Headthefile(first32K)”选项,将在窗口下方出现“Filecontents”文本显示框,显示文件前32KB的内容。了解HDFS文件系统假定已有数据文件data.txt,存储在本地计算机(Windows系统)的E盘中,现需要将该数据文件上传至HDFS的/user/root/目录下,常用的解决方法如下。文件上传的操作流程如下,分为两步。在本地计算机中使用SSH或FTP工具上传文件至Linux本地的目录(master节点),如/root/hadoop/目录。在master节点终端,使用HDFS命令,上传文件至HDFS的/user/root/目录下。同理,也可以通过逆向操作进行文件的下载,即将HDFS上的文件下载至本地计算机中。了解HDFS文件系统在集群服务器的终端,输入“hdfsdfs”命令,按“Enter”键回车后即可看到HDFS基础操作命令的使用帮助。“[-mkdir[-p]<path>...]”的命令可用于创建目录,参数<path>用以指定创建的新目录。在HDFS中创建/user/dfstest目录,查看在HDFS文件目录/user/下的文件列表,可查看到新创建的目录。“hdfsdfs-mkdir<path>”的命令只能逐级地创建目录,如果父目录不存在,那么使用该命令将会报错。若加上参数“-p”,则可以同时创建多级目录。掌握HDFS的基本操作1.创建目录创建了新目录/user/dfstest后,即可向该目录上传文件。通过hdfsdfs命令查看上传文件命令的使用帮助。掌握HDFS的基本操作2.上传与下载文件命
令解
释hdfsdfs[-copyFromLocal[-f][-p][-l]<localsrc>...<dst>]将文件从本地文件系统复制到HDFS文件系统,主要参数<localsrc>为本地文件路径,<dst>为复制的目标路径hdfsdfs[-moveFromLocal<localsrc>...<dst>]将文件从本地文件系统移动到HDFS文件系统,主要参数<localsrc>为本地文件路径,<dst>为移动的目标路径hdfsdfs[-put[-f][-p][-l]<localsrc>...<dst>]将文件从本地文件系统上传到HDFS文件系统,主要参数<localsrc>为本地文件路径,<dst>为上传的目标路径以master中的本地文件a.txt文件为例,文件内容如下,将master中的本地文件a.txt上传至HDFS的/user/dfstest目录下,其中moveFromLocal、put两个命令对上传至HDFS的文件进行了重命名。在/user/dfstest目录下可以看到刚刚创建的3个文件。掌握HDFS的基本操作IhaveapenIhaveanapplemoveFromLocal选项是将本地文件移动到HDFS,即执行命令后Linux系统本地文件a.txt将被删除。通过hdfsdfs命令可以查看下载文件命令的使用帮助。分别使用表中的两个命令下载HDFS的/user/dfstest目录中的a.txt和c.txt文件至Linux本地目录/data/hdfs_test/中。掌握HDFS的基本操作命
令解
释hdfsdfs[-copyToLocal[-p][-ignoreCrc][-crc]<src>...<localdst>]将文件从HDFS文件系统复制到本地文件系统,主要参数<src>为HDFS文件系统路径,<localdst>为本地文件系统路径hdfsdfs[-get[-p][-ignoreCrc][-crc]<src>...<localdst>]获取HDFS文件系统上指定路径的文件到本地文件系统,主要参数<src>为HDFS文件系统路径,<localdst>为本地文件系统路径当用户想查看某个文件内容时,可以直接使用HDFS命令。HDFS提供了两种查看文件内容的命令。分别使用表中的两种命令查看HDFS的/user/dfstest目录下文件a.txt和b.txt的具体内容。掌握HDFS的基本操作3.查看文件内容命
令解
释hdfsdfs[-cat[-ignoreCrc]<src>...]查看HDFS文件内容,主要参数<src>指定文件路径hdfsdfs[-tail[-f]<file>]输出HDFS文件最后1024字节,主要参数<file>指定文件当HDFS上的某个文件或目录被确认不再需要时,可以选择删除,释放HDFS的存储空间。在HDFS的命令帮助文档中,HDFS主要提供了两种删除文件或目录的命令。掌握HDFS的基本操作4.删除文件或目录命
令解
释hdfsdfs[-rm[-f][-r|-R][-skipTrash]<src>...]删除HDFS上的文件,主要参数-r用于递归删除,<src>指定删除文件的路径hdfsdfs[-rmdir[--ignore-fail-on-non-empty]<dir>...]若删除的是一个目录,则可以用该方法,主要参数<dir>指定目录路径先在HDFS的/user/dfstest目录下创建一个测试目录rmdir,再分别删除/user/dfstest目录下的c.txt文件和新创建的rmdir目录。在执行删除命令后,查看HDFS的/user/dfstest目录下的内容,已成功删除c.txt文件和rmdir目录。掌握HDFS的基本操作将用户日志文件email_log.txt上传至HDFS目录/user/root/,并在Web端查看上传结果,实现步骤如下。将本地计算机硬盘中的用户日志文件email_log.txt传输至Linux本地的/root/hadoop/目录。打开XmanagerEnterprise附带的文件传输工具Xftp,连接集群服务器的master节点,在左侧的本地计算机的文件系统中找到将要上传的文件。任务实现在master节点上执行HDFS命令,上传email_log.txt至HDFS的/user/root/目录下。查看HDFS的/user/root/目录,email_log.txt文件上传成功。任务实现查看HDFS的/user/root/目录下email_log.txt文件的内容。在该文件页面单击“Blockinformation”旁边的“Block0”下拉窗口,可选择切换文件存储的板块,email_log.txt文件上传时被分为两个数据块进行存储,每个数据块都有3个副本,分别存储在3个不同的数据节点上。Hadoop3.x版本默认设置的HDFS数据块大小为128MB,email_log.txt文件的原始大小为216MB,因此email_log.txt文件被拆分为两个数据块。这两个数据块累计占用了256MB的存储空间。举一个极端的例子,如果需要存储一个只有1KB的文件,那么HDFS也会分配一个128MB的数据块空间存储该文件。HDFS本身的优势是用于存储大数据文件,若存储大量的小文件则会造成资源的浪费。任务实现1查看Hadoop集群的基本信息目录认识Hadoop安全模式2上传文件到HDFS目录3运行首个MapReduce任务4管理多个MapReduce任务5MapReduce是Hadoop的数据处理引擎,是运算程序的核心。Hadoop官方提供了一个hadoop-mapreduce-examples-3.1.4.jar示例程序包给使用者初步运行MapReduce任务。在该示例程序包中,存在一个词频统计模块,调用该模块即可完成用户登录次数统计任务。本小节的任务是提交运行首个MapReduce任务,并对HDFS的/user/root/目录下的日志文件email_log.txt进行计算,调用官方示例程序包中的词频统计模块统计出每个用户的登录次数。任务描述在Linux本地的$HADOOP_HOME/share/hadoop/mapreduce/目录下可以找到Hadoop官方示例程序包hadoop-mapreduce-examples-3.1.4.jar。该程序包封装了一些常用的测试模块。在测试模块列表中,模块wordcount正好适合对email_log.txt日志文件中的数据进行登录次数的统计。了解Hadoop官方的示例程序包模块名称内
容multifilewc统计多个文件中单词的数量pi应用拟蒙特卡罗(Quasi-MonteCarlo)算法估算圆周率π的值randomtextwriter在每个数据节点随机生成一个10GB的文本文件wordcount对输入文件中的单词进行频数统计wordmean计算输入文件中单词的平均长度wordmedian计算输入文件中单词长度的中位数wordstandarddeviation计算输入文件中单词长度的标准差提交MapReduce任务,通常使用hadoopjar命令。hadoopjar命令的基本语法格式如下。hadoopjar<jar>[mainClass]args因为hadoopjar命令的附带参数较多,所以需要结合实际任务,对该命令的各项参数依次进行说明。使用hadoopjar命令对email_log.txt日志文件中的数据进行登录次数的统计。提交MapReduce任务给集群运行针对上一页PPT中hadoopjar命令的常用参数解释说明如下。提交MapReduce任务给集群运行Hadoop官方提供的示例程序包,其中包括词频统计模块(wordcount)。程序包中的主类名称。$HADOOP_HOME/user/root/output/user/root/email_log.txtwordcounthadoop-mapreduce-examples-3.1.4.jar指主机中设置的环境变量(参考/etc/profile内容)。此处的$HADOOP_HOME指的是Linux本地的/usr/local/hadoop-3.1.4目录。HDFS上的输入文件名称。HDFS上的输出文件目录。向集群提交任务后,hadoopjar执行MapReduce任务时的日志输出信息,其中的一些关键信息有助于用户检查MapReduce任务执行的过程与状态。job_1621994265091_0001:表示此项任务的ID,通常也被称为作业号。2021-05-2617:57:53,999INFOmapreduce.Job:map0%reduce0%:表示将开始Map操作。2021-05-2617:58:23,279INFOmapreduce.Job:map100%reduce0%:表示Map操作完成。2021-05-2617:58:33,795INFOmapreduce.Job:map100%reduce100%:表示Reduce操作完成。2021-05-2617:58:33,807INFOmapreduce.Job:Jobjob_1621994265091_0001completedsuccessfully:表示此作业成功完成。Mapinputrecords=8000000:表示输入的记录共有800万条(对应原始文件中的800万行记录)。Reduceoutputrecords=3896706:表示输出的结果共有3896706条。提交MapReduce任务给集群运行2021-05-2617:57:39,167INFOclient.RMProxy:ConnectingtoResourceManageratmaster/30:80322021-05-2617:57:40,090INFOmapreduce.JobResourceUploader:DisablingErasureCodingforpath:/tmp/hadoop-yarn/staging/root/.staging/job_1621994265091_00012021-05-2617:57:40,535INFOinput.FileInputFormat:Totalinputfilestoprocess:12021-05-2617:57:40,649INFOmapreduce.JobSubmitter:numberofsplits:22021-05-2617:57:40,966INFOmapreduce.JobSubmitter:Submittingtokensforjob:job_1621994265091_00012021-05-2617:57:40,968INFOmapreduce.JobSubmitter:Executingwithtokens:[]2021-05-2617:57:41,209INFOconf.Configuration:resource-types.xmlnotfound2021-05-2617:57:41,209INFOresource.ResourceUtils:Unabletofind'resource-types.xml'.2021-05-2617:57:41,733INFOimpl.YarnClientImpl:Submittedapplicationapplication_1621994265091_00012021-05-2617:57:41,799INFOmapreduce.Job:Theurltotrackthejob:http://master:8088/proxy/application_1621994265091_0001/2021-05-2617:57:41,799INFOmapreduce.Job:Runningjob:job_1621994265091_00012021-05-2617:57:53,995INFOmapreduce.Job:Jobjob_1621994265091_0001runninginubermode:false2021-05-2617:57:53,999INFOmapreduce.Job:map0%reduce0%2021-05-2617:58:14,187INFOmapreduce.Job:map28%reduce0%2021-05-2617:58:15,201INFOmapreduce.Job:map61%reduce0%2021-05-2617:58:18,233INFOmapreduce.Job:map78%reduce0%2021-05-2617:58:20,260INFOmapreduce.Job:map85%reduce0%2021-05-2617:58:23,279INFOmapreduce.Job:map100%reduce0%2021-05-2617:58:33,795INFOmapreduce.Job:map100%reduce100%2021-05-2617:58:33,807INFOmapreduce.Job:Jobjob_1621994265091_0001completedsuccessfully2021-05-2617:58:33,913INFOmapreduce.Job:Counters:53 FileSystemCounters FILE:Numberofbytesread=416431057 FILE:Numberofbyteswritten=585286936 FILE:Numberofreadoperations=0 FILE:Numberoflargereadoperations=0 FILE:Numberofwriteoperations=0
HDFS:Numberofbytesread=226383985 HDFS:Numberofbyteswritten=114167885 HDFS:Numberofreadoperations=11 HDFS:Numberoflargereadoperations=0 HDFS:Numberofwriteoperations=2 JobCounters Launchedmaptasks=2 Launchedreducetasks=1 Data-localmaptasks=2 Totaltimespentbyallmapsinoccupiedslots(ms)=189408 Totaltimespentbyallreducesinoccupiedslots(ms)=53324 Totaltimespentbyallmaptasks(ms)=47352 Totaltimespentbyallreducetasks(ms)=13331 Totalvcore-millisecondstakenbyallmaptasks=47352 Totalvcore-millisecondstakenbyallreducetasks=13331 Totalmegabyte-millisecondstakenbyallmaptasks=96976896 Totalmegabyte-millisecondstakenbyallreducetasks=27301888 Map-ReduceFramework Mapinputrecords=8000000 Mapoutputrecords=8000000 Mapoutputbytes=250379675 Mapoutputmaterializedbytes=168189616 Inputsplitbytes=214 Combineinputrecords=12301355 Combineoutputrecords=9352725 Reduceinputgroups=3896706 Reduceshufflebytes=168189616 Reduceinputrecords=5051370 Reduceoutputrecords=3896706 SpilledRecords=17558337 ShuffledMaps=2
FailedShuffles=0 MergedMapoutputs=2 GCtimeelapsed(ms)=1209 CPUtimespent(ms)=41140 GCtimeelapsed(ms)=1209 CPUtimespent(ms)=41140Physicalmemory(bytes)snapshot=702377984 Virtualmemory(bytes)snapshot=10800414720 Totalcommittedheapusage(bytes)=521936896 PeakMapPhysicalmemory(bytes)=206540800 PeakMapVirtualmemory(bytes)=3598184448 PeakReducePhysicalmemory(bytes)=309469184 PeakReduceVirtualmemory(bytes)=3604045824 ShuffleErrors BAD_ID=0 CONNECTION=0 IO_ERROR=0 WRONG_LENGTH=0 WRONG_MAP=0 WRONG_REDUCE=0 FileInputFormatCounters BytesRead=226383771 FileOutputFormatCounters BytesWritten=114167885执行整个任务,累计用时40秒左右。在相同硬件资源的条件下,基于Hadoop集群的并行计算,其执行效率是很高的。任务执行完成后,在HDFS的/user/output/输出目录下将生成两个新文件,一个是_SUCCESS标识文件,表示任务执行完成;另一个是part-r-00000文件,即任务执行完成后产生的结果文件,查看part-r-00000文件的内容。在图中,显示了两列数据,第1列是用户名,第2列为该用户的登录次数。统计用户登录次数的任务到此已完成。提交MapReduce任务给集群运行1查看Hadoop集群的基本信息目录认识Hadoop安全模式2上传文件到HDFS目录3运行首个MapReduce任务4管理多个MapReduce任务5Hadoop是一个多任务系统,可以同时为多个用户、多个作业处理多个数据集。用户可以在本地计算机的浏览器中输入“http://master:8088/”网址,打开Hadoop集
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 临时用电安全技术措施在工厂的实践
- 2025年幼儿园建国70周年亲子读书活动方案
- 活动参与证书适用于各类活动参与证明(8篇)
- 高二地理生物世界观塑造活动教案
- 青少年道德与法治研讨会计划
- 教育机构提升资金使用效率的措施
- 2025年汽车分电器盖项目市场调查研究报告
- 2025年抗裂防水抺面胶浆项目市场调查研究报告
- 2025年全棉提花/平织/素色地巾项目市场调查研究报告
- 财政学专业实习期间的挑战与收获
- 小型设备购买协议书
- 第五版-FMEA培训教材-新版
- 食品安全与日常饮食智慧树知到期末考试答案章节答案2024年中国农业大学
- PE袋化学品安全技术说明书MSDS(聚乙烯塑胶袋)
- 七人学生小品《如此课堂》剧本台词手稿
- GB/T 31586.1-2015防护涂料体系对钢结构的防腐蚀保护涂层附着力/内聚力(破坏强度)的评定和验收准则第1部分:拉开法试验
- 大坝安全监测培训课件
- 高等数学上册ppt课件完整版
- 电力建设热工热控作业指导书
- 甲醇及制氢装置预试车方案
- 分子的立体构型
评论
0/150
提交评论