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 ...
随机推荐
- LVS+OSPF+FULLNAT集群架构
OSPF:OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(aut ...
- 多进程于多线程的区别,cpu密集型适合用什么
多线程:在单个程序中同事运行多少个线程完成不同的工作,成为线程. 线程共享内存空间,进程的内存是独立的, 同一个进程的线程间可以直接交流: 两个进程想通信,必须通过一个中间代理来实现, 一个线程可以控 ...
- Python 封装
# 封装: # 1. 对属性的封装 # 2. 对功能的封装 # 3. 模块 # 4. 包 class Student: def __init__(self, num, name, clazz): se ...
- eclipse逆向生成hibernate的实体类(注解和配置文件)
eclipse从数据库逆向生成Hibernate实体类(注解和配置文件) 分类: hibernate 数据库 java 2011-10-22 21:28 2915人阅读 评论(8) 收藏 举报 做项目 ...
- Ubuntu 18.04开启TCP网络协议BBR加速的方法(Google BBR 拥塞控制算法)
TCP BBR 是Google给出的一个改良版的tcp网络协议,相当于在已有TCP协议的基础上打了个补丁的意思,这个改良版TCP协议对拥塞控制有很好的支持,对于网络较差的环境有不错的应用场景,当然这里 ...
- BT觀念分享和常見問題彙整
一. TCP/IP基本觀念 1. IP : 每台在TCP/IP網路上的電腦必須具備的一個代表號或一個地址.IP又分為private IP(192.168.x.x /10.x.x.x /172.16.x ...
- thinkphp+redis实现秒杀功能(转)
1,安装redis,根据自己的php版本安装对应的redis扩展(此步骤简单的描述一下) 1.1,安装 php_igbinary.dll,php_redis.dll扩展此处需要注意你的php版本如图: ...
- 向指定URL发送GET、POST方法的请求
/** * 向指定URL发送GET方法的请求 * * @param url * 发送请求的URL * @param param * 请求参数,请求参数应该是 name1=value1&name ...
- CentOS上部署JAVA服务【转】
http://www.th7.cn/Program/java/201511/686437.shtml 本文将介绍如何在CentOS上运行Java Web服务,其中将包括如何搭建JAVA运行环境.如何开 ...
- Version Control 版本控制
一.version control是什么: version control版本控制,是指对软件开发过程中各种程序代码.配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一. 二.versi ...