zoukankan      html  css  js  c++  java
  • [转载] Hadoop和Hive单机环境搭建

    转载自http://blog.csdn.net/yfkiss/article/details/7715476和http://blog.csdn.net/yfkiss/article/details/7721329

    下载hadoop
    hadoop下载地址:
    http://www.apache.org/dyn/closer.cgi/hadoop/core/
    这里下载的版本是1.0.3
    $ mkdir hadoop
    $ wget http://www.fayea.com/apache-mirror/hadoop/core/stable/hadoop-1.0.3.tar.gz .

    安装java
    首先用“java -version”查看是否已安装,如果显示类似于java version "1.7.0_147-icedtea 则表示已安装
    没有安装可以参考:http://blog.csdn.net/yang_hui1986527/article/details/6677450
    安装必须设置JAVA_HOME和CLASSPATH
    我的配置:
    export PATH=${PATH}:/usr/lib/jvm/java-6-openjdk-amd64/bin
    export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64/
    export JRE_HOME=${JAVA_HOME}/jre
    export CLASSPATH=.:${JRE_HOME}/lib:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
    并将这两行语句放在:~/.bashrc中

    安装ssh
    $ sudo apt-get install ssh
    安装完成后,需要确认可以用ssh免密码登录localhost
    $ ssh localhost
    如果需要密码才能登录,则需要设置:
    $ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
    $ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

    安装rsync
    rsync是linux实现远程同步的软件
    $ sudo apt-get install rsync

    配置启动hadoop
    解压:
    $ tar -zxvf  hadoop-1.0.3.tar.gz
    设置JAVA_HOME
    编辑conf/hadoop-env.sh文件,找到:
    # export JAVA_HOME=/usr/lib/j2sdk1.5-sun
    修改为:
    export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64/

    修改配置文件:
    如果不知道java在什么地方请用whereis java查询
    修改conf/core-site.xml:

    [plain] view plaincopy
     
    1. <configuration>  
    2. <property>  
    3. <name>fs.default.name</name>  
    4. <value>hdfs://localhost:9000</value>  
    5. </property>  
    6.   
    7. </configuration>  

    修改conf/hdfs-site.xml:

    [plain] view plaincopy
     
    1. <configuration>  
    2. <property>  
    3. <name>dfs.replication</name>  
    4. <value>1</value>  
    5. </property>  
    6. <property>  
    7. <name>hadoop.tmp.dir</name>  
    8. <value>/home/work/hadoop_tmp</value>  
    9. </property>  
    10. </configuration>  

    修改conf/mapred-site.xml:

    [plain] view plaincopy
     
    1. <configuration>  
    2. <property>  
    3. <name>mapred.job.tracker</name>  
    4. <value>localhost:9001</value>  
    5. </property>  
    6. </configuration>  

    初始化hadoop Namenode:
    $ bin/hadoop namenode –format
    启动:
    $ bin/start-all.sh
    确认启动:
    $ jps
    5146 Jps
    4538 TaskTracker
    4312 JobTracker
    4015 DataNode
    4228 SecondaryNameNode
    3789 NameNode
    表示启动成功

    以下内容写入~/.bashrc:

    [plain] view plaincopy
     
    1. alias hadoop='/home/zxm/hadoop/hadoop-1.0.3/bin/hadoop'    
    2. alias hls='hadoop fs -ls'   
    3. alias hlsr='hadoop fs -lsr'   
    4. alias hcp='hadoop fs -cp '   
    5. alias hmv='hadoop fs -mv'   
    6. alias hget='hadoop fs -get'   
    7. alias hput='hadoop fs -put'   
    8. alias hrm='hadoop fs -rm'   
    9. alias hmkdir='hadoop fs -mkdir'   
    10. alias hcat='hadoop fs -cat'   
    11. alias hrmr='hadoop fs -rmr'   
    12. alias hstat='hadoop fs -stat'   
    13. alias htest='hadoop fs -test'   
    14. alias htext='hadoop fs -text'   
    15. alias htouchz='hadoop fs -touchz'   
    16. alias hdu='hadoop fs -du'   
    17. alias hdus='hadoop fs -dus'   
    18. alias hchmod='hadoop fs -chmod'   
    19. alias hchgrp='hadoop fs -chgrp'   
    20. alias hchown='hadoop fs -chown'   
    21. alias htail='hadoop fs -tail'<span style="font-family:Arial, Helvetica, sans-serif;"><span style="white-space: normal;">  
    22. </span></span>  


    常见问题解决方案:
    问题1:运行hadoop命令是出现“Warning: $HADOOP_HOME is deprecated.”报警
    解决:添加   export HADOOP_HOME_WARN_SUPPRESS=TRUE 到 hadoop-env.sh  中

    问题2:namenode无法启动
    解决:删除/tmp/hadoop* 执行bin/hadoop namenode –format

    hadoop单机环境搭建成功后,可以搭建hive。

    在hdfs上建目录:

    [plain] view plaincopy
     
    1. $ hadoop fs -mkdir /tmp  
    2. $ hadoop fs -mkdir /user/hive/warehouse  


    添加权限:

    [plain] view plaincopy
     
    1. $ hadoop fs -chmod g+w   /tmp  
    2. $ hadoop fs -chmod g+w   /user/hive/warehouse  


    下载解压hive:
    $ wget http://labs.mop.com/apache-mirror/hive/stable/hive-0.8.1.tar.gz .
    $ tar -zxvf hive-0.8.1.tar.gz

    设置HADOOP_HOME、HIVE_HOME,并将其添加到~/.bashrc

    [plain] view plaincopy
     
    1. export HADOOP_HOME=/home/zxm/hadoop/hadoop-1.0.3  
    2. export HIVE_HOME=/home/work/hadoop/hive-0.8.1  


    多用户支持
    (确认已安装好mysql)
    启动mysql:
    $ mysql -u root -p
    mysql>grant all on hive.* to hive@localhost identified by '123456'

    修改hive conf/hive-site.xml,如下:
    [plain] view plaincopy
     
    1. <property>    
    2.   <name>javax.jdo.option.ConnectionURL</name>    
    3.   <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true<alue>    
    4.   <description>JDBC connect string for a JDBC metastore</description>    
    5. </property>    
    6. <property>    
    7.   <name>javax.jdo.option.ConnectionDriverName</name>    
    8.   <value>com.mysql.jdbc.Driver<alue>    
    9.   <description>Driver class name for a JDBC metastore</description>    
    10. </property>    
    11. <property>    
    12.   <name>javax.jdo.option.ConnectionUserName</name>    
    13.   <value>hive<alue>    
    14.   <description>username to use against metastore database</description>    
    15. </property>    
    16. <property>    
    17.   <name>javax.jdo.option.ConnectionPassword</name>    
    18.   <value>123456<alue>    
    19.   <description>password to use against metastore database</description>    
    20. </property>  
    下载mysql jdbc包:
    wget http://downloads.mysql.com/archives/mysql-connector-java-5.0/mysql-connector-java-5.0.8.tar.gz .
    解压:
    tar -zxvf mysql-connector-java-5.0.8.tar.gz 

    将mysql-connector-java-5.0.8-bin.jar拷贝到hive lib目录下:
    cp mysql-connector-java-5.0.8/mysql-connector-java-5.0.8-bin.jar  ./lib

    启动hive:
    $ cd /home/zxm/hadoop/hive-0.8.1 ; ./bin/hive

    测试:
    $ ./hive
    WARNING: org.apache.hadoop.metrics.jvm.EventCounter is deprecated. Please use org.apache.hadoop.log.metrics.EventCounter in all the log4j.properties files.
    Logging initialized using configuration in jar:file:/home/zxm/hadoop/hive-0.8.1/lib/hive-common-0.8.1.jar!/hive-log4j.properties
    Hive history file=/tmp/work/hive_job_log_work_201207051945_218572007.txt
    hive> SHOW TABLES;
    OK
    Time taken: 7.281 seconds
    hive> CREATE TABLE pokes (foo INT, bar STRING);
    OK
    Time taken: 0.398 seconds
    hive> SHOW TABLES;                             
    OK
    pokes
    Time taken: 0.181 seconds
    hive> DESCRIBE pokes;
    OK
    foo     int
    bar     string
    Time taken: 0.58 seconds
    hive> 

  • 相关阅读:
    最小路径和
    S2 深入.NET和C#编程 机试测试错题积累
    S2 深入.NET和C#编程 笔试测试错题积累
    影院项目的内容信息
    抽象类和抽象的方法注意事项
    六种设计原则
    体检套餐的笔记
    C#图解 类和继承
    深入类的方法
    S2 深入.NET和C#编程 三:使用集合组织相关数据
  • 原文地址:https://www.cnblogs.com/scott19820130/p/4727437.html
Copyright © 2011-2022 走看看