热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Hadoop教程(第三节)

MapReduce如上图位置,有一个事例jar包,我们可以运行测试一下。如上图,我们可以看到有很多参数,我们可以试着传入。上

MapReduce

在这里插入图片描述
如上图位置,有一个事例jar包,我们可以运行测试一下。
在这里插入图片描述
如上图,我们可以看到有很多参数,我们可以试着传入。

在这里插入图片描述
上述命令是将根路径hdfs下的文件里的不同单词做个数统计,并输出到/wc目录中。

网页显示如下。
在这里插入图片描述然后来体验一下在yarn上运行mapreduce,我们要修改下述配置文件。
在这里插入图片描述然后编辑该文件
在这里插入图片描述然后编辑yarn-site.xml
在这里插入图片描述
然后使用如下命令启动节点
在这里插入图片描述
然后再次运行mapreduce,注意输出目录要写一个新的目录。
在这里插入图片描述
启动测试
在这里插入图片描述

conclude

一、大数据
1.含义大数据指在一定时间范围内使用常规的软件无法处理的数据集合!2.特点①海量②高增长率③多样性④低价值密度二、Hadoop
1.含义狭义: Hadoop只代表hadoop框架本身!广义: hadoop代表整个hadoop体系,由hadoop框架和其他依赖于hadoop的其他框架共同组成!2.hadoop的组成
2.x版本HDFS: 负责大数据存储的一个分布式文件系统!
YARN: 负责为大数据计算程序提供资源申请,管理和调度的框架!MapReduce: 编程框架
Common: 常用的工具包2.x版本和1.x版本的区别:在1.x版本,MR既负责运行MR程序还负责为MR程序申请资源!Hadoop集群只能为自身的MR程序提供服务!在2.x版本,MR只负责MR程序的计算,资源的调度和管理由YARN负责!Hadoop集群,不仅能为自身的MR程序提供服务!还可以为第三方计算引擎,例如TeZ,Spark,Flink等提供计算资源的调度服务!三、HDFS中的核心进程1.核心进程Namenode(1个): 负责HDFS上所有文件元数据的管理!元数据: 文件的属性(文件名,大小,创建时间,所属主,由哪些块组成)职责: ①负责接受客户端的所有请求②负责接受DN上报的块信息③负责向DN分配任务,例如维护文件的副本数等Datanode(N个): 负责HDFS上所有文件数据的存储!SecondaryNamenode(N个): 负责协助Namenode工作!四、YARN中的核心进程1.核心进程ResourceManager(1个): 负责整个集群所有资源的管理和调度!职责: ①负责接受客户端的所有请求②负责接受NM上报的块信息③负责向NM分配任务,例如检查NM是否健康,是否在线等NodeManager(N个): 负责当前机器所有资源的管理和调度!五、MapReduce中的核心进程1.MapReduce是一个编程模型!这个模型由两个阶段组成,一个称为Map阶段,另一个称为Reduce阶段!在Map阶段和Reduce阶段分别启动若干进程负责运算!这些进程称为Task!在Map阶段启动的Task称为MapTask!在Reduce阶段启动的Task称为ReduceTask!将一个MapReduce程序称为一个Job!一个Job中会启动若干个Task!在Job启动时,Job会先创建一个MRAppMaster进程,由这个进程和RM进行通信,为Job中的每个Task申请计算所需要的资源!Task的请求,会被RM缓存到一个调度队列中,由NM领取Task,领取后NM会根据Task要求,提供计算资源!提供后,为了避免计算资源在当前Task使用时被其他的task抢占,NM会将资源封装到一个Container中!Container可以对计算资源进行隔离!六、安装
1.环境要求必须保证已经安装了JDK,有JAVA_HOME环境变量!2.安装解压在linux下编译的Hadoop!3. 建议将HADOOP_HOME提升为全局变量!后续的HADOOP体系中的所有的框架,都通过HADOOP_HOME找到hadoop的安装目录!将bin,sbin目录配置到PATH中!4.目录结构bin: 常用的工具hadoop所在的目录sbin: 提供对集群的管理功能,例如启动和停止进程!etc: 默认的配置文件目录七、使用
1. 配置文件hadoop有4个默认我配置文件,这4个文件会随着Hadoop启动时,自动加载!如果希望对这4个文件加载的默认属性进行覆盖!用户需要自定义配置文件!文件格式: core-site.xml----->core-default.xmlhdfs-site.xml----->hdfs-default.xmlyarn-site.xml----->yarn-default.xmlmapred-site.xml----->mapred-default.xml配置文件的位置:自定义位置: hadoop --confdir 配置文件的目录默认配置文件目录: $HADOOP_HOME/etc/hadoop2.HDFS的运行模式①本地模式: 使用当前计算机的文件系统作为HDFS的文件系统!fs.defaultFS=file:///(默认)②分布式文件系统: 通过运行NN,DN等进程,由这些进程组成一个分布式的系统,进行文件的读写!fs.defaultFS=hdfs://NN所在的主机名:90003.启动一个分布式文件系统
①在$HADOOP_HOME/etc/hadoop,配置core-site.xmlfs.defaultFS=hdfs://NN所在的主机名:9000
②配置Hadoop默认的工作目录,在$HADOOP_HOME/etc/hadoop,配置core-site.xmlhadoop.tmp.dir=配置一个当前用户有写权限的非tmp目录
③格式化NNhadoop namenode -format目的: ①生成NN的工作目录②在工作目录下生成NN所要使用的特殊的文件,例如VERSION,fsiamge000000注意: 一个集群搭建完成后,只需要格式化一次!④启动hadoop-daemon.sh start namenode|datanode⑤查看jpshttp://NN所运行的主机名:500704.MR的运行模式本地模式: 在本机使用多线程的方式模拟多个Task的运行!mapreduce.framework.name=local(默认)分布式模式: 在YARN上运行!mapreduce.framework.name=yarn(默认)5.配置MR在yarn上运行
①在$HADOOP_HOME/etc/hadoop,配置mapred-site.xmlmapreduce.framework.name=yarn
②配置YARN在$HADOOP_HOME/etc/hadoop,配置yarn-site.xml配置yarn.resourcemanager.hostname=RM运行的主机名yarn.xxxx-auxservice=mapreduce_shuffle
③启动YARNyarn-daemon.sh start resourcemanager | nodemanager④查看jpshttp://rm所运行的主机名:8088⑤提交作业hadoop jar xxx.jar 主类名 输入目录.. 输出目录要去: 输出目录必须不存在输入目录中必须全部是文件


