Hive介绍和Hive环境搭建
一.Hive介绍
Hive包含用户接口、元数据库、解析器和数据仓库等组件组成,其中用户接口包含shell客户端、JDBC、ODBC、Web接口等。元数据库主要是指定义在hive中的表结构信息,一般保存到关系型数据库中,默认是derby,一般使用mysql进行保存。解析器主要功能是将HQL语句转换为mapreduce代码。数据仓库就是由hdfs组成的数据存储容器。
(1)Hive组成
Hive包含用户接口、元数据库、解析器和数据仓库等组件组成,其中用户接口包含shell客户端、JDBC、ODBC、Web接口等。元数据库主要是指定义在hive中的表结构信息,一般保存到关系型数据库中,默认是derby,一般使用mysql进行保存。解析器主要功能是将HQL语句转换为mapreduce代码。数据仓库就是由hdfs组成的数据存储容器。
(2)Hive结构

(3)Hive安装
Hive根据metastore的存储位置不同,分为三种安装模式:内嵌模式,本地模式,远程模式。内嵌模式就是使用derdy存储元数据;本地模式是将hvie.metastore.local设置为true,就是说metastore和hive客户端安装在同一台机器上;远程模式指的是我们明确指定metastore安装的机器位置,而且可以指定多个,需要给定参数hive.metastore.uris并且hive.metastore.local必须设置为false。
Hive远程模式安装,使用mysql进行元数据的存储。安装步骤:
1. 安装mysql数据库。
2. hive本地模式安装。
二.安装mysql
1. 使用root用户: su root
2. 安装
yum install mysql
yum install mysql-server
yum install mysql-devel(可选)
3. 修改配置信息,添加: vim /etc/my.cnf
如果是rpm安装的话,则my.cnf在/usr目录
[mysql]
default-character-set=utf8
[mysqld]
character-set-server=utf8
lower_case_table_names=1
4. 启动mysql:
service mysqld restart/stop/start
启动时有可能会报以下的错:
MySQL server PID file could not be found![失败]Starting MySQL...The server quit without updating PID file (/usr/local/mysql/data/snsgou.pid).[失败]5. 配置超级用户名和密码,
mysqladmin -u root password 123456
6. root用户登录
mysql -u root -p 123456
可能会报错:
Access denied for user 'root'@'localhost' (using password: YES) 拒绝访问
我的解决方法是:将/usr/my.cnf配置文件加上skip-federated,再复制到/etc目录下,此举为跳过密码认证
7. 创建mysql用户:create user 'hive' identified by 'hive';
8. 授权:grant all privileges on *.* to 'hive'@'%' with grant option
9. 重启一下这个mysql服务。
10. 使用hive用户创建数据库并修改连接信息。
create database hive;
alter database hive character set latin1;
终端输入mysql,结果如图所示即安装成功

三. 安装hive
1. 下载hive:http://archive.cloudera.com/cdh5/cdh/5/hive-0.13.1-cdh5.3.6.tar.gz
2. hive的帮助文档位置:https://cwiki.apache.org/confluence/display/Hive/LanguageManual,
hive官网:http://hive.apache.org
3. 参考hive-site.xml文件
4. 将bin目录添加到path目录中,
vim ~/.bash_profile
export HIVE_HOME=/home/hadoop/bigdater/hive-0.13.1-cdh5.3.6/
export PATH=$PATH:$HIVE_HOME/bin
source ~/.bash_profile
5. 移动mysql驱动jar到hive的lib文件夹下。
6. 启动metastore服务(启动hdfs+yarn服务)
hive --service metastore &
7. 进入hive的客户端
hive
如下图所示

