`
wsql
  • 浏览: 11715129 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

Hive安装及问题解决

 
阅读更多

刚刚安装好hadoop迫不及待要玩下hive,所以自己找了些资料,安装了下hive,这里记录详细的安装过程和碰到的问题:

1.在安装hadoop之前首先确定hadoop已经安装成功,具体安装方法请参考hadoop安装。

2.下载hive版本 我下载的是

下载地址为http://hive.apache.org/releases.htm

解压文件:

tar -zxvf hive-0.7.0-bin.tar.gz
3.配置环境变量:

[root@localhost hive]# vim /etc/profile
export HADOOP_HOME=/root/hadoop-0.20.2
export PATH=$PATH:$HADOOP_HOME/bin

export HIVE_HOME=/usr/hive/hive-0.7.0-bin
PATH=$PATH:$HIVE_HOME/bin

export PATH
export JAVA_HOME=/usr/java/jdk1.7.0_01

4.我存储元数据是采用第三方的mysql数据库,这种情况下需要下载一个数据包mysql-connector-java-5.1.18-bin.jar,放到hive的lib目录下

在hive的conf目录下创建文件hive-site.xml配置文件,代码如下:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
<property>
<name>hive.metastore.local</name>
  <value>true</value>
</property>

<property>
<name>javax.jdo.option.ConnectionURL</name>
  <value>jdbc:mysql://192.168.0.237:3306/metastore_db?createDatabaseIfNotExist=true</value>
</property>

<property>
<name>javax.jdo.option.ConnectionDriverName</name>
  <value>com.mysql.jdbc.Driver</value>
</property>

<property> 
  <name>javax.jdo.option.ConnectionUserName</name> 
  <value>t237</value> 
</property> 
  
<property> 
  <name>javax.jdo.option.ConnectionPassword</name> 
  <value>123456</value> 
</property> 
<property> 
  <name>datanucleus.fixedDatastore</name> 
  <value>false</value> 
</property> 
</configuration>
5.运行hive

[root@localhost conf]# hive
Hive history file=/tmp/root/hive_job_log_root_201112061510_1145168119.txt
hive> show tables;
OK
log
log_info
log_new
maptile
result
Time taken: 2.889 seconds
hive> 
6.这里遇到点问题:刚开始执行hive时,执行show tables;报如下错误:

FAILED: Hive Internal Error: java.lang.RuntimeException(Error while making MR scratch directory - check filesystem config (null))
java.lang.RuntimeException: Error while making MR scratch directory - check filesystem config (null)
后来询问了google,得到如下解决办法:

原有的hadoop配置文件core-site.xml信息如下:

<!-- Put site-specific property overrides in this file. -->

<configuration>
<property>
    <name>hadoop.tmp.dir</name>
    <value>/hadoop-root/tmp</value>
</property>
<property>  
    <name>fs.default.name</name>  
    <value>hdfs://192.168.30.149:9000/</value>
</property>
</configuration>


改成:

<!-- Put site-specific property overrides in this file. -->

<configuration>
<property>
    <name>hadoop.tmp.dir</name>
    <value>/hadoop-root/tmp</value>
</property>
<property>  
    <name>fs.default.name</name>  
    <value>hdfs://hadoop149:9000/</value>
</property>
</configuration>
重启hadoop,运行hive,问题解决。

之后创建表一直很顺利,但是到查询表例如我执行:select size from log limit 10;时,又报错如下:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/hive/conf/HiveConf
后来问了下百度和google都没有结果,自己觉得是缺少了类文件,我便把hive/lib下所有的hive-*文件拷贝到hadoop的lib下

重启hadoop,问题解决。但是归根结底我觉得是$HADOOP_CLASSPATH变量没有配置清楚,这个之后再解决这里做个标记。

执行select 后运行正常:

hive> select size from log_info limit 12;
Total MapReduce jobs = 1
Launching Job 1 out of 1
Number of reduce tasks is set to 0 since there's no reduce operator
Starting Job = job_201112061127_0004, Tracking URL = http://hadoop149:50030/jobdetails.jsp?jobid=job_201112061127_0004
Kill Command = /root/hadoop-0.20.2/bin/hadoop job  -Dmapred.job.tracker=hdfs://192.168.30.149:9004 -kill job_201112061127_0004
2011-12-06 15:35:47,923 Stage-1 map = 0%,  reduce = 0%
2011-12-06 15:35:50,952 Stage-1 map = 9%,  reduce = 0%
2011-12-06 15:35:52,975 Stage-1 map = 27%,  reduce = 0%
2011-12-06 15:35:53,984 Stage-1 map = 45%,  reduce = 0%
2011-12-06 15:35:56,001 Stage-1 map = 64%,  reduce = 0%
2011-12-06 15:35:59,023 Stage-1 map = 82%,  reduce = 0%
2011-12-06 15:36:00,038 Stage-1 map = 100%,  reduce = 0%
2011-12-06 15:36:03,062 Stage-1 map = 100%,  reduce = 100%
Ended Job = job_201112061127_0004
现在又找到的心得问题:在执行删除表操作时,出现如下错误:

NestedThrowables:
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask
这个问题还没有解决:期待牛人解决


最后附上:内存数据库derby的配置

<configuration> 
<property> 
  <name>hive.metastore.local</name> 
  <value>true</value> 
  <description>controls whether to connect to remove metastore server or open a new metastore server in Hive Client JVM</description> 
</property> 
  
<property> 
  <name>javax.jdo.option.ConnectionURL</name> 
  <value>jdbc:derby://hadoop149:1527/metastore_db;create=true</value> 
  <description>JDBC connect string for a JDBC metastore</description> 
</property> 
  
<property> 
  <name>javax.jdo.option.ConnectionDriverName</name> 
  <value>org.apache.derby.jdbc.ClientDriver</value> 
  <description>Driver class name for a JDBC metastore</description> 
</property> 
  
</configuration>













分享到:
评论

相关推荐

    【63课时完整版】大数据实践HIVE详解及实战

    3.Hive的安装部署及启动 4.Hive的基本架构讲解 5.安装MySQL作为元数据库存储 6.配置Hive使用MySQL作为元数据库存储 7.Hive中基本命令的使用 8.Hive中常用的属性配置 9.Hive中常用的交互式命令 10Hive中数据库的管理...

    Hadoop+Spark+Hive+HBase+Oozie+Kafka+Flume+Flink+ES+Redash等详细安装部署

    1、内容概要:Hadoop+Spark+Hive+HBase+Oozie+Kafka+Flume+Flink+Elasticsearch+Redash等大数据集群及组件搭建指南(详细搭建步骤+实践过程问题总结)。 2、适合人群:大数据运维、大数据相关技术及组件初学者。 3、...

    hive-site.xml

    解决安装hive后,没有hive-site.xml的问题;把这个文件复制到conf的目录下,根据自己的配置更改下里面的部分内容就可以了

    hive编程指南中文版

    在本书中,读者还可以看到众多的实际使用场景,包括企业如何使用Hive解决了涉及PB级数据的问题。 · 使用Hive创建、修改和删除数据库、表、视图、函数和索引。 · 从文件到外部数据库,自定义数据存储格式和存储选项...

    Hive编程指南

    在本书中,读者还可以看到众多的实际使用场景,包括企业如何使用Hive解决了涉及PB级数据的问题。 · 使用Hive创建、修改和删除数据库、表、视图、函数和索引。 · 从文件到外部数据库,自定义数据存储格式和存储选项...

    hive安装配置,知识点,优化一套带走

    Hive大数据开发的重要工具。Hive用于解决海量结构化日志的数据统计工具。 基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能。

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

    基于Hadoop的数据仓库Hive学习指南,通过实验掌握基本的Hive安装方法; 2.掌握用数据仓库Hive来解决一些常见的数据库操作以及简单的Hive编程。

    Hive_1.2.1_Tez_0.9.1安装包.rar

    资源中包含了Hive1.2.1和Tez0.9.1安装包,安装配置说明可参考我的博客,如果安装过程中遇到问题可与我联系解决。

    CDH详细安装教程

    文档为CDH安装教程,代码为5.4.3版本,同样适用于新版本的安装,下载相应包即可按步骤安装。本人安装centos7+CDH5.12.1(3台虚拟机)成功,文档含安装过程中遇到的问题及解决方法,共勉。

    大数据技术之hive学习文档

    包括hive基本概念,hive的安装,hive的数据类型,ddl数据定义,查询,函数,压缩和存储,企业级优化,实战项目,及常见错误及解决方案等, 适合新手入门,期末复习等.

    大数据技术之Hive数据仓库工具

    第一章 Hive基本概念 第二章 Hive的安装 第三章 Hive数据类型 第四章 DDL数据定义 第五章 DML数据操作 第六章 查询 第七章 函数 第八章 压缩和存储 第九章 企业级调优 第十章 常见错误及解决方案

    Hadoop集群上安装hive并运行一个例子的排错分析

    Hadoop集群上安装Hive并运行一个例子;其中包括一些排错方法:Error: org.apache.hadoop.mapred.JobConf.unset(Ljava/lang/String;)V 以及:FAILED: Error in metadata: javax.jdo.JDOFatalDataStoreException: ...

    User Profile Hive Cleanup Utitity

    如果你的 Windows XP/2003 的应用程序日志中有诸如下面的警告记录: “Windows 无法卸载 XXX 用户的注册表,因为一个程序正在使用它……” 你可以试试这款软件,此软件安装后,可以解决上述问题。...

    小白快速掌握CDH的安装和配置视频教程

    2,理论+操作,培养解决实际问题的能力。 3,涉及到大数据离线和实时主流服务安装。 适用人群 1、对大数据感兴趣的在校生及应届毕业生。 2、对目前职业有进一步提升要求,希望从事大数据行业高薪工作的在职人员。 3...

    hive500多网盘链接学习包含代码

    全面了解、安装部署在Hadoop生态环境下的数据仓库,解决pb级数据量的计算问题。

    py_hive

    Py Hive将原始的移植到python。... 为此,您必须在Windows上安装... MobaXterm是免费的,而且似乎可以解决问题。 安装并运行此应用程序: 然后在您的终端中粘贴以下内容: 导出DISPLAY =:0导出LIBGL_ALWAYS_INDIRECT = 1

    元数据管理Atlas预研_v0.1.docx

    本文主要以atlas0.8.4为例,适配hadoop2.8.5,hive1.2.1,hbase1.3.1,安装集成。以及导入hive元数据,hbaes元数据其中遇到的一些问题和解决办法,包括hive列血缘关系生成。

    Hadoop-2.8.0分布式安装手册

    本文的安装只涉及了hadoop-common、hadoop-hdfs、hadoop-mapreduce和hadoop-yarn,并不包含HBase、Hive和Pig等。  NameNode存储了一个文件有哪些块,但是它并不存储这些块在哪些DataNode上,DataNode会上报有哪些块...

    【推荐】最强大数据学习与最佳实践资料合集(基础+架构+数仓+治理+案例)(100份).zip

    hive安装 hive语法和常用函数 Kafka安装 kylin安装 mapreduce调优指南 sqoop安装 二、架构篇 Flink-1.11 Hive集成与批流一体 ClickHouse在苏宁用户画像场景的实践 优酷大数据 OLAP 技术选型 阿里数据湖选型 各种...

Global site tag (gtag.js) - Google Analytics