Hadoop伪分布环境下Hive安装与配置详解

需积分: 19 1 下载量 123 浏览量 更新于2024-09-12 收藏 135KB DOCX 举报
本文档主要介绍了如何在CentOS 6.4环境下进行Hadoop 2.2.0和Hive 0.12.0的伪分布式安装,以及处理可能遇到的错误和配置步骤。以下是详细的内容概要: 1. **环境与软件准备**: - 操作系统:CentOS 6.4 x86_64 - Hadoop版本:2.2.0 - Hive版本:0.12.0 - 数据库:MySQL(默认版本5.1.66),后续需升级或配置 2. **MySQL管理**: - 安装与卸载:检查已安装的MySQL,使用`yum remove`卸载旧版,然后重新安装`yum install`。 - 基本配置:设置MySQL开机自启动,首次使用时设置密码,必要时通过编辑`/etc/my.cnf`进行调整。 3. **Hive JDBC驱动**: - 将MySQL JDBC驱动添加到Hive的lib目录,确保驱动与MySQL版本兼容(5.1的驱动支持4.1-6.0,推荐尽量匹配)。 4. **创建Hive数据库和设置编码**: - 创建Hive数据库:`CREATE DATABASE hive;` - 设置数据库字符集:`ALTER DATABASE hive CHARACTER SET latin1;` 5. **Hive权限设置**: - 解压Hive安装包:`tar -zvxf hive-0.12.0.tar.gz` - 修改目录名称:`mv hive-0.12.0 hive` - 配置环境变量:编辑`hive-env.sh`,指定所有者为hadoop,并添加必要的配置。 - 复制配置文件:如`hive-default.xml`和`hive-site.xml`,确保所有者为hadoop。 6. **Hive-site.xml配置**: - 添加数据库连接信息,包括主机名(如localhost)、数据库名、用户名(建议使用root)、以及MySQL登录密码。 7. **验证Hive安装**: - 切换到Hadoop用户并检查Hadoop是否正常运行。 - 执行Hive:进入Hive目录并运行`./hive`,可能会有警告,可以忽略继续。 8. **使用Hive进行操作**: - 使用Hive命令行工具进行数据处理和查询。 总结来说,本文提供了在CentOS 6.4上搭建Hadoop 2.2.0和Hive 0.12.0伪分布环境的详细步骤,包括MySQL的升级、配置和Hive的安装、配置以及连接数据库的操作。通过这些步骤,读者可以成功地在自己的环境中运行Hive,从而进行大数据分析。

结合下面hive元数据信息,生成hive建表语句,并且加上comment,注意day是分区 dwd_weibo_crawl NULL appmarket_appinfo GN线应用市场 2021-01-07 15:07:29 apk 应用包名 string day string入库日期 org.apache.hadoop.hive.ql.io.orc.OrcSerde serialization.format 1 hdfs://DSbigdata/hiveDW/dwd_exten_crawl/appmarket_appinfo org.apache.hadoop.hive.ql.io.orc.OrcInputFormat org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat dwd_weibo_crawl NULL appmarket_appinfo GN线应用市场 2021-01-07 15:07:29 app_name 应用名称 string day string 入库日期 org.apache.hadoop.hive.ql.io.orc.OrcSerde serialization.format 1 hdfs://DSbigdata/hiveDW/dwd_exten_crawl/appmarket_appinfo org.apache.hadoop.hive.ql.io.orc.OrcInputFormat org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat dwd_weibo_crawl NULL appmarket_appinfo GN线应用市场 2021-01-07 15:07:29 app_url 平台详情页链接 string day string入库日期 org.apache.hadoop.hive.ql.io.orc.OrcSerde serialization.format 1 hdfs://DSbigdata/hiveDW/dwd_exten_crawl/appmarket_appinfo org.apache.hadoop.hive.ql.io.orc.OrcInputFormat org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat dwd_weibo_crawl NULL appmarket_appinfo GN线应用市场 2021-01-07 15:07:29 cate 应用所属分类 string day string入库日期 org.apache.hadoop.hive.ql.io.orc.OrcSerde serialization.format 1 hdfs://DSbigdata/hiveDW/dwd_exten_crawl/appmarket_appinfo org.apache.hadoop.hive.ql.io.orc.OrcInputFormat org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat dwd_weibo_crawl NULL appmarket_appinfo GN线应用市场 2021-01-07 15:07:29 other 其他 string day string 入库日期 org.apache.hadoop.hive.ql.io.orc.OrcSerde serialization.format 1 hdfs://DSbigdata/hiveDW/dwd_exten_crawl/appmarket_appinfo org.apache.hadoop.hive.ql.io.orc.OrcInputFormat org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat dwd_weibo_crawl NULL appmarket_appinfo GN线应用市场 2021-01-07 15:07:29 region 平台名称 string day stri

2023-06-10 上传

[root@zhaosai ~]# hive Logging initialized using configuration in jar:file:/opt/programs/apache-hive-1.2.2-bin/lib/hive-common-1.2.2.jar!/hive-log4j.properties Exception in thread "main" java.lang.RuntimeException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:522) at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:677) at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:621) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.hadoop.util.RunJar.run(RunJar.java:221) at org.apache.hadoop.util.RunJar.main(RunJar.java:136) Caused by: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient at org.apache.hadoop.hive.metastore.MetaStoreUtils.newInstance(MetaStoreUtils.java:1523) at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.<init>(RetryingMetaStoreClient.java:86) at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:132) at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:104) at org.apache.hadoop.hive.ql.metadata.Hive.createMetaStoreClient(Hive.java:3005) at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:3024) at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:503) ... 8 more Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.apache.hadoop.hive.metastore.MetaStoreUtils.newInstance(MetaStoreUtils.java:1521) ... 14 more Caused by: javax.jdo.JDOFatalInternalException: Error creating transactional connection factory NestedThrowables:

2023-06-09 上传