HIVE的安装文档
- 格式:doc
- 大小:55.50 KB
- 文档页数:4
大数据集群配置过程_hive篇JDDC_SEED_BIGDATA 2015-01-151.概述本篇文档主要讲解hive的安装过程。
Hadoop是安装hbase和hive的基础,即安装hbase和hive之前必须先安装hadoop并且hdfs和mapreduce必须都功能正常。
因为hbase和hive 其底层所使用都是应用hadoop的两个核心部分—hdfs和mapreduce。
在安装hadoop之前需要考滤操作系统的版本(32位还是64位)以及hbase和hive的版本,否则会引起jar包不支持而导致的jar包替换或jar包重新编译等问题。
Hadoop、hbase、hive的版本匹配信息如下:由于我们所使用的操作系统centos6.5是32位,而且安装的hadoop是hadoop2.2.0,所以本次安装的hive版本是0.12.0切记,在安装hbase之前一定先安装hadoop,而且要确保hadoop中的HDFS和MAPREDUCE都是可以正常使用的。
2.正文与hadoop和hbase不同,hive在安装的过程中不需要把hive的包分别发布到个节点上,只需要在namenode节点上hive包进行配置,但需要在配置的过程中指定各个datanode节点的主机名。
2.1下载安装mysql本次将Hive配置成Server模式,并且使用MySQL作为元数据数据库。
原则上MySQL不必要非得安装在namenode节点上,可以装在一个单独的服务器上,并进行远程联接。
本次技术检证,由于资源有限,把mysql安装在namenode节点上。
下载MySQL-5.6.22-1.linux_glibc2.5.i386.rpm-bundle.tar,参考下载地址/downloads/。
具体的安装以及root初始密码的修改请参考《linux下MySQL安装及设置》和《MySQL修改root密码的各种方法整理》这两篇文档。
2.2创建Hive元数据库创建数据库hive:create database if not exists hive;创建数据库用户hive:create user hive identified by 'hive2015';授权可以访问数据库hive的主机和用户:grant all on hive.* to 'hive'@'hadoop01' identified by 'hive2015';grant all on hive.* to 'hive'@'hadoop02' identified by 'hive2015';grant all on hive.* to 'hive'@'hadoop03' identified by 'hive2015';grant all on hive.* to 'hive'@'hadoop04' identified by 'hive2015';2.3安装以及配置hive下载hive-0.12.0-bin.tar.gz,参考下载地址/downloads.html。
Hive安装配置详细定义Hive是基于Hadoop构建的一套数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在Hadoop 分布式文件系统中的数据。
Hive可以将结构化的数据存储在数据仓库中,通过自己的SQL去查询分析需要的内容,这套SQL简称Hive SQL。
它与关系型数据库的SQL略有不同,但支持了绝大多数的语句如DDL、DML 以及常见的聚合函数、连接查询、条件查询。
Hive在Hadoop的架构体系中承担了一个SQL解析的过程,它提供了对外的入口来获取用户的指令然后对指令进行分析,解析出一个MapReduce程序组成可执行计划,并按照该计划生成对应的MapReduce 任务提交给Hadoop集群处理,获取最终的结果。
以上定义来源于《Hadoop开发者入门专刊》Hive安装我将延用《Hadoop安装》文档(/blog/706699)风格撰写下文。
Hive需要Hadoop的支持,也就是说在安装Hive之前需要正确安装Hadoop,这里不再阐述Hadoop 的安装过程。
一般我们会将Hive安装到NameNode所在主机上,这里假设使用root用户进行安装,Hive 的安装过程很简单:以上就是在Linux(cent os 5.X)上安装Hive的过程,下面就到了配置的环节。
Hive配置Hive的必要配置相当简单,只需要声明$HADOOP_HOME(请查阅《Hadoop安装》文档)这个环境变量就行了。
Hive的核心配置文件$HIVE_HOME/conf/hive-default.xml中有一些对Hive关键配置,一般我们不需要对其进行改动,如果你需要更改这个关键配置,请不要直接更改hive-default.xml这个文件,在同一目录下新建hive-site.xml文件,然后将需要更改的属性配置在这里面即可,配置格式与hive-default.xml一样。
另外,在Hive官方文档中重点提到了Hive的日志配置$HIVE_HOME/conf/hive-log4j.properties,虽然不是必要更改的配置文件,但合理的设置会对我们有一定的帮助,具体配置方法可见官方文档。
一、安装准备1、下载hive-0.5.0-bin版本:/hadoop/hive/hive-0.5.0/2、JDK版本:jdk-6u20-linux-i586.bin3、操作系统:Linux s132 2.6.9-78.8AXS2smp #1 SMP Tue Dec 16 02:42:55 EST 2008 x86_64x86_64 x86_64 GNU/Linux4、默认前提是安装完hadoop 0.20.2版本:192.168.3.131 namenode192.168.3.132 datanode192.168.3.133 datanode二、安装操作1、拷贝以上文件到Linux的“/root”目录下。
同时新建目录“/jz”。
2、安装JDK,此步省略...3、解压hive到/jz目录下。
tar -zxvf hive-0.5.0-bin.tar.gz -C /jz4、进入/jz/hive-0.5.0-bin/conf目录,复制hive-default.xml,改名为hive-site.xml文件。
三、启动操作1、在/jz/目录下创建hive-user文件夹,并在该文件夹下创建文件夹hive.kaka。
目录结构为:/jz/hive-user/hive.kaka2、在/jz/hive-user/hive.kaka目录下创建文件cli,该文件内容为:#!/bin/bash/jz/hive-0.5.0-bin/bin/hive --auxpath3、sh /jz/hive-user/hive.kaka/cli 启动hive服务,进入cli控制台。
4、输入show tables;控制台如果返回OK,表示启动成功。
四、注意和总结1、创建私有的cli文件的目的是为了避免使用嵌入式的数据库出现多人操作同一个的现象,而且多人操作,即使进入cli也会报错。
2、如果想多建用户,可以在/jz/hive-user目录下建立目录,存放进去相同的cli文件,启动私有的cli控制台。
Hillstone Networks,Inc.云·格CloudHive安全产品部署手册Version2.3Copyright2016Hillstone Networks,Inc..All rights reserved.Information in this document is subject to change without notice.The software described in this document is furnished under a license agreement or nondisclosure agreement.The software may be used or copied only in accordance with the terms of those agreements.No part of this publication may be reproduced, stored in a retrieval system,or transmitted in any form or any means electronic or mechanical,including photocopying and recording for any purpose other than the purchaser's personal use without the written permission of Hillstone Networks,Inc..Hillstone Networks,Inc.联系信息公司总部(北京总部):地址:北京市海淀区宝盛南路1号院20号楼5层邮编:100192联系我们:/about/contact_Hillstone.html关于本手册本手册介绍Hillstone Networks,Inc.云·格CloudHive安全产品的安装部署方法。
HIVE说明文档一、HIVE简介:1、HIVE介绍Hive是一个基于Hadoop的开源数据仓库工具,用于存储和处理海量结构化数据。
它是Facebook 2008年8月开源的一个数据仓库框架,提供了类似于SQL语法的HQL语句作为数据访问接口。
Hive 是基于Hadoop 构建的一套数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在Hadoop 分布式文件系统中的数据,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行,通过自己的SQL 去查询分析需要的内容,这套SQL 简称Hive SQL,使不熟悉mapreduce 的用户很方便的利用SQL 语言查询,汇总,分析数据.2、HIVE适用性:它与关系型数据库的SQL 略有不同,但支持了绝大多数的语句如DDL、DML 以及常见的聚合函数、连接查询、条件查询。
HIVE不适合用于联机(online)事务处理,也不提供实时查询功能。
它最适合应用在基于大量不可变数据的批处理作业。
HIVE的特点:可伸缩(在Hadoop的集群上动态的添加设备),可扩展,容错,输入格式的松散耦合.hive不支持用insert语句一条一条的进行插入操作,也不支持update操作。
数据是以load的方式加载到建立好的表中。
数据一旦导入就不可以修改。
DML包括:INSERT插入、UPDATE更新、DELETE删除。
3、HIVE结构Hive 是建立在Hadoop上的数据基础架构,它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制,Hive定义了简单的累SQL 查询语言,称为HQL,它允许熟悉SQL的用户查询数据,同时,这个语言也允许熟悉MapReduce开发者的开发自定义的mapper和reducer来处理內建的mapper和reducer无法完成的复杂的分析工作。
一、说明网络上有很多关于hadoop hbase hive的安装说明,按照其方法,总是有问题,记录下完整的安装过程,以供参考。
A操作系统是 ubuntu12.10二、安装jdk, hadoop, ssh server的方法参考文章《ubuntu操作记录》下面是具体内容:1.安装ubuntu之后,增加root 用户 sudo passwd ;2.ifconfig查看网络配置;/etc/network/interfaces3.网络配置文件:netifa /etc/sysconfig/network4、安装ssh5.sudo apt-get ssh-server;6、jdk安装sudo mo ./jdk.bin /opt/chmod u+x jdk.binsudo ./jkd.bin或 sh ./jdk.bin6.配置jdk;/etc/profile#set java environmentexport JAVA_HOME=/opt/jdk1.6.0_24(=前后没有空格)export CLASSPATH=.:$JAVA_HOME/lib:$CLASSPATHexport PATH=$JAVA_HOME/bin:$PATHumask 022/etc/environmentPATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/ga mesc"CLASSPATH="/opt/jdk1.6.0_24/lib"JAVAHOME="/opt/jdk1.6.0_24"7. shutdown –r now重启之后,显示java安装成功。
7、ssh设置$ apt-get install ssh$ ssh-keygen -t rsa -f ~/.ssh/id_rsa$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys$ ssh localhost(认证没有通过)在上面的问题中应该回答yes,继续,就可以ssh匿名登录了。
Hive是一个基于Hadoop的数据仓库工具,它提供了类似于SQL的数据查询语言,使用户能够方便地在Hadoop集裙上进行数据分析。
在本文中,我们将介绍如何安装Hive,并进行一些基础的编程实验。
二、Hive的安装1. 确保环境在安装Hive之前,我们需要确保已经安装了Hadoop,并且Hadoop集裙处于正常运行状态。
另外,还需要安装Java环境,并且配置好JAVA_HOME环境变量。
2. 下载Hive前往冠方全球信息站下载最新版本的Hive压缩包,解压到指定目录。
3. 配置Hive在Hive安装目录下,修改conf目录中的hive-site.xml文件,配置Hive与Hadoop的连接信息,包括Hadoop的文件系统类型、Hadoop的主机名和端口等信息。
4. 启动Hive在终端中输入hive命令,启动Hive。
三、基础编程实验在Hive中,我们可以使用类似于SQL的语法来创建表。
下面是一个简单的例子:```CREATE TABLE employee (id INT,name STRING,age INT,department STRING);```2. 加载数据我们可以使用LOAD DATA语句来加载数据到Hive表中。
假设我们有一个名为employee.csv的文件,包含了员工的信息,我们可以使用以下命令将数据加载到employee表中:```LOAD DATA LOCAL INPATH '/path/to/employee.csv' INTO TABLE employee;```3. 查询数据一旦数据被加载到表中,我们就可以使用类似于SQL的语法来查询数据。
我们可以使用以下命令来查询芳龄大于30岁的员工:```SELECT * FROM employee WHERE age > 30;```4. 数据分析除了基本的查询操作,Hive还提供了丰富的数据分析功能,可以进行统计、分组、排序、连接等操作。
第2章Hive安装2.1 Hive安装地址1)Hive官网地址:/2)文档查看地址:https:///confluence/display/Hive/GettingStarted3)下载地址:/dist/hive/4)github地址:https:///apache/hive2.2 Hive安装部署1)Hive安装及配置(1)把apache-hive-1.2.1-bin.tar.gz上传到linux的/opt/software目录下(2)解压apache-hive-1.2.1-bin.tar.gz到/opt/module/目录下面[atguigu@hadoop102 software]$ tar -zxvf apache-hive-1.2.1-bin.tar.gz -C /opt/module/ (3)修改apache-hive-1.2.1-bin.tar.gz的名称为hive[atguigu@hadoop102 module]$ mv apache-hive-1.2.1-bin/ hive(4)修改/opt/module/hive/conf目录下的hive-env.sh.template名称为hive-env.sh [atguigu@hadoop102 conf]$ mv hive-env.sh.template hive-env.sh(5)配置hive-env.sh文件(a)配置HADOOP_HOME路径export HADOOP_HOME=/opt/module/hadoop-2.7.2(b)配置HIVE_CONF_DIR路径export HIVE_CONF_DIR=/opt/module/hive/conf2)Hadoop集群配置(1)必须启动hdfs和yarn[atguigu@hadoop102 hadoop-2.7.2]$ sbin/start-dfs.sh[atguigu@hadoop103 hadoop-2.7.2]$ sbin/start-yarn.sh(2)在HDFS上创建/tmp和/user/hive/warehouse两个目录并修改他们的同组权限可写[atguigu@hadoop102 hadoop-2.7.2]$ bin/hadoop fs -mkdir /tmp[atguigu@hadoop102 hadoop-2.7.2]$ bin/hadoop fs -mkdir -p /user/hive/warehouse[atguigu@hadoop102 hadoop-2.7.2]$ bin/hadoop fs -chmod 777 /tmp[atguigu@hadoop102 hadoop-2.7.2]$ bin/hadoop fs -chmod 777 /user/hive/warehouse 3)Hive基本操作(1)启动hive[atguigu@hadoop102 hive]$ bin/hive(2)查看数据库hive>show databases;(3)打开默认数据库hive>use default;(4)显示default数据库中的表hive>show tables;(5)创建一张表hive> create table student(id int, name string) ;(6)显示数据库中有几张表hive>show tables;(7)查看表的结构hive>desc student;(8)向表中插入数据hive> insert into student values(1000,"ss");(9)查询表中数据hive> select * from student;(10)退出hivehive> quit;2.3 将本地文件导入Hive案例需求:将本地/opt/module/datas/student.txt这个目录下的数据导入到hive的student(id int, namestring)表中。
HIVE详细配置手册(各版本号根据实际情况自行更改)1) 安装hive1.hadoop@hadoop-master:/opt$sudo wget -c/hive/hive-0.9.0/hive-0.9.0.tar.gz2.hadoop@hadoop-master:/opt$ sudo tar xvzf hive-0.9.0.tar.gz3.hadoop@hadoop-master:/opt$sudo mvhive-0.9.0/home/hadoop/hadoop-1.0.1/contrib/hive2)配置环境变量1.hadoop@hadoop-master:/opt$ cat /etc/profile2.export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd643.export HADOOP_HOME=/home/hadoop/hadoop-1.0.14.export ANT_HOME=$HADOOP_HOME/apache-ant-1.7.15.exportPATH=$PATH:$HADOOP_HOME/bin:$JAVA_HOME/bin:$HADOOP_HOME/contrib/hive/ bin:$ANT_HOME/bin6.export HADOOP_HOME_WARN_SUPPRESS=13)启动hive1.hadoop@hadoop-master:~/hadoop-1.0.1/contrib/hive/bin$ hive2.hive> show tables;3.OK4.Time taken:7.032 seconds执行成功。
安装mysql和mysql操作1.hadoop@hadoop-master:~$ sudo apt-get install mysql-servermysql( 未成功输入) mysql-client2.hadoop@hadoop-master:~$ sudo /etc/init.d/mysqld restart1.(#service mysql restart)3.hadoop@hadoop-master:~$ mysql -uroot –p1234561.(-u跟用户名,-p跟密码)4.mysql>create database hive;5.mysql>grant all on hive.* to hive@localhost identified by '123456';安装Mysql的JDBC驱动包1.hadoop@hadoop-master:~$ sudo wget -c/archives/mysql-connector-java-5.0/mysql-co nnector-java-5.0.8.tar.gz2.hadoop@hadoop-master:~$ mv mysql-connector-java-5.0.8.tar.gz/usr/local/hadoop/contrib/hive/lib5) 修改hive配置文件(用#sudo gedit 加配置文件名)1.hadoop@hadoop-master:~/hadoop-1.0.1/contrib/hive/conf$ cphive-default.xml.template hive-defalut.xml2.hadoop@hadoop-master:~/hadoop-1.0.1/contrib/hive/conf$ cphive-default.xml.template hive-site.xml#修改hive-site.xml 如下部分#sudo gedit hive-site.xml1.<property>2.<name>javax.jdo.option.ConnectionURL</name>3.<value>jdbc:mysql://localhost:3306/hive?createDataBaseIfNotExist=True</value>4.<description>JDBC connect string for a JDBCmetastore</description>5.</property>6.7.<property>8.<name>javax.jdo.option.ConnectionDriverName</name>9.<value>com.mysql.jdbc.Driver</value>10.<description>Driver class name for a JDBC metastore</description>11.</property>12.13.<property>14.<name>javax.jdo.option.ConnectionUserName</name>15.<value>hive</value>16.<description>username to use against metastoredatabase</description>17.</property>18.19.<property>20.<name>javax.jdo.option.ConnectionPassword</name>21.<value>123456</value>22.<description>password to use against metastoredatabase</description>23.</property>浏览器输入http://localhost:50070进行查看,点击Browser the filesystem进入,点击user会看到hive链接,点击进去就能看到数据表。
主题:Hive Parquet格式建表随着大数据技术的快速发展,数据存储和处理方式也在不断的更新和优化。
在Hive中,Parquet格式作为一种列式存储格式,因其压缩率高、查询性能好等特点,被广泛应用于数据仓库和数据分析中。
在这篇文章中,我将介绍如何在Hive中使用Parquet格式建表,以及一些注意事项和最佳实践。
一、Parquet格式简介Parquet是一种高效的列式存储格式,它采用了一些先进的压缩算法和编码方式,可以大大减小数据文件的大小。
与传统的存储格式相比,Parquet在查询性能和存储空间占用上都有很大优势。
在大数据领域,Parquet格式被广泛应用于数据仓库的构建和数据分析的实践中。
二、Hive中的Parquet格式建表在Hive中创建Parquet格式的表,需要进行以下几个步骤:1. 创建外部表在Hive中,可以使用CREATE EXTERNAL TABLE语句创建外部表,并指定表的列名、字段类型以及存储格式。
对于Parquet格式的表,需要在CREATE TABLE语句中添加STORED AS PARQUET子句,用于指定表的存储格式为Parquet。
示例代码如下:```sqlCREATE EXTERNAL TABLE employee (id INT,name STRING,age INT)STORED AS PARQUETLOCATION '/user/hive/warehouse/employee';```在上面的示例中,我们创建了一个名为employee的外部表,表中包含id、name和age三个字段,存储格式为Parquet,并指定了表的存储位置为/user/hive/warehouse/employee。
2. 加载数据创建完外部表后,就可以通过Hive的LOAD DATA语句将数据加载到表中。
需要注意的是,Parquet格式的表需要先将数据存储为Parquet格式的文件,然后再加载到表中。
Hive安装文档(元数据存放在mysql)一、环境说明1.hadoop2.72.hive2.13.jdk1.84.spark2.15.mysql5.66.其他说明:linux建了2个用户,一个是hadoop用户,用来安装hadoop等,一个mysql用户,用来安装mysql。
2、安装步骤、1.在mysql已经安装好的情况下,新建hive用户,新建数据库,授权使用mysql的root用户登录 ,执行下面语句,执行完了之后可以用hive用户登录测试create database if not exists hive;grant all privileges on hive.* to ‘hive‘@‘%‘ identified by ‘hive‘;grant all privileges on hive.* to ‘hive‘@‘localhost‘ identified by ‘hive‘;grant all privileges on hive.* to ‘hive‘@‘hadoop01‘ identified by ‘hive‘;flush privileges;//其中hadoop01是主机名2. 将hive的包解压建立hive安装路径#mkdir /opt/hive指定目录给hadoop用户Chown -R hadoop:hadoop /opt/hiveTar -zxvf apache-hive-2.1.1-bin.tar.gz然后 cp -r apache-hive-2.1.1-bin /opt/hive修改环境变量(默认jdk,hadoop都装好了),$vi ~/.profile(不同的linux版本可能有差异,也可能是.bash_profile)在后面加Export HIVE_HOME=/opt/hiveExport PATH=$PATH:$HIVE_HOME/bin然后source ~/.profile 生效配置可以试试用echo $PATH验证环境变量3.修改hive参数在本地主目录建文件夹Mkdir -p ./hive/tmp在hdfs建目录Hadoop fs -mkdir /tmpHadoop fs -mkdir /user/hive/warehouse$cd /opt/hive/conf*把mysql的jar包传到/opt/hive/lib中$cp hive-env.sh.template hive-env.shcp hive-default.xml.template hive-site.xmlcp hive-log4j.properties.template hive-log4j.properties cp hive-exec-log4j.properties.template hive-exec-log4j.pr operties修改hive-env.sh,在最后增加export JAVA_HOME=/opt/jdkexport HADOOP_HOME=/opt/hadoopexport HIVE_HOME=/opt/hiveexport HIVE_CONF_DIR=/opt/hive/conf修改hive-site.xml,先修改下面几处<property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://localhost/hive</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</de scription></property><property><name>javax.jdo.option.ConnectionUserName</name><value>hive</value><description>Username to use against metastore database< /description></property><property><name>javax.jdo.option.ConnectionPassword</name><value>hive</value><description>password to use against metastore database< /description></property>修改完了之后启动hive可能会报错,在hive/bin执行,把hive的元数据改为mysql./schematool -dbType mysql -initSchema接下来启动hive,可能报错 ..main ....java.io.....错误这是由于在hive-site.xml没有修改几个目录的绝对路径、修改hive.exec.local.scratchdir设置为:/data/hadoop/hive/tmp/scratch或其它,并创建好目录。
Hive安装教程Hive的安装和使⽤我的版本:JAVA_HOME=/usr/local/soft/jdk1.8.0_171HADOOP_HOME=/usr/local/soft/hadoop-2.7.6HIVE_HOME=/usr/local/soft/hive-1.2.1⼀、离线安装mysqlhive的元数据需要存储在mysql,没安装mysql的可以参考,安装过的直接跳过安装hive前需要先在MySQL中创建hive元数据库create database hive character set "latin1";⼆、安装hive1、解压hive的安装包:tar -zxvf apache-hive-1.2.1-bin.tar.gz我是安装到/usr/local/soft⽬录下进⼊到⾃⼰的安装⽬录下修改⽬录名称(原来的名称太长):mv apache-hive-1.2.1-bin hive-1.2.12、进⼊hive-1.2.1/conf⽬录,复制备份⽂件并重命名cp hive-env.sh.template hive-env.shcp hive-default.xml.template hive-site.xml3、配置hive的配置⽂件(hive的配置⽂件⽐较⼤,在linux中查找某项配置⽐较难,可以先将hive-site.xml⽂件复制到windows⽤⽂本编辑打开,然后ctrl+f查关键字修改,修改之后再放回到hive 的conf⽬录)3.1修改hive-env.shvim hive-env.sh加⼊三⾏内容(⼤家根据⾃⼰的⽬录和实际情况来添加)HADOOP_HOME=/usr/local/soft/hadoop-2.7.6JAVA_HOME=/usr/local/soft/jdk1.8.0_171HIVE_HOME=/usr/local/soft/hive-1.2.13.2修改hive-site.xml修改时要细⼼⼀点别找错了⽂件中涉及到的主机名和路径要根据⾃⼰的修改<property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://master:3306/hive?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>root</value></property><property><name>javax.jdo.option.ConnectionPassword</name><value>123456</value></property><property><name>hive.querylog.location</name><value>/usr/local/soft/hive-1.2.1/tmp</value></property><property><name>hive.exec.local.scratchdir</name><value>/usr/local/soft/hive-1.2.1/tmp</value></property><property><name>hive.downloaded.resources.dir</name><value>/usr/local/soft/hive-1.2.1/tmp</value></property>3.4拷贝mysql驱动到$HIVE_HOME/lib⽬录下cd /usr/local/soft/hive-1.2.1/lib进⼊到lib⽬录我的mysql驱动在/usr/local/soft/module/mysql-connector-java-5.1.49.jarcp /usr/local/module/mysql-connector-java-5.1.49.jar ./3.5将hive的jline-2.12.jar拷贝到hadoop对应⽬录下,hive的 jline-2.12.jar 位置在:/usr/local/soft/hive-1.2.1/lib/将hive的jar拷过去hadoop下(因为我的Hadoop版本⾥⾯不包含jline jar包直接拷过去即可,有的hadoop版本⾃带jar包,这时候需要删除版本低的,不然后⾯运⾏时会报错):cp /usr/local/soft/hive-1.2.1/lib/jline-2.12.jar /usr/local/soft/hadoop-2.7.6/share/hadoop/yarn/lib/3.6配置环境变量,加上HIVE_HOME修改/etc/profilevim /etc/profileexport HIVE_HOME=/usr/local/soft/hive-1.2.1export PATH=$PATH:$HIVE_HOME/bin重新加载环境变量source /etc/profile3.7启动hive:hive3.8 修改mysql元数据库hive,让其hive⽀持utf-8编码以⽀持中⽂登录mysql(需要先退出hive或者再开⼀个会话窗⼝):mysql -u root -p123456切换到hive数据库:use hive;1).修改字段注释字符集alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8;2).修改表注释字符集alter table TABLE_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8;3).修改分区表参数,以⽀持分区键能够⽤中⽂表⽰alter table PARTITION_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8;alter table PARTITION_KEYS modify column PKEY_COMMENT varchar(4000) character set utf8;4).修改索引注解(报错不⽤管)alter table INDEX_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8;测试hive1、启动hive2、在hive中创建test1数据库create database test1;3、切换test1数据库:use test1;4、创建students表:create table students(id bigint comment '学⽣id',name string comment '学⽣姓名',age int comment '学⽣年龄',gender string comment '学⽣性别',clazz string comment '学⽣班级') comment '学⽣信息表'ROW FORMAT DELIMITED FIELDS TERMINATED BY ',';5、创建score表:create table score(id bigint comment '学⽣id',score_id bigint comment '科⽬id',score int comment '学⽣成绩') comment '学⽣成绩表'ROW FORMAT DELIMITED FIELDS TERMINATED BY ',';6、查看表信息:desc students;desc score;。
Hive环境配置(⼆)Hive安装部署Hive安装环境准备⼀、Hive安装地址1.Hive官⽹地址:2.⽂档查看地址:3.下载地址(这⾥先⽤这个下载需要的hive安装压缩包):4.github地址:⼆、Hive安装部署1.Hive安装及配置(1)把apache-hive-1.2.1-bin.tar.gz上传到linux的/opt/software⽬录下(2)解压apache-hive-1.2.1-bin.tar.gz到/opt/module/⽬录下⾯[itstar@bigdata111 software]$ tar -zxvf apache-hive-1.2.1-bin.tar.gz -C /opt/module/.gz压缩包要⽤-zxvf来解压(3)修改apache-hive-1.2.1-bin的名称为hive-1.2.1[itstar@bigdata111 module]$ mv apache-hive-1.2.1-bin/ hive-1.2.1(4)修改/opt/module/hive/conf⽬录下的hive-env.sh.template名称为hive-env.sh[itstar@bigdata111 conf]$ mv hive-env.sh.template hive-env.sh(5)配置hive-env.sh⽂件a.配置HADOOP_HOME路径export HADOOP_HOME=/opt/module/hadoop-2.8.4b.配置HIVE_CONF_DIR路径export HIVE_CONF_DIR=/opt/module/hive/conf注:Hive的log默认存放在/tmp/itstar/hive.log⽬录下(当前⽤户名下)。
(6)修改⽇志⽂件1. 修改conf/hive-log4j.properties.template⽂件名称为hive-log4j.properties[itstar@bigdata111conf]$ pwd/opt/module/hive-1.2.1/conf[itstar@bigdata111conf]$ mv hive-log4j.properties.template hive-log4j.properties2. 修改hive的log存放⽇志到/opt/module/hive-1.2.1/logs在hive-log4j.properties⽂件中修改log存放位置hive.log.dir=/opt/module/hive/logs2.Hadoop集群配置(1)必须启动hdfs和yarn[itstar@bigdata111hadoop-2.8.4]$ sbin/start-dfs.sh[itstar@bigdata112 hadoop-2.8.4]$ sbin/start-yarn.sh因为我之前配置了环境变量,所以可以在任何⽬录下启动相关服务[root@bigdata111 conf]# start-dfs.sh[root@bigdata112 ~]# start-yarn.sh(2)在HDFS上创建/tmp和/user/hive/warehouse两个⽬录并修改他们的同组权限可写[itstar@bigdata111hadoop-2.8.4]$ bin/hadoop fs -mkdir /tmp[itstar@bigdata111hadoop-2.8.4]$ bin/hadoop fs -mkdir -p /user/hive/warehouse查看Web端:[itstar@bigdata111hadoop-2.8.4]$ bin/hadoop fs -chmod g+w /tmp[itstar@bigdata111hadoop-2.8.4]$ bin/hadoop fs -chmod g+w /user/hive/warehouse 权限给完之后就可以启动了~3.Hive基本操作(1)启动hive-如果没配环境变量需要在bin⽬录下启动[itstar@bigdata111hive]$ bin/hive(2)查看数据库hive>show databases;(3)打开默认数据库-defaulthive>use default;(4)显⽰default数据库中的表hive>show tables;(5)创建⼀张表hive> create table student(id int, name string) ;(6)显⽰数据库中有⼏张表hive>show tables;(7)查看表的结构hive>desc student;(8)向表中插⼊数据hive> insert into student values(1001,"ss1");Web端:(9)查询表中数据hive> select * from student;如果⽤hadoop命令查询:(10)退出hivehive> quit;三、Hive元数据配置到MySql1.驱动拷贝上传mysql-connector-java-5.1.27-bin.jar到/opt/module/hive/lib/[root@bigdata111mysql-connector-java-5.1.27]# cp mysql-connector-java-5.1.27-bin.jar /opt/module/hive/lib/ 2. 配置Metastore-元数据到MySql1)在/opt/module/hive/conf⽬录下创建⼀个hive-site.xml来替代默认配置⽂件hive-default.xml.template [itstar@bigdata111conf]$ touch hive-site.xml[itstar@bigdata111conf]$ vi hive-site.xml2)根据官⽅⽂档配置参数,拷贝数据到hive-site.xml⽂件中。
DBeaVer使用说明dbeaver是一款开源的通用的Sql可视化查询工具,可以支持多种热门数据:MySQL, PoStgreSQL, SQLite, Oracle, DB2, SQL Server, Sybase, Teradata, MongoDB, CaSSandra,RediS 基于eclipse 平台开发,界面美观。
以下简单教程介绍的是包含数据平台的hive连接的dbeaver发布包的基本使用方法(注:由于本安装包进行了部分修改,如果更新了官方版本注意迁移安装目录下的.dbeaver文件夹至用户目录):安装修改版的dbeaver安装包]岁dbeaver installer.eκeB号支装-D0⅛□ver—□ X许可悔徴维绫安装前请阈读下列重要信見O请仔細AGlnr(5ElrEIiAL FUBlJC IJCEIlSE VerSiWI ‰ JTiiLe 1591CδF!A*i ⅛t (C? 198S1*?9] Fr⅛s Seft*⅛r⅛ F*m⅛⅛⅜ti⅛rv In¢.,JEI Fr⅛>lcliιι Str⅛⅛t p Fifth Fl*⅛y. B<≡tin, NA 02110-1301 IEA LEV eryδn⅛ i ≡ p⅛rπ⅛ι t t⅛d t⅛ CoPy di≡tFiWt⅛ v⅛rb⅛tim⅝sQr ihi 5 Ii d<?cmπent^ BUt ChIall.sing it ι⅝ not ulloveJ.LPr i e ⅛πiLle W(⅛我同意此协⅛⅛O0O戏不同意此协饮(D)I 下一步(io 7]取涓使用dbeaver 编辑hql本dbeaver 带有配置有数据平台的 hive 和PreStO 连接,通过输入设置用户名和密码可 以使用在dbeaver 上使用sql 进行查询和处理。
配置用户名密码:选择一个数据库连接(以hive 为例)右键->编辑连接;在弹出窗口中输入用户名和密码。
Hadoop和Hive的安装配置hadoop安装指南/hive安装指南Hadoop集群需要一台机器作为主节点,其余都是从节点。
配置单元只需要在主节点中安装和配置。
配置hadoopHadoop的配置相对简单。
下面详细介绍安装和配置步骤。
要配置Hadoop 0,请以版本20.2为例。
(1)从hadoop官网上下载hadoop-0.20.2.tar.gz文件,并解压产生hadoop-0.20.2目录,将该目录到/opt/hadoop目录下(如果你解压缩到了其它目录中,注意后面要相应的修改配置项)。
输入命令以建立$ln-shadow-0.20.2hadoop的软连接(其优点是,如果使用其他版本的Hadoop,则无需重新配置)(2)hadoop和hive都需要机器名。
用hostname命令修改本机的机器名,例如修改10.10.10.1的机器名为hadoop139需要键入#hostnamehadoop1修改/etc/hosts文件,添加hadoop集群中所有的机器名和ip地址的对应关系。
master节点和所有slave节点一定都要添加,否则会出问题。
例如在我的所有hadoop机器的/etc/hosts文件都添加10.10.10.1 Hadoop 110。
10.10.2 Hadoop 210。
10.10.3 ADOP310。
10.10.4hadoop410。
10.10.5 Hadoop 510。
10.10.6 Hadoop 610。
10.10.7 Hadoop 7(3)由于主节点的机器需要在没有密码的情况下登录到所有从节点,因此所有机器都需要以下配置。
在本文中hadoop1是master节点。
打开/etc/SSH/sshd_uu-Config文件以确保SSH不使用SSH2协议,或者将所有协议2修改为协议1。
如果修改了该文件,用servicesshdrestart命令重启一下ssh服务。
键入以下命令#cd~/.ssh/#ssh-keygen-trsa1-c\#身份。
HIVE安装使用说明一、Hive简介1.1.H ive是什么Hadoop作为分布式运算的基础架构设施,统计分析需要采用MapReduce编写程序后,放到Hadoop集群中进行统计分析计算,使用起来较为不便,Hive产品采用类似SQL的语句快速实现简单的MapReduce统计,很大程度降低了Hadoop的学习使用成本。
Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供基础的SQL查询功能,可以将SQL 语句转换为MapReduce任务运行,而不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。
1.2.部署架构Hive中的Driver为核心驱动部分,包括SQL语句的解释、编译为MapReduce任务,并进行优化、执行。
Hive用户访问包括4种运行和访问方式,一是CLI客户端;二是HiveServer2和Beeline方式;三是HCatalog/WebHCat方式;四是HWI 方式。
其中CLI、Beeline均为控制台命令行操作模式,区别在于CLI只能操作本地Hive服务,而Beeline可以通过JDBC连接远程服务。
HiveServer2为采用Thrift提供的远程调用接口,并提供标准的JDBC 连接访问方式。
HCatalog是Hadoop的元数据和数据表的管理系统,WebHCat则提供一条Restful的HCatalog远程访问接口,HCatalog的使用目前资料很少,尚未充分了解。
HWI是Hive Web Interface的简称,可以理解为CLI的WEB访问方式,因当前安装介质中未找到HWI对应的WAR文件,未能进行使用学习。
Hive在运行过程中,还需要提供MetaStore提供对元数据(包括表结构、表与数据文件的关系等)的保存,Hive提供三种形式的MetaStore:一是内嵌Derby方式,该方式一般用演示环境的搭建;二是采用第三方数据库进行保存,例如常用的MySQL等;三是远程接口方式,及由Hive自身提供远程服务,供其他Hive应用使用。
power bi 连接 hive1、安装 ODBC组件2、设置ODBC数据源时,要添加“系统DSN”,不要添加“用户DSN”,因为添加“用户DSN”,只能在本机使用,当把程序移植到其它计算机时,程序就无法正常运行。
输入hive地址及端口,账号,可以选择不输密码,测试连接成功3、打开power bi desktop连接数据源获取数据 – 更多 –其他 –ODBC,点击连接数据源名称,选择上面刚刚配置的数据源,点开高级选项,输入sql,点击确定选择数据库,输入账号密码,点击连接点击加载,连接成功。
Power bi 连接mysql1、安装MySQL连接组件2、打开power bi desktop连接数据源获取数据 – 更多 –数据库 –MySQL 数据库,点击连接填写MySQL服务器及端口号,数据库名称,点开高级选项,输入sql,点击确定选择数据库,输入账号密码,点击连接点击确定。
点击加载,连接成功。
创建报表1、打开power bi desktop,连接数据源,参考hive连接或MySQL连接2、加载数据之后,页面右侧会展示字段列表可视化对象选择“表”,勾选相应字段。
画布上会展示表样式。
点击“格式”,调整表样式。
可以添加文本框,为报表添加标题。
重复上述步骤,添加服务水平报表,服务水平报表中有些字段无法直接从源表聚合,需新增度量值,步骤如下新建度量值选择菜单栏“建模”—“新建度量值”,输入计算公式如:申请平均等待时长 = SUM(‘查询1’[WAIT_TIME])/sum(‘查询1’[DEAL_TOTAL])按照同样的方式添加度量值,AHT,TTD,添加完成之后度量值会在字段列表展示添加筛选器将要筛选的字段拖至页面级筛选器添加切片器选中可视化对象中的切片器,将要显示的字段拖至“值”区域中添加可视化图表在可视化对象区域选择合适的可视化对象,将要展示的字段拖至“值”区域中保存报表点击文件—另存为,将文件保存为 .pbix 格式文件。
一、基本的安装1、解压hive-0.11.0.tar.gztar -zxvf hive-0.11.0.tar.gz2、修改环境变量在/etc/profile 中添加HIVE_HOME=/home/LXC/hive-0.11.0export PA TH=$HIVE_HOME/bin:$PA TH3、保存环境变量source profile4、Copy 配置文件cp hive-default.xml.template hive-site.xmlcp hive-env.sh.template hive-env.shcp hive-log4j.properties.template hive-log4j.properties5、修改hive-env.sh•指定hive配置文件的路径•export HIVE_CONF_DIR=/home/LXC/hive-0.11.0/conf•指定Hadoop路径• HADOOP_HOME=/opt/hadoopcluster/hadoop-2.0.3-alpha6、修改hive-site.xml<property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:derby:;databaseName=metastore_db;create=true</value><description>JDBC connect string for a JDBC metastore</description></property><property><name>javax.jdo.option.ConnectionDriverName</name><value>org.apache.derby.jdbc.EmbeddedDriver</value><description>Driver class name for a JDBC metastore</description></property><property><name>javax.jdo.option.ConnectionUserName</name><value>APP</value><description>username to use against metastore database</description> </property><property><name>javax.jdo.option.ConnectionPassword</name><value>mine</value><description>password to use against metastore database</description> </property>7、修改log4j配置文件log4j.appender.EventCounter=org.apache.hadoop.metrics.jvm.EventCounter以上是基本的hive安装。
二、HBASE 和HIVE的整合1、把lib下的hbase-*.jar 和zookeeper-*.jar包换成集群使用的版本的jar包。
2、常出现的问题三、HIVE和MYSQL整合1、修改hive-site.xml文件<property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://10.106.1.2:3306/lxc?createDatabaseIfNotExist=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>123456</value><description>password to use against metastore database</description></property>2、把mySQL的JDBC驱动包复制到Hive的lib目录下3、在hive中创建一个表可以在mysql对应的数据库中通过select* from TBLS;查看的到。
到此hive整合mysql 成功。
四、HWI的配置1、在hive-site.xml 文件中添加hive-hwi-0.11.0.war的路径<property><name>hive.hwi.war.file</name><value>lib/hive-hwi-0.11.0.war</value><description>This sets the path to the HWI war file, relative to ${HIVE_HOME}. </description></property>2、如果不安装ant的话会报编译错误ng.IllegalStateException: No Java compiler available3、安装antA、解压ant*.tarB、配置环境变量ANT_HOME=/opt/software/apache-ant-1.9.2export PATH=$ANT_HOME/bin:$PATHexport ANT_LIB=/opt/software/apache-ant-1.9.2/libC、ant -version 命令查看ant是否安装成功root@namenode2:/opt/software# ant -versionApache Ant(TM) version 1.9.2 compiled on July 8 20134、把ant-launcher.jar 和ant.jar 两个jar包导到hive的lib目录下5、当报It is currently set to "/usr/java/jdk1.6.0_35/jre"错误时把JDK目录下的tools.jar导到hive的lib目录下6、启动hwiNohup /bin/hive --service hwi > /dev/null 2>&1 &7、通过页面查看http://Ipserver:9999/hwi五、hiveserve2 的配置1、修改hive-site.xml 配置文件<property><name>hive.server2.thrift.port</name><value>10000</value></property><property><name>hive.server2.thrift.bind.host</name><value>10.106.1.230</value></property><property><name>hive.server2.enable.doAs</name><value>true</value></property>六、启动服务1、启动metastore服务~ bin/hive --service metastore & Starting Hive Metastore Server2、启动hiveserver服务~ bin/hive --service hiveserver & Starting Hive Thrift Server3、启动hive客户端~ bin/hive shell七、访问hiveserve2的两种方式1、JDBCClass.forName("org.apache.hive.jdbc.HiveDriver");DriverManager.getConnection("jdbc:hive2://IP:10000/default", "", "");2、BEELINEbin/beeline!connect jdbc:hive2://IP:10000/default 用户名密码Show tables;kettle。