Skip to main content

moregeek program

hadoop概述-多极客编程

Hadoop概述_Apache

官方网址:​http://hadoop.apache.org/​

Welcome to Apache™ Hadoop®!

What Is Apache Hadoop?

The Apache™ Hadoop® project develops open-source software for reliable, scalable, distributed computing.

The Apache Hadoop software library is a framework that allows for the distributed processing of large data sets across clusters of computers using simple programming models. It is designed to scale up from single servers to thousands of machines, each offering local computation and storage. Rather than rely on hardware to deliver high-availability, the library itself is designed to detect and handle failures at the application layer, so delivering a highly-available service on top of a cluster of computers, each of which may be prone to failures.

Apache的Hadoop是一个开源的、可靠的、可扩展的系统架构,可利用分布式架构来存储海量数据,以及实现分布式的计算

Hadoop许使用简单的编程模型在计算机集群中对大型数据集进行分布式处理。可以从单个服务器扩展到数千台机器,每个机器都提供本地计算和存储,而不是依靠硬件来提供高可用性。

此外,Hadoop集群的高可用性也非常良好,因为框架内的机制是可以够自动检测和处理故障。

Hadoop的创始人 Doug Cutting 与 Mike Cafarella

Hadoop概述_Google_02

Doug Cutting  is an advocate and creator of open-source search technology. He originated Lucene and, with Mike Cafarella, Nutch, both open-source search technology projects which are now managed through the Apache Software Foundation. He and Mike Cafarella are also the co-founders of Hadoop.

1985年毕业于美国斯坦福大学,他是 Lucene的创始人,同时也是Nutch和Hadoop的联合创立者,先是参与了Lucene的开发,然后是Nutch,然后是Hadoop。

hadoop名字的来源:这个名字不是一个缩写,它是一个虚构的名字。该项目的创建者,Doug Cutting如此解释Hadoop的得名:"这个名字是我孩子给一头吃饱了的棕​黄色​大象命名的。我的命名标准就是简短,容易发音和拼写,没有太多的意义,并且不会被用于别处。小孩子是这方面的高手。

Hadoop概述_Google_03

Mike Cafarella is a computer scientist specializing in database management systems. He is currently an associate professor of computer science at University of Michigan.[1] Along with Doug Cutting, he is one of the original co-founders of the Hadoop and Nutch open-source projects。

Hadoop演变

Hadoop起源于Apache Nutch,Nutch是一个开源的java语言来实现的搜索引擎。

2004年,Cutting和同为程序员出身的Mike Cafarella决定开发一款可以代替当时的主流搜索产品的开源搜索引擎,这个项目被命名为Nutch。它是模仿google搜索引擎创立的开源搜索引擎,后归于apache旗下。

nutch主要完成抓取,提取内容等工作。和solr一样,都是搜索引擎,并且都是基于lucene的。支持全文搜索和爬虫。

但是遇到了一个难题是:nutch抓取海量数据怎么存储和处理呢?

正巧当时这两个人看到了Google发表了两篇篇论文:《Google File System》、《Google MapReduce》。

Cutting根据《Google File System》设计了HDFS:Hadoop Distributed File System

后来Cutting根据《Google MapReduce》设计了Hadoop的MapReduce

Hadoop有两个核心模块:HDFS(存储数据)+MapReduce(计算数据)

2006年,Cutting根据《GFS》论文,设计了nutch的分布式文件系统(HDFS),即Hadoop Distrubuted File System。即Hadoop刚开始的诞生,主要是为了解决nutch搜索海量数据的分布式存储和管理问题。在nutch 0.8版本之前,Hadoop是nutch的子项目。在0.8版本以后,独立出来成单独的项目。后来不久,cutting又根据《Google MapReduce》设计出了基于Hadoop的MapReduce计算框架。

之后,Cutting带着Hadoop项目去了雅虎,当时有一个100多人的团队共同来完善Hadoop,再后来,Yahoo把Hadoop贡献给Apache,称为Apache的顶级项目。

课外:Hadoop相关历史趣闻

