zoukankan      html  css  js  c++  java
  • 安装HIVE

    参考:https://cwiki.apache.org/confluence/display/Hive/GettingStarted
    1.下载hive安装包
        到apache官网或者其它地方下载hive压缩包,然后解压到/usr/local/hive-2.0.0

    2.依赖
        hive依赖以下内容:
    1)java 1.7或者更高版本
    2)hadoop2.x,hadoop1.x(只支持hive1)
    3)需要$HADOOP_HOME或者$HADOOP_PREFIX变量

    3.配置元数据库
        hive的元数据可以三种方式存储。参考:http://duguyiren3476.iteye.com/blog/1632868
    这里选择以derby来存储元数据。也可以用mysql或者postgreySql来存储
    (1)使用内置的derby数据库做为元数据库
        使用derby的缺点是同一时刻只能有一个hive启动。并且在目录创建元数据库(metastore_db),十分的杂乱。
        首先修改conf/hive-site.xml为如下内容:
    1. <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    2. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    3. nfiguration>
    4. <property>
    5. <name>javax.jdo.option.ConnectionURL</name>
    6. <value>jdbc:derby:;databaseName=metastore_db;create=true</value>
    7. </property>
    8. <property>
    9. <name>javax.jdo.option.ConnectionDriverName</name>
    10. <value>org.apache.derby.jdbc.EmbeddedDriver</value>
    11. </property>
    12. <property>
    13. <name>hive.metastore.local</name>
    14. <value>true</value>
    15. </property>
    16. <property>
    17. <name>hive.metastore.warehouse.dir</name>
    18. <value>/user/hive/warehouse</value>
    19. </property>
    20. </configuration>
    然后删除$HIVE_HOME下的metastore_db文件夹
    1. [root@node1 hive-2.0.0]# rm -rf metastore_db
    然后初始化元数据库
    1. [root@node1 hive-2.0.0]# schematool -initSchema -dbType derby
    测试:
    1. [root@node1 hive-2.0.0]# hive
    2. hive> show tables;
    3. OK
    4. Time taken: 1.154 seconds


    (2)以数据库做为元数据库
    1. <configuration>
    2. <property>
    3. <name>javax.jdo.option.ConnectionURL</name>
    4. <value>jdbc:mysql://yangxw:3306/hive_meta</value>
    5. </property>
    6. <property>
    7. <name>javax.jdo.option.ConnectionDriverName</name>
    8. <value>com.mysql.jdbc.Driver</value>
    9. </property>
    10. <property>
    11. <name>hive.metastore.local</name>
    12. <value>false</value>
    13. </property>
    14. <property>
    15. <name>hive.metastore.warehouse.dir</name>
    16. <value>/user/hive/warehouse</value>
    17. </property>
    18. <property>
    19. <name>javax.jdo.option.ConnectionPassword</name>
    20. <value>root</value>
    21. <description>password to use against metastore database</description>
    22. </property>
    23. <property>
    24. <name>javax.jdo.option.ConnectionUserName</name>
    25. <value>root</value>
    26. <description>Username to use against metastore database</description>
    27. </property>
    28. <property>
    29. <name>hive.metastore.uris</name>
    30. <value>thrift://node1:9083</value>
    31. </property>
    32. </configuration>
    如果想把客户端和服务端分开,把蓝色背景的单独放在客户端hive-site.xml中即可

    然后执行初始化元数据库:
    schematool -dbType mysql -initSchema

    开启元数据服务(可选):
    hive --service metastore -p 9083
    后台启用服务执行:
     nohup bin/hive --service metastore -p 9083 >.metastore_log &
    然后在客户端执行bin/hiv即可


    关于metastore服务:
    不启动metasotre服务的话,各个hive客户端分别连接到mysql数据库;启动后,客户端连接到metastore服务器,metastore服务器再连接mysql;所以一般情况下没必要启动metastore服务。CDH使用此种方式,因此必须启动metasotre服务.如果配置了:thrift://node1:9083 就必须启动metastore.
    hive server是给hive之外的客户端用的,比如java。一般也不用启动。

































  • 相关阅读:
    CSU software 新手练习1 解题报告
    HDU 4067 Random Maze
    HDU 1853 Cyclic Tour
    Notepad++搭配MinGW编译运行C,C++程序
    ACM POJ3299-Humidex
    开始正常的做题了=。=
    写在杭电热身赛2之后
    大二了~
    Vim 学习笔记之cvim hot key
    The 10th Zhejiang Provincial Collegiate Programming Contest
  • 原文地址:https://www.cnblogs.com/skyrim/p/7455893.html
Copyright © 2011-2022 走看看