`
landyer
  • 浏览: 142580 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

单台服务器上安装Hadoop和Hive十五分钟教程

阅读更多

单台服务器上学习Hadoop和Hive十分钟教程

Hadoop是个很流行的分布式计算解决方案,Hive是基于hadoop的数据分析工具。

一般的学习者不是太容易找到多台服务器来做集群学习hadoop,所以hadoop官方文档提供了在单台服务器上运行hadoop的指南(hive是基于hadoop的,它不关心有几台服务器,只要有hadoop就行了),来教大家怎样在一台硬件机器上模拟一个hadoop集群,这种模式只适合用来学习练手,真正要做分布式计算,是会配置在多台机器上的。

下面是一个最简单的安装使用hadoop/hive的文档:

下载Hadoop、Hive

a)         Hadoop下载地址:http://www.apache.org/dyn/closer.cgi/hadoop/core/

b)        Hive下载地址:http://www.apache.org/dyn/closer.cgi/hive/

选择较新的稳定版本下载即可,下载到任意目录都可以,解压开就可以运行的,不需要编译安装。

这里要注意,Hive 0.6不支持Hadoop 0.21,我是使用Hadoop 0.20.2 + Hive 0.6.0测试成功的(测试于2011年3月16日)

检查环境

Hadoop依赖Java和SSH

Java

Hadoop 0.20要求Java 1.6,最好是从Sun官方下载安装的,通过java –version确认你有没有装java以及java的版本。

输出像这样说明是OK的:

$ java -version

java version “1.6.0_17″

输出像这样说明没装java:

chin@lily ~ $ java -version

-bash: java: command not found

去sun的网站下载个JDK来装上(SUN被Oracle收购了,所以下载地址的域名是oracle.com):http://www.oracle.com/technetwork/java/javaee/downloads/index.html

SSH

i.              确认有没有安装sshd服务和ssh客户端工具

一般服务器都有sshd服务的(因为你要远程连过去操作这个服务器呀),如果没有,说明你是通过linux桌面来操作的,用yum, apt-get之类的包管理工具装上就好了:

chin@lily ~ $ sudo apt-get install ssh

chin@lily ~ $ sudo apt-get install rsync

ii.              确认可以用ssh免密码登录localhost

输入ssh localhost命令

chin@lily ~ $ ssh localhost

如果直接登录进去了而没问你要密码(屏幕提示如下),就是OK的

Last login: Wed Mar 16 15:06:21 2011 from *.*.*.*

如果问你要密码(屏幕提示如下):

chin@lily ~ $ ssh localhost

chin@localhost’s password:

就需要简单设置一下,方法如下:

chin@lily ~ $ ssh-keygen -t dsa -P ” -f ~/.ssh/id_dsa

chin@lily ~ $ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

这两个命令的意思是让你从本地ssh到localhost的时候使用证书登录,密码是空。

做完之后再用ssh localhost验证一下。最好logout之后再来试,因为如果你ssh localhost成功了,就已经在localhost(在软件概念里,已经是在远程服务器上了)里了,再ssh localhost的话,会问你要密码的,听起来是不是像盗梦空间,哈哈!所以全部退出,退到未登录状态,再来试,不容易出错一些。

解压、配置hadoop

解压

chin@lily ~ $ tar zxf hadoop-0.20.2.tar.gz

进入解压后的hadoop目录

chin@lily ~ $ cd hadoop-0.20.2

chin@lily ~/hadoop-0.20.2 $

修改配置文件

iii.              设置JAVA_HOME

编辑conf/hadoop-env.sh文件,找到:

# export JAVA_HOME=/usr/lib/j2sdk1.5-sun

把前面的注释符号#去掉,这个#是注释的意思

把等号后面的路径改为你的JDK所在的目录,如你的java可执行文件在/usr/bin/java,则写成(不要包含bin):

export JAVA_HOME=/usr

如果不知道java在什么地方请用whereis java查询

iv.              配置hadoop的单机集群模式(伪集群模式)

按此文档的指示改:

http://hadoop.apache.org/common/docs/r0.20.0/quickstart.html#PseudoDistributed

修改conf/core-site.xml,内容改为:

<configuration>

<property>

<name>fs.default.name</name>

<value>hdfs://localhost:9000</value>

</property>

</configuration>

修改conf/hdfs-site.xml,内容改为:

<configuration>

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

</configuration>

修改conf/mapred-site.xml,内容改为:

<configuration>

<property>

<name>mapred.job.tracker</name>

<value>localhost:9001</value>

</property>

</configuration>

初始化hadoop Namenode

执行:bin/hadoop namenode –format

看到successfully formatted

chin@lily ~/hadoop-0.20.2 $ bin/hadoop namenode -format

11/03/16 16:12:03 INFO namenode.NameNode: STARTUP_MSG:

/************************************************************

一堆日志输出,为节省篇幅,不贴了

11/03/16 16:12:04 INFO common.Storage: Storage directory /tmp/hadoop-chin/dfs/name has been successfully formatted.

启动运行hadoop

执行:bin/start-all.sh

chin@lily 16:12:04 ~/hadoop-0.20.2 $ bin/start-all.sh

starting namenode, logging to 一个日志文件

localhost: starting datanode, logging to一个日志文件

localhost: starting secondarynamenode, logging to  一个日志文件

starting jobtracker, logging to一个日志文件

localhost: starting tasktracker, logging to一个日志文件

会看到这个脚本依次启动了namenode, secondarynamenode, datanode, jobtracker, tasktracker,只有这五个全部成功启动才算成功,用jps命令看一下启动了哪些java进程:

chin@lily 16:30:57 ~/hadoop-0.20.2 $ jps

24106 TaskTracker

23931 SecondaryNameNode

24001 JobTracker

25095 Jps

23712 NameNode

24741 DataNode

至此,Hadoop安装成功

在HDFS中建立hive要用的目录

chin@lily ~/hadoop-0.20.2 $ bin/hadoop fs -mkdir /tmp

chin@lily ~/hadoop-0.20.2 $ bin/hadoop fs -mkdir /user/hive/warehouse

chin@lily ~/hadoop-0.20.2 $ bin/hadoop fs -chmod g+w /tmp

chin@lily ~/hadoop-0.20.2 $ bin/hadoop fs -chmod g+w /user/hive/warehouse

解压Hive

chin@lily ~ $ tar zxf hive-0.6.0-bin.tar.gz

chin@lily ~ $ cd hive-0.6.0-bin

chin@lily ~/hive-0.6.0-bin $

设置HADOOP_HOME

chin@lily ~/hadoop-0.20.2 $ export HADOOP_HOME=/home/chin/hadoop-0.20.2

运行Hive

chin@lily ~/hive-0.6.0-bin $ bin/hive

Hive history file=/tmp/chin/hive_job_log_chin_201103161721_2092136471.txt

hive >

 

修改 hadoop/conf/hadoop-env.sh,

# The maximum amount of heap to use in MB. Default is 1000.
export HADOOP_HEAPSIZE=256

 

至此,Hive运行成功

 

分享到:
评论

相关推荐

    Hadoop hbase hive sqoop集群环境安装配置及使用文档

    在本文档中,我们将详细介绍如何搭建一个大数据集群环境,包括 Hadoop、HBase、Hive 和 Sqoop 的安装配置及使用。该文档将分为四部分:Hadoop 集群环境搭建、HBase 集群环境搭建、Hive 集群环境搭建和 Sqoop 集成...

    大数据Hadoop+HBase+Spark+Hive集群搭建教程(七月在线)1

    - 将上述所有组件安装在每台服务器上,包括Master和Slave节点。 - 调整各组件的配置文件,确保集群通信正常。 - 分别启动Hadoop、HBase、Spark和Hive的服务,测试它们之间的交互和数据流动。 总的来说,搭建...

    ubuntu下配置hadoop和hive

    然后,从Apache的官方网站或镜像服务器上下载Hadoop和Hive的最新发行版。Hadoop的配置文件位于`conf`目录下,主要包括`hadoop-env.sh`和`hadoop-site.xml`。 在`hadoop-env.sh`中,设置`JAVA_HOME`指向你的Java安装...

    hadoop安装文件.rar,内涵hadoop安装的步骤word,hadoop、hive、hbase、sqoop、mysql等

    本压缩包"hadop安装文件.rar"提供了关于Hadoop及其相关组件(如Hive、HBase、Sqoop和MySQL)的安装步骤,这对于初学者和系统管理员来说是一份宝贵的资源。 首先,我们来详细了解一下Hadoop。Hadoop由Apache软件基金...

    hadoop+hive+mapreduce的java例子

    在Hive 0.11.0版本之前,只有HiveServer服务可用,你得在程序操作Hive之前,必须在Hive安装的服务器上打开HiveServer服务,如下: 1 [wyp@localhost/home/q/hive-0.11.0]$ bin/hive --service hiveserver -p10002 2 ...

    虚拟机Ubuntu+Hadoop+hive安装教程.pdf

    【虚拟机Ubuntu+Hadoop+hive安装教程】 本教程详细阐述了如何在虚拟机Ubuntu上安装Hadoop和Hive,适合对大数据处理感兴趣的互联网技术人员。首先,我们将介绍Ubuntu的安装步骤,接着是Hadoop的安装,最后是Hive的...

    Linux hadoop,hive,javajdk,mysql数据库等压缩包

    其中,HDFS(Hadoop Distributed File System)是Hadoop的核心部分,它将大型数据集分布式存储在多台廉价服务器上,实现了高容错性和高吞吐量的数据访问。压缩包中的`hadoop-2.7.3.tar(1).gz`包含了Hadoop的二进制...

    一键安装jdk+mysql+hadoop+hive+zeppelin.rar

    标题中的"一键安装jdk+mysql+hadoop+hive+zeppelin.rar"表明这是一个包含Java开发环境(JDK)、MySQL数据库、Hadoop分布式计算框架、Hive数据仓库工具以及Zeppelin交互式数据分析平台的一键安装包。这个压缩包为用户...

    hadoop3.0.3及hive2.3.5

    根据提供的文件信息,我们可以深入探讨Hadoop 3.0.3和Hive 2.3.5的相关知识点。 ### Hadoop 3.0.3 #### 1. Hadoop简介 Hadoop是一个开源软件框架,用于分布式存储和处理大规模数据集。它能够将大量数据分发到多台...

    毕业设计,采用Hadoop+Hive构建数据仓库,使用django+echarts构建前端web网站对业务指标进行可视化呈现

    Hive将SQL语句转换为MapReduce任务执行,简化了在Hadoop上处理大数据的工作。在本项目中,Hive可能是用于数据的存储、管理和查询,方便快速获取业务指标。 3. **数据仓库**: 数据仓库是专门设计用于数据分析的...

    win10下搭建Hadoop环境(jdk+mysql+hadoop+scala+hive+spark) 3.docx

    在Windows 10环境下搭建Hadoop生态系统,包括JDK、MySQL、Hadoop、Scala、Hive和Spark等组件,是一项繁琐但重要的任务,这将为你提供一个基础的大数据处理平台。下面将详细介绍每个组件的安装与配置过程。 **1. JDK...

    hadoop集群配置之———hive安装与配置(超详细)

    Hadoop和Hive是大数据处理和分析领域的重要工具。Hadoop是一个分布式系统基础架构,由Apache基金会开发。它通过在计算机集群之间分布式存储大量数据并允许应用程序在这些集群上并行处理大量数据,来实现高可靠性和...

    hive和hadoop

    通常,我们将Hive安装在Hadoop的namenode节点上,便于管理和访问。 2. **环境变量配置** 在系统环境变量中添加`HADOOP_HOME`和`HIVE_HOME`。`HADOOP_HOME`指向Hadoop的安装目录,而`HIVE_HOME`则指向Hive的安装...

    hadoop软件1,和hive_3,sqoop_2搭配使用

    Hadoop的分布式文件系统(HDFS)可以将数据分布在多台廉价服务器上,确保高可用性和容错性。而MapReduce则是一种编程模型,用于大规模数据集的并行计算,使得处理大量数据变得高效且易于管理。 接下来是Hive,它是...

    Hadoop+Hive+Mysql安装文档.pdf

    2. 文档:文件中说明了如何在Red Hat Enterprise Server 5.5上安装Hadoop、Hive和Mysql。 标签中的知识点: 1. 技术资料:通常指与IT技术相关的文档资料,如安装教程、配置说明、用户手册等。 部分内容中的知识点...

    基于Hadoop的数据仓库Hive学习指南.doc

    元数据存储了表和分区的定义,Hive服务器处理客户端请求,执行引擎则将HiveQL转换为MapReduce任务在Hadoop集群上执行。 6. **HiveQL操作**:HiveQL支持常见的数据操作,如创建表、加载数据、查询、聚合、分组、排序...

    hadoop hive 安装指南

    ### Hadoop Hive 安装与配置详解 #### 一、Hadoop Hive 概述 Hadoop Hive 是一种基于 Hadoop 的数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的 SQL 查询功能,使不熟悉 MapReduce 的开发...

    hadoop2.2+hbase0.96+hive0.12安装整合详细高可靠文档及经验总结

    综上所述,本文详细介绍了如何安装和整合Hadoop2.2、HBase0.96和Hive0.12,并提供了一些常见的问题解决方案。对于初次接触这些技术的新手来说,遵循上述步骤可以大大减少安装过程中可能出现的问题。此外,对于那些...

Global site tag (gtag.js) - Google Analytics