- 浏览: 377917 次
- 性别:
- 来自: 深圳
最新评论
-
qw575408794:
请问 直角平面坐标 转 经纬度 怎么转 java实现,或者 ...
关于经纬度坐标转换的方法 -
horsely:
JavaScript图表FusionCharts免费在线公开课 ...
FusionCharts在Java中的基本使用 -
rzh0001:
good job
Excel 日期格式与数字格式转换的BUG -
springdata-jpa:
java quartz定时任务demo教程源代码下载,地址:h ...
[JAVA]定时任务之-Quartz使用篇 -
liuweihug:
fusioncharts 图片2种方式使用java导出 - 项 ...
FusionCharts在Java中的基本使用
Hadoop入门(一)——背景介绍
一、背景
1、起源
MapReduce编程模型的思想来源于函数式编程语言Lisp,由Google公司于2004年提出并首先应用于大型集群。同时,Google也发表了GFS、BigTable等底层系统以应用MapReduce模型。在2007年,Google’s MapReduce Programming Model-Revisted论文发表,进一步详细介绍了Google MapReduce模型以及Sazwall并行处理海量数据分析语言。Google公司以MapReduce作为基石,逐步发展成为全球互联网企业的领头羊。
2、项目起源和发展
Hadoop作为Apache基金会资助的开源项目,由Doug Cutting带领的团队进行开发,基于Lucene和Nutch等开源项目,实现了Google的GFS和Hadoop能够稳定运行在20个节点的集群;2006年1月,Doug Cutting加入雅虎公司,同年2月Apache Hadoop项目正式支持HDFS和MapReduce的独立开发。同时,新兴公司Cloudera为Hadoop提供了商业支持,帮助企业实现标准化安装,并志愿贡献社区。Hadoop的最新版本是0.21.0,说明其还在不断完善发展之中。
二、Hadoop基础原理
1、定义
Hadoop原来是Apache Lucene下的一个子项目,它最初是从Nutch项目中分离出来的专门负责分布式存储以及分布式运算的项目。简单地说来,Hadoop是一个可以更容易开发和运行处理大规模数据的软件平台。
2、组成
Hadoop由分布式存储HDFS和分布式计算MapReduce两部分组成。HDFS是一个master/slave的结构,就通常的部署来说,在master上只运行一个Namenode,而在每一个slave上运行一个Datanode。MapReduce是Google的一项重要技术,它是一个编程模型,用以进行大数据量的计算。MapReduce的名字源于这个模型中的两项核心操作:Map和Reduce。Map是把一组数据一对一的映射为另外的一组数据,Reduce是对一组数据进行归约,映射和归约的规则都由一个函数指定。
三、国内外应用
1、国外应用
2008年2月,雅虎宣布搭建出世界上最大的基于Hadoop的集群系统—Yahoo! Search Webmap,另外还被广泛应用到雅虎的日志分析、广告计算、科研实验中;Amazon的搜索门户A9.com中的商品搜索的索引生成就是基于Hadoop完成的;互联网电台和音乐社区网站Last.fm使用Hadoop集群运行日志分析、A/B测试评价、AdHoc处理和图表生成等日常作业;著名SNS网站Facebook用Hadoop构建了整个网站的数据仓库,它目前有320多台机器进行网站的日志分析和数据挖掘。 UC Berkeley等著名高校也对Hadoop进行应用和研究,以提高其整体性能,包括Matei Zaharia等人改进了Hadoop的推测式执行技术并发表了Improving MapReduce Performance in Heterogeneous Environment;Tyson Condie等人改进了MapReduce体系,允许数据在操作之间用管道传送,开发了Hadoop Online Prototype(HOP)系统,并发表了MapReduce Online。
2、国内应用
2008年之后,国内应用和研究Hadoop的企业也越来越多,包括淘宝、百度、腾讯、网易、金山等。淘宝是国内最先使用Hadoop的公司之一;百度在Hadoop上进行广泛应用并对它进行改进和调整,同时赞助了HyperTable的开发。总之,互联网企业是Hadoop在国内的主要使用力量。同样的,很多科研院所也投入到Hadoop的应用和研究中,包括中科院、清华大学、浙江大学和华中科技大学等。
四、文档说明
1、来源
该文档在编写的过程中添加了hadoop自带的中文说明文档,同时也借鉴了网上一些朋友编写资料。主要目的就是将这里信息汇总,方便查阅和推广。
2、环境
该文档中涉及的例子我采用的都是Linux操作系统、Apache发布的Hadoop版本0.20.2、JDK使用的是1.6,Hive使用的是0.5、HBase使用的是0.20.5
Hadoop入门(二)——安装
一、安装准备
1、所需软件
hadoop 0.20.2地址:http://www.apache.org/dist/hadoop/core/hadoop-0.20.2/
JDK版本:jdk-6u26-linux-i586.rpm.bin (必须是1.6)
操作系统:CentOS
三台机器:10.2.33.151(master),10.2.33.152(slave),10.2.33.153(slave)
二、安装操作
1、软件安装
拷贝以上文件到Linux的“/opt/”目录下。
安装JDK,此步省略……。
解压hdaoop:tar -zxvf hadoop-0.20.2.tar.gz
配置151机器可以通过SSH直接访问152和153。
2、系统SSH配置
在151、152、153三台机器上分别执行以下操作:
ssh-keygen -t dsa
直接回车,完成后会在~/.ssh/生成两个文件:id_dsa 和id_dsa.pub。这两个是成对出现,类似钥匙和锁。再把id_dsa.pub 追加到授权key 里面(当前并没有authorized_keys文件):
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys。
注:若想多台机器登陆一台机器,则将3台机器的id_dsa.pub合并为1个authorized_keys,换行分割即可。
完成后可以实现无密码登录:
$ ssh root@IP
3、系统环境变量配置
JAVA_HOME=/usr/java/jdk1.6.0_26
CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$CLASSPATH
HADOOP_HOME=/opt/hadoop-0.20.2
PATH=$JAVA_HOME/bin:$HOME/bin:$HADOOP_HOME/bin:$HIVE_HOME/bin:$PATH
export PATH HADOOP_HOME CLASSPATH JAVA_HOME
最后记得source /etc/profile生效。
4、系统HOSTS配置
修改ect/hosts配置文件,内容如下:
127.0.0.1 localhost
10.2.33.151 test-01
10.2.33.152 test-02
10.2.33.153 test-03
注:以上hosts信息很重要,每台机器都要配置,test-01为服务器名
5、Hadoop配置
修改/opt/hadoop-0.20.2/conf/目录下的master文件,内容如下:
10.2.33.151
修改/opt/hadoop-0.20.2/conf/目录下的slaves文件,内容如下:
10.2.33.152
10.2.33.153
修改/opt/hadoop-0.20.2/conf/hadoop-env.sh文件的环境变量:
# The java implementation to use. Required.
export JAVA_HOME=/usr/java/jdk1.6.0_26
拷贝/opt/hadoop-0.20.2/src/core/core-default.xml到/opt/hadoop-0.20.2/conf/core-site.xml,修改部分内容如下:
<property>
<name>hadoop.tmp.dir</name>
<value>/hadoopdata</value>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://10.2.33.151:9000</value>
</property>
拷贝/opt/hadoop-0.20.2/src/hdfs/hdfs-default.xml到/opt/hadoop-0.20.2/conf/hdfs-site.xml配置文件,内容不变。
拷贝/opt/hadoop-0.20.2/src/mapred/mapred-default.xml到/opt/hadoop-0.20.2/conf/mapred-site.xml配置文件,修改部分内容如下:
<property>
<name>mapred.job.tracker</name>
<value>10.2.33.151:9001</value>
</property>
将/opt/hadoop-0.20.2拷贝到10.2.33.152和10.2.33.153对应的目录下。将/ect/profile和/etc/hosts也拷贝到152和153机器上。注意profile需要做生效操作。建议打包拷贝或者scp拷贝。
四、初始配置
1、格式化HDFS文件系统
进入/opt/hadoop-0.20.2/bin目录。执行:
hadoop namenode –format
2、启动/停止hadoop
启动hadoop。执行:
/opt/hadoop-0.20.2/bin/start-all.sh
停止hadoop。执行:
/opt/hadoop-0.20.2/bin/stop-all.sh
3、查看hadoop信息
在/opt/hadoop-0.20.2/bin目录下,执行:
hadoop fs -ls /
如果控制台返回结果,表示初始化成功。可以向里面录入数据。
通过WEB查看hadoop
查看集群状态:http://10.2.33.151:50070dfshealth.jsp
查看JOB状态:http://10.2.33.151:50030/jobtracker.jsp
五、注意事项
1、hadoop的安装千万计的修改/etc/hosts文件,而且要把所有master和slaves的内容都配置进去,所有机器的host配置,在hadoop方面是一样的。
2、master和slaves这2个配置文件可以不拷贝到152和153机器上,只在master上保存即可,保险起见,还是都拷贝下吧。
3、通过web查看hadoop的时候,如果使用IE一些图形工具显示不出来,建议使用opera或是chrome。
发表评论
-
cpu架构为power的JDk部署 jdk7 ppc64
2015-01-29 11:49 1993IBM提供了在cpu架构为power的linux操作系统的J ... -
CentOS 6.3下Samba服务器的安装与配置
2015-01-04 11:11 2602最近公司存储服务器 ... -
Intellij IDEA 快捷键整理
2014-10-21 15:54 903【常规】 Ctrl+Shift + Enter,语句完成 ... -
Maven: javax.sql:jdbc-stdext:2.0
2014-10-21 15:05 940今天搞maven遇到了这个小问题,google下,也没合适的 ... -
MySQL监控、性能分析——工具篇
2014-10-15 14:36 4944MySQL越来越被更多企业接受,随着企业发展,MySQL存储 ... -
Tomcat启动分析 【转】
2014-10-13 16:07 9181 - Tomcat Server的组成 ... -
MySQL Migration Toolkit initialized java loader 出错提示jre版本问题
2014-09-29 13:55 1814如果initialized java loader 出错提示j ... -
MySQL Migration Toolkit的使用
2014-09-29 13:54 1155MySQL Migration Toolkit是MySQL出 ... -
Oracle to MySQL
2014-09-29 13:52 10591.java 实体的移植 主键生成策略有JPA 提供与 ... -
jacob常用异常处理
2014-09-17 16:53 3363com.jacob.com.ComFailException ... -
java 使用jacob 操作word
2014-09-17 16:39 2402/** * word文档 */ ... -
HttpCLient实现对被GZip压缩过的Response进行解压
2014-05-22 15:33 12057发送请求(要求服务端对response进行GZip压缩): ... -
关于HttpClient的总结
2014-05-22 14:28 1252关于Httpclient的使用总结如下: (1)当Htt ... -
设置Tomcat的JAVA_OPTS参数
2014-03-20 17:23 1096修改 TOMCAT/bin/catalina.bat添加se ... -
Java_Thumbnailator
2014-03-20 14:49 775Thumbnailator 是一个为Java界面更流畅的缩略图 ... -
maven添加oracle驱动
2013-10-09 16:44 1287由于oracle商业版权问题,maven是不可以直接下载ja ... -
直接使用SQL操作Oracle空间数据的原理以及配置方法
2013-07-10 16:43 1800最近一直接到售前的请求,客户现场成功部署SDE for Or ... -
ORA-22992: 无法使用从远程表选择的 LOB 定位器
2013-07-09 11:08 1085现象描述:执行一条语句时报错,该语句是:select * ... -
ORA-28575:无法打开与外部过程代理程序的RPC连接
2013-07-09 10:54 19001. 修改listener.ora文件,增加如下内容,注意该 ... -
DBMS_STATS分析表
2013-07-05 16:54 951作用:DBMS_STATS.GATHER_TABLE_ST ...
相关推荐
【Hadoop 入门】 Hadoop 是一个由Apache基金会开发的开源分布式计算框架,它以其高效、可扩展和容错性著称,是大数据处理领域的重要工具。本篇将从Hadoop的基本流程、应用开发以及集群配置和使用技巧三个方面进行...
Hadoop是一个广泛使用的分布式数据处理框架,特别适合于处理大规模数据集。它最初是作为搜索引擎的核心数据缩减功能,但由于其架构设计为...而《Hadoop入门经典书籍》这类资料,对于新手来说,是非常有价值的入门参考。
"Hadoop入门到精通"的学习资料旨在帮助初学者掌握这一强大的框架,并逐步晋升为专家。以下是对Hadoop及其相关概念的详细解读。 一、Hadoop概述 Hadoop是由Apache基金会开发的一个开源框架,主要用于处理和存储大...
Hadoop入门手册 简单入门Hadoop入门手册 简单入门Hadoop入门手册 简单入门Hadoop入门手册 简单入门
《Hadoop入门实战手册》是一本专为初学者设计的中文版指南,旨在帮助读者快速掌握Hadoop这一分布式计算框架的基础知识和实际操作技巧。Hadoop是Apache软件基金会的一个开源项目,它为海量数据处理提供了可靠的分布式...
这个“Hadoop入门程序java源码”是为初学者准备的,目的是帮助他们快速掌握如何在Hadoop环境中编写和运行Java程序。Hadoop的主要组件包括HDFS(Hadoop分布式文件系统)和MapReduce,这两个部分将在下面详细介绍。 ...
总之,Hadoop入门教程为初学者提供了对Hadoop核心概念的理解,帮助他们掌握如何安装和使用Hadoop进行数据存储与处理,并理解Hadoop的设计思想和体系架构。通过学习Hadoop,初学者可以入门到大数据处理的广阔天地中,...
本教程《Hadoop入门教程》旨在为初学者提供全面且深入的指导,帮助他们快速理解并掌握Hadoop的基本概念、架构及应用。教程由Hadoop技术论坛在2010年出版,为当时的开发者提供了宝贵的资源。 一、Hadoop简介 Hadoop...
hadoop的入门书籍,本人认为一共有以下五本书比较好: 1.云计算资料大全(了解云计算者必读).pdf 2.Hadoop开发者入门专刊 3.Hadoop权威指南%28第2版%29中文版 4.hadoop实战中文版+电子版pdf 5.精通HADOOP 由于上传...
【Hadoop入门手册】是一本专为初学者设计的指南,旨在帮助读者快速掌握Hadoop这一分布式计算框架的基础知识和核心概念。Hadoop是Apache软件基金会的一个开源项目,它的出现解决了大数据处理中的诸多挑战,包括数据...
hadoop入门学习 mapreduce求解 天气数据 2002年整年数据的最高气温
### Hadoop入门学习文档知识点梳理 #### 一、大数据概论 ##### 1.1 大数据概念 - **定义**:大数据是指无法在可承受的时间范围内用常规软件工具进行捕捉、管理和处理的数据集合。 - **特点**: - **Volume(大量)...
【Hadoop入门教程】 Hadoop是一个开源的分布式计算框架,主要设计用于处理和存储大量数据。这个教程将指导你如何在Ubuntu 12.04操作系统上安装和配置Hadoop 1.0.4,这对于初学者来说是一个很好的起点。 **1. 安装...
【Hadoop入门教程】 本文将带你逐步了解如何在Ubuntu虚拟机中安装配置Hadoop,并使用Eclipse进行Hadoop程序开发。教程适用于初学者,旨在帮助你快速掌握Hadoop的基础知识。 1. **JDK安装与配置** 在开始Hadoop的...
【标题】"Hadoop入门共21页.pdf.zip" 提供了一个初步了解和学习Hadoop分布式文件系统(HDFS)和MapReduce计算模型的基础教程。Hadoop是大数据处理领域的一个核心框架,它允许用户在廉价硬件集群上存储和处理海量数据...
Hadoop入门中文手册 目的是帮助你快速完成单机上的Hadoop安装与使用以便你对Hadoop分布式文件系统(HDFS)和Map-Reduce框架有所体会,比如在HDFS上运行示例程序或简单作业等,同样也介绍了Hive,HBase详细安装应用! ...