hive的安装与简单配置

原创 2015年12月20日 14:45:21

介绍

本文简单介绍安装hive之前的准备, 安装hive时的配置和hive的简单使用, 作为一篇入门级的文章吧.

安装前的准备

linux的安装

hive是运行在hadoop平台上的应用, 因此需要先安装hadoop平台. 虽然, hadoop平台提供windows版本, 但是由于这个版本没有经过严格的测试, 而且这个windows版本是运行在mingw32上面的,
mingw32经常会出现一些莫名奇妙的问题, 所以这里不建议使用windows平台. 再加上, hadoop需要使用ssh, 而windows下并没有提供ssh, 这也增加了windows下部署hadoop的难度.

linux有众多衍生版, 这里选择opensuse作为安装的操作系统. 由于安装过程都是图形化界面操作, 这边就不再一一介绍.

jdk的安装

hadoop的运行需要使用jdk, apache hadoop的项目网站上也介绍了, 为了使hadoop发挥出最大的效率, 建议安装oracle jdk.
对于linux操作系统, 一般使用libreoffice作为默认office软件, 而这款软件需要使用jre才能运行, 因此, opensuse默认安装openjdk.
为了方便jdk各个版本之间的切换, opensuse提供了一个叫做”update-alternatives”的工具. 具体配置详见博主写的一篇博客.

hadoop的安装

为了能够运行hive, 需要搭建hadoop集群. 对于hadoop集群, 可以分为分布式集群和伪分布集群. 集群类型的选择也要看自己的硬件设备.
两种集群的搭建可以分别参考博主以前写的博客.

hive的安装与配置

hive下载

hive安装包需要从apache hive项目网站上下载. 项目网站上提供了二进制包和源代码. 方便起见, 可以选择编译好的二进制包. 当然, 为了更好的性能, 可以选择下载源代码进行编译.

hive安装

hive安装需要三样东西:

  1. jdk jdk版本需要1.7以上, 本文选择使用1.8
  2. hadoop hadoop支持2.x和1.x, 本文使用2.6
  3. 操作系统 最好使用linux操作系统. 本文选择opensuse 13.2

使用”tar”命令解压安装包, 并把hive放到相应的位置, 本文放在/opt/目录下:

tar -xzvf hive-x.y.z.tar.gz
mv ./hive-x.y.z /opt/hive

将hive的安装目录添加到环境变量, 并将hive的bin目录添加到PATH变量中:

export HIVE_HOME=/opt/hive/
export PATH=$HIVE_HOME/bin:$PATH

将hadoop的安装目录添加环境变量:

export HADOOP_HOME=/opt/hadoop

另外需要在hdfs中创建”/tmp”目录和”/user/hive/warehouse”, 分别用于存储表和临时文件.

hive提供了四种运行hive的方式,分别是:

  1. Hive CLI
  2. HiveServer2 和 Beeline
  3. HCatalog
  4. WebHCat (Templeton)

hive CLI

因为hive的bin目录已经添加了path变量, 因此, 可以直接使用hive命令启动:

hive

HiveServer2 和 Beeline

beeline提供多用户, 更加安全的服务, 因此beeline用得比较多.
hiveserver2启动时默认的地址是”localhost:10000”, 因此, 在使用beeline连接的时候, 需要使用” jdbc:hive2://localhost:10000”作为参数.
相关的命令如下:

hiveserver2
beeline -u jdbc:hive2://localhost:10000

同时也可以将 Beeline和HiveServer2在同一个进程里启动, 用于测试:

beeline -u jdbc:hive2://

HCatalog的使用

运行HCatalog相对简单了, 分别运行服务端和客户端程序, 服务端命令:

$HIVE_HOME/hcatalog/sbin/hcat_server.sh start

客户端命令:

$HIVE_HOME/hcatalog/bin/hcat

WebHCat的使用

WebHCat提供一个网页版的hive, 命令为:

$HIVE_HOME/hcatalog/sbin/webhcat_server.sh

hive的一些配置

hive默认的配置文件为”HIVEHOME/conf/hivedefault.xml","HIVE_HOME/conf/hive-site.xml”对配置进行修改.
hive是运行在hadoop之上的, 所以hive可以自定义hadoop的配置.

