大数据系列之数据仓库Hive安装
Hive系列博文,持续更新~~~
大数据系列之数据仓库Hive原理
大数据系列之数据仓库Hive安装
大数据系列之数据仓库Hive中分区Partition如何使用
大数据系列之数据仓库Hive命令使用及JDBC连接
Hive主要分为以下几个部分
⽤户接口
1.包括CLI,JDBC/ODBC,WebUI
元数据存储(metastore)
1.默认存储在⾃带的数据库derby中,线上使⽤时⼀般换为MySQL
驱动器(Driver)
1.解释器、编译器、优化器、执⾏器
Hadoop
1.⽤MapReduce 进⾏计算,⽤HDFS 进⾏存储
前提部分:Hive的安装需要在Hadoop已经成功安装且成功启动的基础上进行安装。若没有安装请移步至大数据系列之Hadoop分布式集群部署。
使用包: apache-hive-2.1.1-bin.tar.gz, mysql-connector-java-5.1.27-bin.jar
云盘,密码:seni
本文将Hive安装在Hadoop Master节点上,以下操作仅在master服务器上进行操作。
1. 切换至普通用户 su mfz
2. 将gz包上传至目录下
/home/mfz
3.解压
tar -xzvf apache-hive-2.1.1-bin.tar.gz
4.目录:
5.创建hive-site.xml
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>hive.metastore.uris</name>
<value>thrift://localhost:9083</value>
<description>ThriftURIfor theremotemetastore. Usedbymetastoreclientto connectto remotemetastore.</description>
</property>
<property>
<name>hive.server2.thrift.port</name>
<value>10000</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive_13?createDatabaseIfNotExist=true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hadoop</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>hadoop</value>
</property>
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
<description>locationofdefault databasefor thewarehouse</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>datanucleus.autoCreateSchema</name>
<value>true</value>
</property>
<property>
<name>datanucleus.autoStartMechanism</name>
<value>SchemaTable</value>
</property>
<property>
<name>datanucleus.schema.autoCreateTables</name>
<value>true</value>
</property>
<property>
<name>beeline.hs2.connection.user</name>
<value>mfz</value>
</property>
<property>
<name>beeline.hs2.connection.password</name>
<value>111111</value>
</property>
</configuration>
5.1由配置文件可看出,我们需要mysql的数据库hive_13,数据库用户名为hadoop,数据库密码为hadoop.
6.安装mysql
6.1 安装参考文章:Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置
6.2 建立mysql数据库、用户、权限 参考文章:使用MySQL命令行新建用户并授予权限的方法
7.启动验证Mysql是否安装配置成功 :使用hadoop用户登录
mysql -u hadoop -p
8.配置hive环境变量:
vi /home/mfz/.bash_profile
#Hive CONFIG
export HIVE_HOME=/home/mfz/apache-hive-2.1.1-bin
export PATH=$PATH:$HIVE_HOME/bin #wq .bash_profile
#生效配置
source /home/mfz/.bash_profile
#验证是否生效
echo $HIVE_HOME [mfz@master apache-hive-2.1.1-bin]$ echo $HIVE_HOME
/home/mfz/apache-hive-2.1.1-bin
9. 将mysql的java connector复制到依赖库中
cp resources/msyql/mysql-connector-java-5.1.27-bin.jar apache-hive-2.1.1-bin/bin/
10.启动hive,命令: hive; 若出现如下几种错误请参照对应解决方案;
错误1:
原因:Hive metastore database is not initialized
解决方案:执行命令
schematool -dbType mysql -initSchema
错误2:
原因:hadoop 安全模式打开导致
解决方案:执行命令
#关闭hadoop安全模式
hadoop dfsadmin -safemode leave
11.启动hive.
A.方式1: hive命令
B.方式2(重要):
beeline
!connect jdbc:hive2://master:10000/default mfz 111111
说明default是database名称,mfz是master服务器用户,111111是用户的登录密码.
因为beeline是取代hive客户端的新客户端,它访问HS2来发起hive操作,但是别急着敲下命令,继续往下看:这里涉及一个hadoop.proxy的概念:默认HS2是以user=anonymous身份访问Hdfs的,我们称HS2是hadoop的一个代理服务。但是,我们实际上希望以mfz身份去访问hdfs,因为此前创建的hive数据目录都是属于mfz用户的,anonymous是无法访问的,那么此时就需要给hadoop配置一个proxyuser,意思是HS2代理可以支持用户以mfz身份访问hdfs,而不是anonymous用户。
为了实现这个能力,需要修改hadoop项目的core-site.xml配置来实现(记得重启namenode和datanode):
<property>
<name>hadoop.proxyuser.mfz.groups</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.mfz.hosts</name>
<value>*</value>
</property>
10.hive 使用命令.
数据定义语句DDL
Create/Drop/Alter Database
Create/Drop/Truncate Table
Alter Table/Partition/Column
Create/Drop/Alter View
Create/Drop/Alter Index
Create/Drop Function
Create/Drop/Grant/Revoke Roles and Privileges
Show
Describe
完~ 关于Hive的Nosql操作命令与Jdbc访问Hive方式见博文 大数据系列之数据仓库Hive使用
转载请注明出处:
作者:mengfanzhu
原文链接:http://www.cnblogs.com/cnmenglang/p/6661488.html
大数据系列之数据仓库Hive安装的更多相关文章
- 大数据系列之数据仓库Hive命令使用及JDBC连接
Hive系列博文,持续更新~~~ 大数据系列之数据仓库Hive原理 大数据系列之数据仓库Hive安装 大数据系列之数据仓库Hive中分区Partition如何使用 大数据系列之数据仓库Hive命令使用 ...
- 大数据系列之数据仓库Hive原理
Hive系列博文,持续更新~~~ 大数据系列之数据仓库Hive原理 大数据系列之数据仓库Hive安装 大数据系列之数据仓库Hive中分区Partition如何使用 大数据系列之数据仓库Hive命令使用 ...
- 大数据系列之数据仓库Hive中分区Partition如何使用
Hive系列博文,持续更新~~~ 大数据系列之数据仓库Hive原理 大数据系列之数据仓库Hive安装 大数据系列之数据仓库Hive中分区Partition如何使用 大数据系列之数据仓库Hive命令使用 ...
- 【大数据系列】apache hive 官方文档翻译
GettingStarted 开始 Created by Confluence Administrator, last modified by Lefty Leverenz on Jun 15, 20 ...
- 【大数据系列】win10上安装hadoop开发环境
为了方便采用了Cygwin模拟linux环境的方法 一.安装JDK以及下载hadoop hadoop官网下载hadoop http://hadoop.apache.org/releases.html ...
- 大数据系列(5)——Hadoop集群MYSQL的安装
前言 有一段时间没写文章了,最近事情挺多的,现在咱们回归正题,经过前面四篇文章的介绍,已经通过VMware安装了Hadoop的集群环境,相关的两款软件VSFTP和SecureCRT也已经正常安装了. ...
- 大数据系列(4)——Hadoop集群VSFTP和SecureCRT安装配置
前言 经过前三篇文章的介绍,已经通过VMware安装了Hadoop的集群环境,当然,我相信安装的过程肯定遇到或多或少的问题,这些都需要自己解决,解决的过程就是学习的过程,本篇的来介绍几个Hadoop环 ...
- 大数据系列(2)——Hadoop集群坏境CentOS安装
前言 前面我们主要分析了搭建Hadoop集群所需要准备的内容和一些提前规划好的项,本篇我们主要来分析如何安装CentOS操作系统,以及一些基础的设置,闲言少叙,我们进入本篇的正题. 技术准备 VMwa ...
- 12.Linux软件安装 (一步一步学习大数据系列之 Linux)
1.如何上传安装包到服务器 有三种方式: 1.1使用图形化工具,如: filezilla 如何使用FileZilla上传和下载文件 1.2使用 sftp 工具: 在 windows下使用CRT 软件 ...
随机推荐
- JDBC的编码步骤
0.前提:拷贝数据库的驱动到构建路径中(classpath) 1.注册驱动 2.获取与数据库的链接 3.创建代表SQL语句的对象 4.执行SQL语句 5.如果是查询语句,需要遍历结果集 6.释放占用的 ...
- iOS-copy与mutableCopy浅析
iOS-copy与mutableCopy浅析 iOS 浅谈:深.浅拷贝与copy.strong 总结:当不可变类型对象调用copy拷贝后,不会产生新的对象,属于浅拷贝,其他类型对象不管调用copy亦或 ...
- ElasticSearch 2 (29) - 信息聚合系列之测试驱动
ElasticSearch 2 (29) - 信息聚合系列之测试驱动 摘要 我们可以用以下几页定义不同的聚合和它们的语法,但学习聚合的最佳途径就是用实例来说明.一旦我们获得了聚合的思想,以及如何合理地 ...
- Android 图表
今天在群里有人提问Android的图表,在网上搜索了一下,在贴吧中看到的回答,说是Trinea整理的开源项目,不知道是不是博客上的Trinea. 将内容记录如下,以备需要时查看. GraphView ...
- robotframework运行时后台报错UnicodeDecodeError
win10环境下报错: Traceback (most recent call last): File "C:\Python27\lib\site-packages\robotide\con ...
- hdu6444 Neko's Loop
要想A一道题,你需要正版ide,正版草稿纸,正版键盘,正版双手,但最重要的是正版大脑.(改编自wxf在微积分群的吐槽) 分析一下题意,选的所有数的下标模gcd(n,k)都是同余的,而且是在所有同余的下 ...
- Java NIO 详解(二)
异步IO 异步 I/O 是一种没有阻塞地读写数据的方法.通常,在代码进行 read() 调用时,代码会阻塞直至有可供读取的数据.同样, write()调用将会阻塞直至数据能够写入,关于同步的IO请参考 ...
- Django_基于模块的单例模式
基于模块的单例模式 原理: Python 的独有特性 : 模块的导入只能生效一次. 再重复导入只要基于一套环境都是使用的 最初 的那份资源. 示例: 文档结构: # mysingleton.py ...
- SP8093 JZPGYZ - Sevenk Love Oimaster 解题报告
SP8093 JZPGYZ - Sevenk Love Oimaster 题目大意 给定\(n(n\le 10000)\)个模板串,以及\(m(m\le 60000)\)个查询串(模板串总长\(\le ...
- bzoj1030: [JSOI2007]文本生成器(AC自动机+DP)
第一次写这类题...懵 直接计算答案不好计算,所以补集转化求不合法的方案. 首先考虑朴素的DP,设$f(i, s)$表示前$i$个字符,字符串为$s$的方案数,且任意一个给定串都不存在$s$中. 我们 ...