12 Hive介绍和Hive环境搭建
来源:互联网 发布:淘宝钻石展位怎么样 编辑:程序博客网 时间:2024/06/07 01:10
Hive介绍
Hive是构建在Hadoop之上的数据仓库平台,设计目标就是将hadoop上的数据操作同SQL结合,让熟悉SQL编程的开发人员能够轻松的向Hadoop平台上转移。
Hive可以在HDFS上构建数据仓库存储结构化数据,这些数据来源就是hdfs上,hive提供了一个类似sql的查询语言HiveQL来进行查询、变换数据等操作。当然HiveQL语句的底层是转换为相应的mapreduce代码进行执行的。
Hive组成
Hive包含用户接口、元数据库、解析器和数据仓库等组件组成,其中用户接口包含shell客户端、JDBC、ODBC、Web接口等。元数据库主要是指定义在hive中的表结构信息,一般保存到关系型数据库中,默认是derby,一般使用mysql进行保存。解析器主要功能是将HQL语句转换为mapreduce代码。
数据仓库就是由hdfs组成的数据存储容器。
Hive安装
Hive根据metastore的存储位置不同,分为三种安装模式:内嵌模式,本地模式,远程模式。内嵌模式就是使用derdy存储元数据;本地模式是将hive.metastore.local设置为true,就是说metastore和hive客户端安装在同一台机器上;远程模式指的是我们明确指定metastore安装的机器位置,而且可以指定多个,需要给定参数hive.metastore.uris并且hive.metastore.local必须设置为false。
Hive远程模式安装,使用mysql进行元数据的存储。安装步骤:
1. 安装mysql数据库。
2. hive本地模式安装。
Hive安装–Mysql安装
安装步骤:
1. 使用root用户安装mysql。
2. 修改/etc/my.cnf文件中的配置信息。
3. 启动mysql
4. 设置root用户密码
5. root用户登录
6. 创建hive元数据的mysql用户并授权。
7. 使用新用户登录,然后创建数据库,并修改数据库的连接方式。
1. 使用root用户: su root2. 安装 【需要联网】 yum install mysql yum install mysql-server yum install mysql-devel(可选)3. 修改配置信息,添加: vim /etc/my.cnf【不要输入错误!!!】 [mysql] default-character-set=utf8 [mysqld] character-set-server=utf8 lower_case_table_names=14. 启动mysql:service mysqld restart/stop/start5. 配置超级用户名和密码, mysqladmin -u root password 1234566. root用户登录mysql -uroot -p123456use mysql;select user,host,password from user;delete from user where password="";7. 创建mysql用户:create user 'hive' identified by 'hive';8. 授权:grant all privileges on *.* to 'hive'@'%' with grant option ;9. 重启一下这个mysql服务。service mysqld restartmysql -hhh -uhive -p10. 使用hive用户创建数据库并修改连接信息。 create database hive; alter database hive character set latin1;
Hive安装–Hive安装
安装步骤:
1. 下载hive,下载地址:http://archive.cloudera.com/cdh5/cdh/5/hive-0.13.1-cdh5.3.6.tar.gz
2. 解压下载的压缩包。
3. 配置环境变量hive-site.xml。
4. 将mysql-connector-java-5.1.31.jar移动到hive的lib文件夹下。
5. 将bin目录添加到$PATH环境变量中去。
6. 启动metastore服务。hive –service metastore &.
7. 进入hive的shell客户端,验证是否安装成功。
1. 下载hive:http://archive.cloudera.com/cdh5/cdh/5/hive-0.13.1-cdh5.3.6.tar.gz2. hive的帮助文档位置:https://cwiki.apache.org/confluence/display/Hive/LanguageManual, hive官网:http://hive.apache.org3. 参考hive-site.xml文件[hadoop@hh conf]$ cp hive-default.xml.template hive-site.xml4. 将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_profile5. 移动mysql驱动jar到hive的lib文件夹下。[hadoop@hh lib]$ cp ~/bigdater/softs/mysql-connector-java-5.1.31.jar .6. 启动metastore服务(启动hdfs+yarn服务) hive --service metastore &7. 进入hive的客户端 hive
hive-site.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration> <property> <name>hive.metastore.uris</name> <value>thrift://hh:9083</value> </property> <property> <name>hive.metastore.warehouse.dir</name> <value>/hive</value> </property> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://hh:3306/hive?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=UTF-8</value> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>hive</value> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>hive</value> </property></configuration>
Hive Web界面安装
Hive提供了一个Web的操作客户端,一般我们通过该页面查看hive的信息,配置信息包括:hive.hwi.listen.host指定监听ip(默认0.0.0.0),hive.hwi.listen.port监听端口(默认9999),hive.hwi.war.file=xxx。另外需要将java的tool.jar文件移动到hive的lib文件夹中。启动命令为: hive –service hwi &
- 12 Hive介绍和Hive环境搭建
- Hive环境搭建和实例
- 《Programming Hive》读书笔记(一)Hadoop和hive环境搭建
- Hadoop和Hive单机环境搭建
- Hive环境搭建
- 搭建hive调试环境
- Hive环境搭建
- hive环境搭建
- 搭建hive运行环境
- hive的环境搭建
- 关于hive环境搭建
- Hive环境搭建
- Hive环境搭建
- hive 环境搭建
- hive环境搭建
- Hadoop+Hive环境搭建
- Hive环境搭建
- Hive环境搭建
- Android5 Lollipop 中关于 SELinux 安全机制调试笔记
- maven创建struts2项目
- 第五届蓝桥杯 省赛 JavaB组 猜字母
- SQL多表连接查询(详细实例)
- Spark整合kafka0.10.0新特性(一)
- 12 Hive介绍和Hive环境搭建
- Visio2007安装
- 青蛙跳台阶问题
- 正则表达式,字符串操作
- Unity3D安卓平台发布配置
- JVM学习之类加载
- 117. Populating Next Right Pointers in Each Node II
- 新概念英语4 The sporting spirit 体育精神
- Android实现Activity之间通信的方法