`
357236417
  • 浏览: 9335 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

大数据之路(一)

阅读更多

大数据之路()hadoop

所谓的hadoop,是Apache公司引入的一个分布式系统框架,它实现了一个分布式文件系统(HDFS),可以以流的形式访问系统数据,hadoop的有点有很多,比如可靠性、高效性、可伸缩性、高容错性和提供开源代码。

hadoop基本架构

由两部分组成分布式文件系统HDFS和分布式系统框架MapReduce

HDFS组件:

Client:提供文件系统接口,与NamenodeDataNode交互访问HDFS中的文件

 

NameNode:整个集群中只有一个,管理目录树元数据并以“fsimage(元数据镜像文件)editlog(HDFS文件改动日志)的形式存放在本地磁盘,此外,它还监控DataNode健康状态

 

SecondaryNameNode:定期合并fsimageedits并存储

 

DataNode每个slave节点有一个,存储实际数据,并定期汇报给NameNode,以默认64M大小的block为单位组织文件

 

 

MapReduce组件:

Client提交MR程序到JobTracker端,可供用户产看作业运行状态

 

JobTracker负责资源监控和作业调度

 

TaskTracker将本节点的资源使用情况和任务运行情况汇报给JobTracker,执行JobTracker发来的命令

 

Task分为Map TaskReduce Task以“split”为单位进行处理,Map Taskslip迭代解析成一个个key/value对,交由map()进行处理,最终临时数据被分成若干partition交由Reduce Task处理,Reduce Task处理再对读取数据,对key/value进行排序,读取<key,value list>,调用reduce()函数处理,并将结果存储在HDFS

hadoop平台搭建

要想使用hadoop,先要搭建平台,前人给我们留下了宝贵博客

http://weixiaolu.iteye.com/blog/1401931,里面有详尽的搭建过程,

安装过程中注意配置好hadoop/conf目录下的hadoop-env.shcore-site.xmlmapred-site.xmlhdfs-site.xml文件,再在masters和slaves文件中填写localhost(因为是单机版)。搭建好之后在单机上运行过程如下:cd /usr/local/hadoop

bin/hadoop namenode -format  (格式化hdfs文件系统)

bin/start-all.sh

最后用jps检测是否启动成功 启动成功应该有下面几个进程

NameNode SecondaryNameNode TaskTracker DataNode JobTracker Jps

hadoop命令

hadoop fs对HDFS进行操作的命令

ls 列出目录及文件信息

lsr 循环列出目录、子目录及文件信息 

put 复制文件

cat 查看文件内容

rm 删除文件

rmr 删除目录以及子目录

copyFromLocal 从本地系统复制文件到HDFS系统

copyToLocal 从HDFS复制文件到本地

chmod 修改权限

du 显示该目录中每个文件或目录的大小 

text 显示文件内容,当文件为压缩文件时会先解压缩

MR接口体系

MapReduce接口体系结构包括InputFormat、Mapper、Partitioner、Reducer和OutputFormat

Mapper/Reducer解析

Mapper/Reducer中封装了应用程序的数据处理逻辑。为了简化接口,MapReduce要求所有存储在底层分布式文件系统上的数据要解析成key/value的形式,并交给map reduce函数处理,产生另外的key/value,Mapper的类图如下:



 

 

包括初始化、Map操作清理三部分

 

初始化:Mapper继承JobConfigurable接口。该接口中的configure方法通过JobConf参数对Mapper进行初始化

 

Map操作:MapReduce框架通过InputFormatRecordReaderInputSplit获取一个个key/value对,并交给下面的map()函数处理

void map(K1 key, V1 value, OutPutCollector<K2, V2> output, Reporter reporter) throws IOException;

OutPutCollectorReporter两个类型的参数用来输出结果和修改Counter值。 

清理:Mapper通过继承Closeable接口获得close方法,用户通过实现该方法对Mapper进行清理。

 

 

Hadoop MapReduce自带的Mapepr/Reducer实现的类层次图

 

 

ChainMapper:支持链式作业

IdentityMapper/Reducer:直接将输入的key/value输出

InvertMapper:交换keyvalue的位置

RegexMapper:正则表达式字符串匹配

TokenMapper:将字符串分割成若干个token

LongSumReduce:以key为组,对long类型的value求累加和

新版API改动:

1.Mapper由接口变为抽象类,不继承JobConfigurableCloseable两个接口,添加setupcleanup两个方法进行初始化和清理工作。

2.参数封装到Context对象中

3.添加run方法,方便用户定制map()函数调用方法

4.Reducer遍历value的迭代器类型变为java.lang.Iterable,使用户能采用“foreach”形式遍历所有value

  • 大小: 66.7 KB
  • 大小: 32.1 KB
分享到:
评论

相关推荐

    阿里巴巴 大数据之路

    阿里巴巴,作为距离大数据最近的公司之一,近几年对大数据却鲜有...《大数据之路:阿里巴巴大数据实践》就是在这个过程中,由阿里巴巴数据技术及产品部沉淀下来的大数据知识与实践,值得每一位与大数据相关的人阅读。

    阿里大数据之路:阿里巴巴大数据实践-339页.zip

    《阿里大数据之路:阿里巴巴大数据实践》是一本深入探讨阿里巴巴集团在大数据领域实践经验的书籍,共计339页,全面展示了阿里巴巴在大数据领域的技术积累和创新应用。这本书籍旨在分享阿里巴巴如何利用大数据技术来...

    阿里大数据之路——关键总结版.pdf

    阿里大数据之路的总结主要涵盖了大数据开发的关键技术和架构,包括数据的采集、存储、处理和分析等方面。以下是对这些内容的详细解析: 1. 数据采集 数据采集是大数据流程的第一步,涉及对Web和APP产生的数据进行...

    阿里巴巴大数据之路——数据技术篇.pdf

    阿里巴巴大数据之路的数据技术篇主要探讨了企业大数据处理的架构及其核心组成部分,包括数据采集、计算、服务和应用四个层面。在整体架构中,数据采集层使用DataX等工具进行数据同步,数据计算层依赖MaxCompute这样...

    阿里巴巴大数据实践之路-9.pdf

    阿里巴巴的大数据实践之路中,数据化运营是非常重要的一方面。阿里巴巴使用数据仓库、数据加工流水线、EDW、ADM、CDM模型等技术,实现了数据化运营。该技术可以实现数据的自动化加工、数据的实时处理和数据的智能...

    阿里巴巴大数据实践之路.pdf

    阿里巴巴大数据实践之路 阿里巴巴是一家数据公司,阿里大数据发展历程可以分为三个阶段:Data 1.0、Data 2.0 和 Data 3.0。Data 1.0 主要关注数据仓库(DW)和商业智能(BI),旨在“看”数据;Data 2.0 着重于数据...

    大数据实践之路:数据中台数据分析产品应用.pptx

    《大数据实践之路:数据中台数据分析产品应用》是一本全面介绍大数据实践的书籍,主要探讨了数据中台和数据分析产品在大数据应用中的核心作用和实践经验。本书深入浅出地阐述了数据中台和数据分析产品的基本概念、...

    Redis大数据之路.docx

    Redis大数据之路是一篇讲述Redis在大数据场景下的应用和经验教训的文章。下面是该文档中的关键知识点: 1. 关于大数据: 大数据可以分为线下大数据和线上大数据两种,前者是指数据量非常大无法存储在单台机器中,而...

    大数据之路:阿里巴巴大数据实践

    《大数据之路:阿里巴巴大数据实践》是一本深度剖析阿里巴巴集团在大数据领域实践经验的著作,对于希望了解和掌握大数据技术,特别是对Java开发者来说,这是一份不可多得的学习资源。本书全面展示了阿里巴巴如何利用...

    大数据架构商业之路

    《大数据架构商业之路》这本书深入探讨了如何将大数据技术与商业实践相结合,为读者揭示了从业务需求出发,构建高效、可靠的大数据架构的过程。在大数据的领域中,Hadoop和流处理、批处理等技术扮演着至关重要的角色...

    《大数据之路:阿里巴巴大数据实践》

    《大数据之路:阿里巴巴大数据实践》是一本深度探讨阿里巴巴在大数据领域的实践经验的专业书籍。该书以PDF格式提供,是学习和理解大数据技术如何在实际业务场景中应用的重要参考资料。结合“大数据”、“实践”和...

    大数据综合实验一 实现简易浏览推荐系统.pdf

    大数据综合实验一 实现简易浏览推荐系统.pdf 大数据综合实验一:实现简易浏览推荐系统是一种基于大数据技术的浏览推荐系统,旨在推荐用户可能感兴趣的帖子。该系统通过对用户浏览日志的分析,推荐用户可能感兴趣的...

    大数据技术之高频面试题8.0.2.pdf

    大数据技术之高频面试题8.0.2.pdf 以下是从给定文件中生成的相关知识点: Linux和Shell * Linux常用高级命令:包括文件管理、进程管理、磁盘管理、网络管理等命令。 * Shell常用工具及写过的脚本:包括sed、awk、...

    大数据技术概论_大数据技术之大数据概论.pdf

    大数据技术,如Hadoop,作为分布式系统基础架构,解决了大规模数据的存储和计算问题,其发展历程从Lucene和Nutch开始,逐渐发展成为一个涵盖多个组件的大数据生态系统,为企业数据部的业务流程和组织结构设计提供了...

    2022年中国大数据产业一级市场纵览(32页).pdf

    标题“2022年中国大数据产业一级市场纵览”以及描述“2022年中国大数据产业一级市场纵览”表明,该文档是一份关于中国大数据产业在2022年一级市场(一级市场通常指的是企业间进行原始股票发行的市场,不涉及股票的二...

    大数据Epub文档

    本书是国内绝大多数高校采用的知名教材《云计算》(1~3版)的姊妹篇,是中国大数据专家委员会刘鹏教授联合国内多位专家历时两年的心血之作。大数据领域一直缺乏一本权威教材,希望本书能够填补空白。本书系统地介绍...

    尚硅谷大数据技术之模板虚拟机环境准备1

    【尚硅谷大数据技术之模板虚拟机环境准备】是尚硅谷大数据研发部提供的教程,主要针对初学者,旨在帮助他们建立适合大数据技术学习的虚拟机环境。教程中详细介绍了如何使用VMware来创建和配置虚拟机,以便进行多操作...

    尚硅谷大数据技术之企业SQL面试题_大数据_sql_尚硅谷sql_doc_

    总之,"尚硅谷大数据技术之企业SQL面试题"是一个全面复习和提升SQL技能的宝贵资源,无论是对于正在找工作的专业人士还是想要提升自己大数据技能的开发者,都是一份非常实用的学习材料。通过深入学习和实践,可以增强...

Global site tag (gtag.js) - Google Analytics