Hive介绍和Hive环境搭建的更多相关文章
- Python介绍以及Python环境搭建
Python介绍以及Python环境搭建 1.Python 发展历史 Python是由Guido van Rossum在八十年代末和九十年代初,在荷兰国家数学和计算机科学研究所设计出来的,据说是在圣诞 ...
- 【Hadoop离线基础总结】Apache Hadoop的三种运行环境介绍及standAlone环境搭建
Apache Hadoop的三种运行环境介绍及standAlone环境搭建 三种运行环境 standAlone环境 单机版的hadoop运行环境 伪分布式环境 主节点都在一台机器上,从节点分开到其他机 ...
- Python简单介绍以及Python环境搭建(入门1)
转载请标明出处: http://www.cnblogs.com/why168888/p/6400694.html 本文出自:[Edwin博客园] Python 简单介绍 适合领域: Web网站和各种网 ...
- 一、Linux 设备驱动介绍及开发环境搭建
1.1 Linux 设备驱动介绍 1.1.1 分类及特点 计算机系统的硬件主要由 CPU.存储器和外设组成. 当前 CPU 内部都集成有存储器和外设适配器. 外设适配器有入 UART.IIC 控制器. ...
- Apache Spark源码走读之12 -- Hive on Spark运行环境搭建
欢迎转载,转载请注明出处,徽沪一郎. 楔子 Hive是基于Hadoop的开源数据仓库工具,提供了类似于SQL的HiveQL语言,使得上层的数据分析人员不用知道太多MapReduce的知识就能对存储于H ...
- Hive on Spark运行环境搭建
Hive是基于Hadoop的开源数据仓库工具,提供了类似于SQL的HiveQL语言,使得上层的数据分析人员不用知道太多MapReduce的知识就能对存储于Hdfs中的海量数据进行分析.由于这一特性而收 ...
- 1. React介绍 React开发环境搭建 React第一个程序
什么是 React React 是 Facebook 发布的 JavaScript 库,以其高性能和独特的设计理念受到了广泛关注. React的开发背景 Faceboo ...
- Alluxio1.0.1最新版(Tachyon为其前身)介绍,+HDFS分布式环境搭建
Alluxio(之前名为Tachyon)是世界上第一个以内存为中心的虚拟的分布式存储系统.它统一了数据访问的方式,为上层计算框架和底层存储系统构建了桥梁. 应用只需要连接Alluxio即可访问存储在底 ...
- 一、Linux 设备驱动介绍及开发环境搭建(续)
1.2.6 uboot 编译安装 嵌入式 bootloader 的功能: 功能类似于 PC 的 BIOS.硬件检测是否正常 加载操作系统镜像到 RAM 设置不同的启动方式 常见的启动方式: NOR/N ...
随机推荐
- 利用python实现电影推荐
"协同过滤"是推荐系统中的常用技术,按照分析维度的不同可实现"基于用户"和"基于产品"的推荐. 以下是利用python实现电影推荐的具体方法 ...
- scrapy-CrawlSpider的rules使用规则
1.allow设置规则的方法:要能够限制在我们想要的url上面.不要跟其他的url产生相同的正则表达式即可: 2.什么情况下使用follow:如果在爬取页面的时候,需要将满足当前条件的url再进行跟进 ...
- random_select
package sorttest; //expected and worst running time is O(n),asuming that the elements are distinct ...
- scp 脚本
#!/bin/bash ty=$ local_dir=$ remote_ip=$ remote_dir=$ showUsage() { echo -e "\033[31m ty local_ ...
- DG备库,实时应用如何判断,MR进程,及MRP应用归档,三种情况的查询及验证
本篇文档学习,DG备库,实时应用如何判断,MR进程,及MRP应用归档,三种情况的查询及验证 1.取消MRP进程 备库查询进程状态select process,client_process,sequen ...
- Python中的print、input函数以及Python中交换两个变量解析
一.Python中的值交换操作 首先明确一点点,Python中的一切都是面向对象的,可以理解为Python的中一切都是对象. 我们知道Java也是面向对象的语言,但是在Java中定义一个值变量如下: ...
- Windows 下使用nginx命令启动
http://wanganwu.blog.163.com/blog/static/7788722012322111417966/ Windows下Nginx的启动.停止等命令 在Windows下使用N ...
- BZOJ 5099: Pionek(双指针)(占位)
pro:有N个向量,你可以选择一些向量,使得其向量和离原点最远. 输出这个欧几里得距离的平方. sol:(感觉网上的证明都不是很充分,我自己也是半信半疑吧)日后证明了再补. #include<b ...
- Atcode ABC105-C:Base -2 Number
C - Base -2 Number Time Limit: 2 sec / Memory Limit: 1024 MB Score : 300300 points Problem Statement ...
- HTTP/2及HTTP/3特性
HTTP/2及HTTP/3特性 摘要: 学习 HTTP/2 与 HTTP/3. 前言 HTTP/2 相比于 HTTP/1,可以说是大幅度提高了网页的性能,只需要升级到该协议就可以减少很多之前需要做的性 ...