默认情况下, hive使用Berby数据库作为默认元数据存储介质. 这个数据是由java编写的文件数据库, 一次只能有一个实例进行访问.
从而使得hive只能打开一个实例. 为了解决这个问题, 可以把元数据存储迁移到mysql上面.
修改hive-site.xml, 修改一下内容

<property>
    <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://localhost:3306/hive?createData baseIfNotExist=true</value>
    <description>JDBC connect string for a JDBC metastore</description>
</property>
<property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
    <description>Driver class name for a JDBC metastore</description>
</property>
<property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>root</value>
   <description>username to use against metastore database</description>
</property>
<property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>test</value>
    <description>password to use against metastore database</description>
</property> 

hive的简单使用

创建表格

hive的表格分为内部表和外部表, 将内部表删除时, 会删除hive用户目录下的数据文件, 而外部表只是删除hive目录下的文件夹信息.

CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS] [db_name.]table_name
  [(col_name data_type [COMMENT col_comment], ...)]
  [COMMENT table_comment]
  [PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)]
  [CLUSTERED BY (col_name, col_name, ...) [SORTED BY (col_name [ASC|DESC], ...)] INTO num_buckets BUCKETS]
  [SKEWED BY (col_name, col_name, ...)]
     ON ((col_value, col_value, ...), (col_value, col_value, ...), ...)
     [STORED AS DIRECTORIES]
  [
   [ROW FORMAT row_format] 
   [STORED AS file_format]
     | STORED BY 'storage.handler.class.name' [WITH SERDEPROPERTIES (...)] 
  ]
  [LOCATION hdfs_path]
  [TBLPROPERTIES (property_name=property_value, ...)]   -- (Note: Available in Hive 0.6.0 and later)
  [AS select_statement];   -- (Note: Available in Hive 0.5.0 and later; not supported for external tables)

增删改查

同sql语句

相关文章推荐

Win10不需要Cygwin搭建大数据测试环境(4)---Hive

这篇文章是系列文章中的第四篇,主要描述了win10系安装Hive。

Hive安装-window

1.安装hadoop 2.从maven中下载mysql-connector-java-5.1.26-bin.jar(或其他jar版本)放在hive目录下的lib文件夹 3.配置hive环境变量,HIV...
  • F7ANTY
  • F7ANTY
  • 2017年05月22日 21:04
  • 1451

hive安装配置

hive安装配置---coco # by coco # 2014-07-25 5. hive的安装配置 下载:apache-hive-0.13.1-bin.tar.gz [root@...

Hive安装简介

Hive安装及简介
  • zythy
  • zythy
  • 2014年01月25日 15:14
  • 4323

Hive安装

前言Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。 Hive本质是将SQL转换为MapReduce程序 安装前提 linux环境(实测...

在 Windows 平台下部署 Hadoop 开发环境

在 Windows 平台下部署 Hadoop 开发环境 ,安装并配置Hadoop,学习怎么在本地调试运行Map/Reduce程序。...

如何用Hive“傻瓜式”搭建数据仓库—Hive安装部署

一、前言: 数据仓库主要用来用来存储公司或者企业的历史数据,即日积月累的数据。 1、数据库与数据仓库区别: 关系型数据库是基于事务性的,数据仓库是根据主题构建的。 2、使用示例: l 用户使...

hive2.1.1安装部署

转:http://blog.csdn.net/zhongguozhichuang/article/details/52702476 一、Hive 运行模式 与 Hadoop 类似,Hive 也...

在windows搭建hive eclipse开发环境

1)安装jdk 2)安装ant      2.1)下载ant最新版本      2.2)建ant解压到安装目录      2.3)修改环境变量,添加变量:ATN_HOME ,修改path,添加...
  • azhao_dn
  • azhao_dn
  • 2012年12月04日 18:31
  • 12463

hive开发环境搭建体验

最近为了规范hadoop团队的开发流程,所以已经在Eclipse里进行相关的hive开发工作。 但是目前在运行hive的时候,有几个问题需要注意下: 第一个问题: 直接运行CliDriver类报...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:hive的安装与简单配置
举报原因:
原因补充:

(最多只允许输入30个字)