2004年,Cutting和同为程序员出身的Mike Cafarella决定开发一款可以代替当时的主流搜索产品的开源搜索引擎,这个项目被命名为Nutch。在此之前,Cutting所在的公司 Architext(其主要产品为Excite搜索引擎)因没有顶住互联网经济泡沫的冲击而破产,那时的Cutting正处在Freelancer的生涯 中,所以他希望自己的项目能通过一种低开销的方式来构建网页中的大量算法。

幸运的是,Google这时正好发布了一项研究报告,报告中介绍了两款 Google为支持自家的搜索引擎而开发的软件平台。这两个平台一个是GFS(Google File System),用于存储不同设备所产生的海量数据;另一个是MapReduce,它运行在GFS之上,负责分布式大规模数据。基于这两个平台,Cutting最引人瞩目的作品——Hadoop诞生了(后来大家习惯认为Hadoop于2006年1月28日诞生的)。

谈到Google对他们的 “帮助”,Cutting说:“我们开始设想用4~5台电脑来实现 这个项目,但在实际运行中牵涉了大量繁琐的步骤需要靠人工来完成。Google的平台让这些步骤得以自动化,为我们实现整体框架打下了良好的基础。”

说起Google,Cutting也是它成长的见证人之一,这里有一段鲜为人知的故事。早在Cutting供职于Architext期间,有两个年轻人曾去拜访这家公司,并向他们兜售自己的搜索技术,但当时他们的Demo只检索出几百万条网页,Excite的工程师们觉得他们的技术太小儿科,于是就在心里鄙 视一番,把他们给送走了。但故事并未到此结束,这两个年轻人回去之后痛定思痛,决定自己创业。于是,他们开了一家自己的搜索公司,取名为Google。这两个年轻人就是Larry Page和Sergey Brin。在Cutting看来,Google的成功主要取决于,反向排序之后再存储的设计和对自己技术的自信。

出于对时间成本的考虑,在从Architext离职四年后,Cutting决定结束这段Freelancer的生涯,找一家靠谱的公司,进一步完善 Hadoop的性能。他先后面试了几家公司,其中也包括IBM,但IBM似乎对他的早期项目Lucene更感兴趣,至于Hadoop则不置可否。就在此 时,Cutting接受了当时Yahoo!搜索项目负责人Raymie Stata的邀请,于2006年正式加入Yahoo!。在Yahoo!,有一支一百人的团队帮助他完善Hadoop项目,这期间开发工作进行得卓有成效。 不久之后,Yahoo!就宣布,将其旗下的搜索业务的架构迁移到Hadoop上来。两年后,Yahoo!便基于Hadoop启动了第一个应用项目 “webmap”——一个用来计算网页间链接关系的算法。Cutting的时任上司(后为Hortonworks CEO)Eric Baldeschwieler曾说:“在相同的硬件环境下,基于Hadoop的webmap的反应速度是之前系统的33倍。”


©著作权归作者所有:来自51CTO博客作者執孒の掱,與的原创作品,请联系作者获取转载授权,否则将追究法律责任

hadoop中的mapreduce框架-多极客编程

一个MapReduce作业通常会把输入的数据集切分为若干独立的数据块,由Map任务以完全并行的方式去处理它们。           框架会对Map的输出先进行排序,然后把结果输入给Reduce任务。通常作业的输入和输出都会被存储在文件系统中,整个框架负责任务的调度和监控,以及重新执行已经关闭的任务。           通常,MapReduce框架

hadoop中mapreduce配置-多极客编程

一,配置mapred-site.xml进入以入目录[root@hadoop01 hadoop]# cd /home/software/hadoop-2.7.1/etc/hadoop复制mapred-site.xml示例文件[root@hadoop01 hadoop]# cp mapred-site.xml.template mapred-site.xml修改mapred-site.xml,增加如下

hdfs的常用指令-多极客编程

 指令说明hadoop fs -mkdir /park01在hdfs根目录下创建文件夹park01hadoop fs -ls /查看hdfs根目录下有哪些目录或文件hadoop fs -put /root/1.txt /park01将linux操作系统root目录下的1.txt放在hdfs的park01目录下hadoop fs -get /park01/jdk /home把hdfs文件系统下par

hdfs,mapreduce,yarn的架构思想和设计原理-多极客编程