推荐阅读
  •     这里使用自己编译的hadoop-2.7.0版本部署在windows上,记得几年前,部署hadoop需要借助于cygwin,还需要开启ssh服务,最近发现,原来不需要借助cy ... [详细]
  • mapreduce源码分析总结
    这篇文章总结的非常到位,故而转之一MapReduce概述MapReduce是一个用于大规模数据处理的分布式计算模型,它最初是由Google工程师设计并实现的ÿ ... [详细]
  • MR程序的几种提交运行模式本地模型运行1在windows的eclipse里面直接运行main方法,就会将job提交给本地执行器localjobrunner执行-- ... [详细]
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • Centos下安装memcached+memcached教程
    本文介绍了在Centos下安装memcached和使用memcached的教程,详细解释了memcached的工作原理,包括缓存数据和对象、减少数据库读取次数、提高网站速度等。同时,还对memcached的快速和高效率进行了解释,与传统的文件型数据库相比,memcached作为一个内存型数据库,具有更高的读取速度。 ... [详细]
  • 深入解析Linux下的I/O多路转接epoll技术
    本文深入解析了Linux下的I/O多路转接epoll技术,介绍了select和poll函数的问题,以及epoll函数的设计和优点。同时讲解了epoll函数的使用方法,包括epoll_create和epoll_ctl两个系统调用。 ... [详细]
  • Hadoop2.6.0 + 云centos +伪分布式只谈部署
    3.0.3玩不好,现将2.6.0tar.gz上传到usr,chmod-Rhadoop:hadophadoop-2.6.0,rm掉3.0.32.在etcp ... [详细]
  • ZooKeeper 学习
    前言相信大家对ZooKeeper应该不算陌生。但是你真的了解ZooKeeper是个什么东西吗?如果别人面试官让你给他讲讲ZooKeeper是个什么东西, ... [详细]
  • Hadoop源码解析1Hadoop工程包架构解析
    1 Hadoop中各工程包依赖简述   Google的核心竞争技术是它的计算平台。Google的大牛们用了下面5篇文章,介绍了它们的计算设施。   GoogleCluster:ht ... [详细]
  • 对于开源的东东,尤其是刚出来不久,我认为最好的学习方式就是能够看源代码和doc,測试它的样例为了方便查看源代码,关联导入源代 ... [详细]
  • 《Spark核心技术与高级应用》——1.2节Spark的重要扩展
    本节书摘来自华章社区《Spark核心技术与高级应用》一书中的第1章,第1.2节Spark的重要扩展,作者于俊向海代其锋马海平,更多章节内容可以访问云栖社区“华章社区”公众号查看1. ... [详细]
  • Kylin 单节点安装
    软件环境Hadoop:2.7,3.1(sincev2.5)Hive:0.13-1.2.1HBase:1.1,2.0(sincev2.5)Spark(optional)2.3.0K ... [详细]
  • 我们在之前的文章中已经初步介绍了Cloudera。hadoop基础----hadoop实战(零)-----hadoop的平台版本选择从版本选择这篇文章中我们了解到除了hadoop官方版本外很多 ... [详细]
  • MapReduce工作流程最详细解释
    MapReduce是我们再进行离线大数据处理的时候经常要使用的计算模型,MapReduce的计算过程被封装的很好,我们只用使用Map和Reduce函数,所以对其整体的计算过程不是太 ... [详细]
  • MapReduce 切片机制源码分析
     总体来说大概有以下2个大的步骤1.连接集群(yarnrunner或者是localjobrunner)2.submitter.submitJobInternal()在该方法中会创建 ... [详细]
author-avatar
lucky燕子加加加
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有