Hadoop 三大组件:HDFS,MapReduce,Yarn 的架构分析和原理1引子        大数据就是将各种数据统一收集起来进行计算,发掘其中的价值。这些数据,既包括数据库的数据,也包括日志数据,还包括专门采集的用户行为数据;既包括企业内部自己产生的数据,也包括从第三方采购的数据,还包括使用网络爬虫获取的各种互联网公开数据 ...        面对如此庞大的数据,如何存储、如何有效利用

hadoop中namenode职责和hdfs读写-多极客编程

1、namenode职责:1.1、管理各个datanode节点1.2、管理分布式文件系统的元数据信息比如 一个文件多大,文件名,文件被切成几块,每个文件块存到哪台datanode服务上1.3、通过RPC心跳机制来监控datanode的状态。对于网络通信,http主外,rpc主内1.4、为了确保数据存储的可靠性,采用冗余机制来实现,注意:副本数量不宜过多,因为会降低整个集群的磁盘利用率,一般采用3副

大数据平台datasophon 测试部署-多极客编程

标签(空格分隔): 大数据运维专栏 一:datasophon 的介绍 1.1 datasophon 的介绍 DataSophon是近日开源的一款国产自研大数据管理平台,致力于快速实现部署、管理、监控以及自动化运维大数据服务组件和节点的能力,帮助你快速构建起稳定、高效的大数据集群服务。 主要有以下特性: 极易部署,1小时可完成300节点的大数据集群部署 国产化兼容,兼容ARM服务器和常用国产

sreworks v1.4 版本发布 | 离线安装 & 前端重构-多极客编程

在 v1.3 版本之后,SREWorks 团队收集了较多的用户反馈,大家普遍对于 SREWorks 的内网离线安装有较大的诉求。于是团队决定进一步增强这部分的安装能力。前端工程部分 (frontend),为了开发者更加敏捷高效的协作开发,以及便于社区开发者参与共建前端组件生态。我们对前端工程架构进行了重新梳理拆分,按照 Monorepo 模式架构演进;同时也对工程构建相关工具进行了优化升级。下面为

hadoop中的mapreduce框架-多极客编程

一个MapReduce作业通常会把输入的数据集切分为若干独立的数据块,由Map任务以完全并行的方式去处理它们。           框架会对Map的输出先进行排序,然后把结果输入给Reduce任务。通常作业的输入和输出都会被存储在文件系统中,整个框架负责任务的调度和监控,以及重新执行已经关闭的任务。           通常,MapReduce框架

hadoop中mapreduce配置-多极客编程

一,配置mapred-site.xml进入以入目录[root@hadoop01 hadoop]# cd /home/software/hadoop-2.7.1/etc/hadoop复制mapred-site.xml示例文件[root@hadoop01 hadoop]# cp mapred-site.xml.template mapred-site.xml修改mapred-site.xml,增加如下

hdfs,mapreduce,yarn的架构思想和设计原理-多极客编程

Hadoop 三大组件:HDFS,MapReduce,Yarn 的架构分析和原理1引子        大数据就是将各种数据统一收集起来进行计算,发掘其中的价值。这些数据,既包括数据库的数据,也包括日志数据,还包括专门采集的用户行为数据;既包括企业内部自己产生的数据,也包括从第三方采购的数据,还包括使用网络爬虫获取的各种互联网公开数据 ...        面对如此庞大的数据,如何存储、如何有效利用

hadoop中namenode职责和hdfs读写-多极客编程

1、namenode职责:1.1、管理各个datanode节点1.2、管理分布式文件系统的元数据信息比如 一个文件多大,文件名,文件被切成几块,每个文件块存到哪台datanode服务上1.3、通过RPC心跳机制来监控datanode的状态。对于网络通信,http主外,rpc主内1.4、为了确保数据存储的可靠性,采用冗余机制来实现,注意:副本数量不宜过多,因为会降低整个集群的磁盘利用率,一般采用3副

nifi-1.16.0版本集群搭建过程记录-多极客编程

一、环境准备1、服务器资源分配IP服务192.168.0.11Zookeeper、NiFi、Kerberos192.168.0.12Zookeeper、NiFi192.168.0.13Zookeeper、NiFi文件下载链接:nifi-1.16.0-bin.tar.gz:​​下载​​nifi-toolkit-1.16.0-bin.tar.gz:​​下载​​相关参考文档:​​NIFI文档​​2、禁用