Hive安装配置详细
- 格式:docx
- 大小:15.80 KB
- 文档页数:3
hive参数配置详细hive.exec.mode.local.auto决定 Hive 是否应该⾃动地根据输⼊⽂件⼤⼩,在本地运⾏(在GateWay运⾏)truehive.exec.mode.local.auto.inputbytes.max如果 hive.exec.mode.local.auto 为 true,当输⼊⽂件⼤⼩⼩于此阈值时可以⾃动在本地模式运⾏,默认是 128兆。
134217728Lhive.exec.mode.local.auto.tasks.max如果 hive.exec.mode.local.auto 为 true,当 Hive Tasks(Hadoop Jobs)⼩于此阈值时,可以⾃动在本地模式运⾏。
4hive.auto.convert.join是否根据输⼊⼩表的⼤⼩,⾃动将 Reduce 端的 Common Join 转化为 Map Join,从⽽加快⼤表关联⼩表的 Join 速度。
falsehive.mapred.local.memMapper/Reducer 在本地模式的最⼤内存量,以字节为单位,0为不限制。
mapred.reduce.tasks所提交 Job 的 reduer 的个数,使⽤ Hadoop Client 的配置。
默认是-1,表⽰Job执⾏的个数交由Hive来分配-1hive.exec.scratchdirHDFS路径,⽤于存储不同 map/reduce 阶段的执⾏计划和这些阶段的中间输出结果。
/tmp/<>/hivehive.metastore.warehouse.dirHive 默认的数据⽂件存储路径,通常为 HDFS 可写的路径。
"hive.groupby.skewindata决定 group by 操作是否⽀持倾斜的数据。
原理是,在Group by中,对⼀些⽐较⼩的分区进⾏合并falsehive.merge.mapfiles是否开启合并 Map 端⼩⽂件,对于 Hadoop 0.20 以前的版本,起⼀⾸新的 Map/Reduce Job,对于 0.20 以后的版本,则是起使⽤ CombineInputFormat 的MapOnly Job。
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应用使用。
Hive编程环境的设置与配置Hive是一个基于Hadoop的数据仓库工具,它提供了类SQL语言的查询和分析功能,可用于处理大规模的结构化和半结构化数据。
为了开始使用Hive,我们需要先进行编程环境的设置与配置。
本文将引导您完成Hive编程环境的安装、配置和基本使用。
1. 安装Hive首先,我们需要在计算机上安装Hive。
Hive可以使用Apache官方提供的二进制文件进行安装,同时也可以通过包管理工具进行安装,例如使用apt-get命令在Ubuntu上安装。
确保安装的Hive版本与Hadoop集群中的版本兼容。
2. 配置Hadoop由于Hive是基于Hadoop的,我们需要先配置Hadoop的环境变量。
编辑hadoop-env.sh文件并将Hadoop的安装路径添加到HADOOP_HOME变量中。
确保Hadoop的配置文件hadoop-site.xml也已正确配置。
3. 配置Hive接下来,我们需要对Hive进行一些配置。
在Hive的安装目录中,有一个名为hive-default.xml的样例配置文件。
我们可以将其复制为hive-site.xml,然后在该文件中进行相关配置。
首先,我们需要配置Hive的元数据库(metastore)。
元数据库用于存储Hive 的元数据,包括表结构、分区和分隔符等信息。
您可以选择使用内置的Derby数据库或外部的MySQL数据库作为元数据库。
如需使用MySQL,您需要先安装MySQL并创建一个新的数据库。
在hive-site.xml文件中,找到名为javax.jdo.option.ConnectionURL的属性,并将其值设置为MySQL数据库的连接字符串。
同时,修改javax.jdo.option.ConnectionDriverName属性为com.mysql.jdbc.Driver,javax.jdo.option.ConnectionUserName属性为登录MySQL所使用的用户名,javax.jdo.option.ConnectionPassword属性为该用户名对应的密码。
Hive的用法一、Hive简介Hive是基于Hadoop的数据仓库工具,用于处理大规模数据集。
它提供了一种类似于SQL的查询语言,称为HiveQL,使得分析师和数据科学家可以使用熟悉的SQL 语法来查询和分析数据。
Hive将这些查询转换为MapReduce任务,并在Hadoop集群上执行,从而实现高效的数据处理。
二、Hive安装和配置2.1 安装Hive首先,需要下载Hive的安装包,并解压到指定的目录。
然后,设置Hive的环境变量,包括添加Hive的bin目录到PATH变量中,以及设置HIVE_HOME变量指向Hive的安装目录。
2.2 配置HiveHive的配置文件位于Hive的安装目录下的conf文件夹中。
其中,最重要的配置文件是hive-site.xml,它包含了Hive的各种配置参数。
在配置文件中,需要指定Hive的元数据存储位置、Hadoop集群的配置信息、Hive的执行引擎等。
三、Hive数据模型Hive的数据模型类似于传统的关系型数据库。
它将数据组织成表,并支持表的分区和分桶,以提高查询性能。
在Hive中,表可以分为内部表和外部表。
内部表的数据存储在Hive的默认存储位置中,而外部表的数据可以存储在Hive之外的任意位置。
四、HiveQL查询语言HiveQL是Hive的查询语言,它类似于SQL语言,但也有一些不同之处。
下面是一些常用的HiveQL查询语句和语法:4.1 创建表在Hive中,可以使用CREATE TABLE语句来创建表。
可以指定表的名称、列名、列的数据类型等信息。
例如:CREATE TABLE employees (id INT,name STRING,age INT);4.2 加载数据使用LOAD DATA语句可以将数据加载到Hive表中。
可以从本地文件系统或Hadoop 文件系统中加载数据。
例如:LOAD DATA LOCAL INPATH '/path/to/data.txt' INTO TABLE employees;4.3 查询数据使用SELECT语句可以查询Hive表中的数据。
hive安装配置实验实训报告一、实验目的本实验旨在通过实际操作,掌握Hive的安装与配置过程,了解Hive的基本功能和使用方法,为后续的大数据处理和分析奠定基础。
二、实验环境1.硬件环境:高性能计算机,至少4核CPU、8GB内存、50GB 硬盘。
2.软件环境:Ubuntu 18.04操作系统,Java Development Kit (JDK) 1.8,Apache Hadoop 2.7.3。
三、实验步骤1.安装与配置Hadoop:首先,在实验环境中安装Hadoop,并配置Hadoop集群。
确保NameNode、SecondaryNameNode、DataNode等节点正常运行。
2.安装Hive:使用apt-get命令安装Hive。
在安装过程中,选择与Hadoop版本兼容的Hive版本。
3.配置Hive:编辑Hive的配置文件hive-site.xml,配置Hive连接到Hadoop集群的相关参数。
4.初始化Hive元数据:运行Hive的元数据初始化脚本,创建Hive元数据库。
5.启动Hive服务:使用以下命令启动Hive的元数据库、Metastore和HiveServer2等服务。
1.元数据库:hive --service metastore &2.Metastore:hive --service metastore &3.HiveServer2:hive --service hiveserver2 &6.测试Hive:使用Hive的命令行工具进入Hive交互式查询环境,执行简单的SQL查询语句,测试Hive是否安装成功。
四、实验结果与分析经过上述步骤,我们成功在实验环境中安装和配置了Hive。
通过执行简单的SQL查询语句,验证了Hive的基本功能。
具体而言,我们执行了以下查询语句:1.创建数据库:CREATE DATABASE mydatabase;2.选择数据库:USE mydatabase;3.创建表:CREATE TABLE mytable (id INT, name STRING);4.插入数据:INSERT INTO TABLE mytable VALUES (1, 'Alice'), (2, 'Bob');5.查询数据:SELECT * FROM mytable;6.删除表:DROP TABLE mytable;7.删除数据库:DROP DATABASE mydatabase;通过这些查询语句的执行,我们验证了Hive的基本功能,包括数据库管理、表创建、数据插入、数据查询、表删除和数据库删除等。
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链接,点击进去就能看到数据表。
Hadoop和Hive的安装配置Hadoop安装指南 / Hive安装指南Hadoop集群需要一个机器作为Master节点,其余的机器都是slave节点。
HIVE只需在Master节点中安装和配置即可。
配置HadoopHadoop的配置比较简单,下面详细讲一下安装与配置步骤。
以配置Hadoop 0.20.2版本为例。
(1) 从hadoop官网上下载hadoop-0.20.2.tar.gz文件,并解压产生hadoop-0.20.2目录,将该目录到/opt/hadoop目录下(如果你解压缩到了其它目录中,注意后面要相应的修改配置项)。
输入命令建立软连接$ ln -s hadoop-0.20.2 hadoop (这样做的好处是如果改用其它版本的hadoop不用重新配置)(2) Hadoop和Hive都需要机器名。
用hostname命令修改本机的机器名,例如修改10.10.10.1的机器名为hadoop139需要键入 # hostname hadoop1 修改/etc/hosts文件,添加Hadoop集群中所有的机器名和Ip地址的对应关系。
Master节点和所有slave节点一定都要添加,否则会出问题。
例如在我的所有hadoop机器的/etc/hosts文件都添加10.10.10.1 hadoop1 10.10.10.2 hadoop2 10.10.10.3 hadoop3 10.10.10.4hadoop4 10.10.10.5 hadoop5 10.10.10.6 hadoop6 10.10.10.7 hadoop7 (3) 由于Master节点的机器需要ssh无密码登录到所有slave节点,因此所有机器都需要如下配置。
在本文中Hadoop1是Master节点。
打开/etc/ssh/sshd_config文件,确保ssh使用的不是ssh2协议,否则将所有的Protocol 2修改成Protocol 1。
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的基本使用流程1. 简介Hive是一个基于Hadoop的大数据处理工具,它能够将结构化数据映射到Hadoop的分布式文件系统上,并支持使用类似于SQL的HiveQL语言进行查询和分析。
2. 安装和配置在开始使用Hive之前,首先需要安装和配置Hive环境。
以下是Hive的安装和配置步骤:1.下载Hive软件包并解压缩到指定目录。
2.在Hadoop的配置文件中添加Hive的相关配置项。
3.配置Hive的环境变量。
4.初始化Hive的数据库和元数据。
3. 创建数据库在使用Hive之前,需要首先创建一个数据库来存储数据表。
以下是创建数据库的步骤:1.打开Hive终端。
2.使用CREATE DATABASE语句创建一个新的数据库。
3.可选:使用USE DATABASE语句切换到新创建的数据库。
4. 创建数据表在Hive中,表是数据的逻辑表示方式,可以通过HiveQL语句创建数据表。
以下是创建数据表的步骤:1.使用CREATE TABLE语句创建一个新的数据表。
2.指定数据表的字段名、数据类型和约束条件。
3.可选:使用PARTITIONED BY子句定义表的分区方式。
5. 加载数据创建数据表之后,可以通过LOAD DATA语句将数据加载到表中。
以下是加载数据的步骤:1.准备包含数据的文件或目录。
2.使用LOAD DATA语句将数据加载到指定的数据表中。
3.根据需要,可以使用不同的加载选项,如指定分隔符、指定列的映射关系等。
6. 查询数据在Hive中,可以使用HiveQL语言进行数据查询。
以下是查询数据的步骤:1.使用SELECT语句指定要查询的字段。
2.使用FROM关键字指定要查询的数据表。
3.可选:使用WHERE子句指定查询条件。
4.可选:使用GROUP BY子句进行分组。
5.可选:使用ORDER BY子句进行排序。
7. 数据转换和处理除了基本的数据查询外,Hive还支持一些数据转换和处理操作。
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⽂件中。
Hive安装配置详解步骤以及hive使⽤mysql配置 Hive是⼀个数据仓库基础⼯具在Hadoop中⽤来处理结构化数据。
它架构在之上,总归为⼤数据,并使得查询和分析⽅便。
并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进⾏运⾏。
环境介绍:hadoop:3.2.0jdk:1.8Linux:centos7mysql:5.61.mysql安装配置wget /mysql-community-release-el7-5.noarch.rpmrpm -ivh mysql-community-release-el7-5.noarch.rpm执⾏yum install -y mysql -serverSystemctl start mysql完成2.配置创建hive需要的数据库以及账户create database hive;create user 'hadoop1'@'localhost' identified by '12345678';grant all privileges on *.* to 'hadoop1'@'localhost' with grant option;3.下载hivewget /apache/hive/hive-3.1.1/apache-hive-3.1.1-bin.tar.gztar xzvf apache-hive-3.1.1-bin.tar.gzcd hive-3.1.14.配置hive以及hadoop的变量记得source 让bianl⽣效。
vim /etc/profileexport HIVE_HOME=/home/apache-hive-3.1.1-binexport HADDOP_HOME=/home//home/hadoop-3.2.0export PATH=.:${JAVA_HOME}/bin/:$HIVE_HOME/bin:$HADOOP_HOME/bin:$PATH5.编辑hive-site.xml 和hive-env.sh⽂件此⽂件是通过hive-default.xml.template 复制出来的,需要删除原⽂件所有内容后新增如下配置,因为hive在启动的时候会加载两个⽂件,default.xml和Hive-site.xml,所以如果直接新增⼀下内容是⽆效的。
Hive安装与配置——深入浅出学Hive浏览(6800)|评论(1) 交流分类:Java|笔记分类: 深入浅出学Hive目录:初始HiveHive安装与配置Hive 内建操作符与函数开发Hive JDBChive参数Hive 高级编程Hive QLHive Shell 基本操作hive 优化Hive体系结构Hive的原理配套视频课程第一部分:软件准备与环境规划Hadoop环境介绍•Hadoop安装路径•/home/test/Desktop/hadoop-1.0.0/•Hadoop 元数据存放目录•/home/test/data/core/namenode•Hadoop 数据存放路径•/home/test/data/core/datanodeHive环境规划•Hive安装路径•/home/test/Desktop/•Hive数据存放路径•hdfs•/user/hive/warehouse•Hive元数据•第三方数据库•derby mysql软件准备•OS•ubuntu•JDK•java 1.6.0_27•Hadoop•hadoop-1.0.0.tar•Hive•hive-0.8.1.tar第二部分:Hive项目介绍项目结构Hive配置文件介绍•hive-site.xml hive的配置文件•hive-env.sh hive的运行环境文件•hive-default.xml.template 默认模板•hive-env.sh.template hive-env.sh默认配置•hive-exec-log4j.properties.template exec默认配置• hive-log4j.properties.template log默认配置hive-site.xml<property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://local host:3306/hive?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><name>javax.jdo.option.ConnectionPassword</name><value>test</value><description>password to use against metastore database</description> </property>hive-env.sh•配置Hive的配置文件路径•export HIVE_CONF_DIR= your path•配置Hadoop的安装路径•HADOOP_HOME=your hadoop home第三部分:使用Derby数据库的安装方式什么是Derby安装方式•Apache Derby是一个完全用java编写的数据库,所以可以跨平台,但需要在JVM中运行•Derby是一个Open source的产品,基于Apache License 2.0分发•即将元数据存储在Derby数据库中,也是Hive默认的安装方式安装Hive•解压Hive•tar zxvf hive-0.8.1.tar /home/test/Desktop•建立软连接•ln –s hive-0.8.1 hive•添加环境变量•export HIVE_HOME=/home/test/Desktop/hive•export PATH=….HIVE_HOME/bin:$PATH:.配置Hive•进入hive/conf目录•依据hive-env.sh.template,创建hive-env.sh文件•cp hive-env.sh.template hive-env.sh•修改hive-env.sh•指定hive配置文件的路径•export HIVE_CONF_DIR=/home/test/Desktop/hive/conf•指定Hadoop路径• HADOOP_HOME=/home/test/Desktop/hadoophive-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><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>启动Hive•命令行键入•Hive•显示WARNING: org.apache.hadoop.metrics.jvm.EventCounter is deprecated. Plea se use org.apache.hadoop.log.metrics.EventCounter in all the log4j.properti es files.Logging initialized using configuration in jar:file:/home/test/Desktop/hive-0.8.1/lib/hive-common-0.8.1.jar!/hive-log4j.propertiesHive history file=/tmp/test/hive_job_log_test_201208260529_167273830.tx thive>测试语句•建立测试表test•create table test (key string);•show tables;第四部分:使用MySQL数据库的安装方式安装MySQL•Ubuntu 采用apt-get安装•sudo apt-get install mysql-server•建立数据库hive•create database hive•创建hive用户,并授权•grant all on hive.* to hive@'%' identified by 'hive';•flush privileges;安装Hive•解压Hive•tar zxvf hive-0.8.1.tar /home/test/Desktop•建立软连接•ln –s hive-0.8.1 hive•添加环境变量•export HIVE_HOME=/home/test/Desktop/hive•export PATH=….HIVE_HOME/bin:$PATH:.修改hive-site.xml<property><name>javax.jdo.option.ConnectionURL </name><value>jdbc:mysql://localhost:3306/hive </value></property><property><name>javax.jdo.option.ConnectionDriverName </name><value>com.mysql.jdbc.Driver </value></property><property><name>javax.jdo.option.ConnectionPassword </name><value>hive </value></property><property><name>hive.hwi.listen.port </name><value>9999 </value><description>This is the port the Hive Web Interface will listen on </de scription></property><property><name>datanucleus.autoCreateSchema </name><value>false </value></property><property><name>datanucleus.fixedDatastore </name><value>true </value></property><property><name>hive.metastore.local </name><value>true </value><description>controls whether to connect to remove metastore server or open a new metastore server in Hive Client JVM </description></property>启动Hive•命令行键入•Hive•显示WARNING: org.apache.hadoop.metrics.jvm.EventCounter is deprecated. Plea se use org.apache.hadoop.log.metrics.EventCounter in all the log4j.properti es files.Logging initialized using configuration in jar:file:/home/test/Desktop/hive-0.8.1/lib/hive-common-0.8.1.jar!/hive-log4j.propertiesHive history file=/tmp/test/hive_job_log_test_201208260529_167273830.tx thive>测试语句•建立测试表test•create table test (key string);•show tables;。
Hive-3.1.2详细安装步骤1.把下载的Hive-3.1.2包上传到/opt中2.解压hive⽂件tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /opt/3. 修改hive配置vi /etc/profileexport HIVE_HOME=/opt/apache-hive-3.1.2-binexport PATH=$PATH:HIVE_HOME/bin4. 使配置⽣效source /etc/profile5. 创建⽂件夹并赋予权限hadoop fs -mkdir -p /user/hive/warehousehadoop fs -mkdir -p /tmp/hivehadoop fs -chmod -R 777 /user/hive/warehousehadoop fs -chmod -R 777 /tmp/hive6. 配置hive-site.xmlcd v/opt/apache-hive-3.1.2-bin/confcp hive-default.xml.template hive-site.xmlvi hive-site.xml(1)修改内容主要包括hive-site.xml 中的{system:java.io.tmpdir}改为hive的本地⽬录,将{system:}改为⽤户名。
(2)修改主机ip地址jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true(3)配置client端版本(4)数据库连接⽤户名(5)数据库连接密码(6)修改认证设置7、配置cp hive-log4j2.properties.template hive-log4j2.propertiesvi hive-log4j2.properties8.配置hive环境变量cp hive-env.sh.template hive-env.shvi hive-env.shexport JAVA_HOME=/opt/jdk1.8.0_231export HADOOP_HOME=/opt/hadoop-3.1.2export HIVE_HOME=/opt/apache-hive-3.1.2-binexport HIVE_CONF_DIR=$HIVE_HOME/confexport HIVE_AUX_JARS_PATH=/opt/apache-hive-3.1.2-bin/lib。
hive的安装配置(详细教程)1.什么是hive Hive是基于Hadoop的数据仓库解决⽅案。
由于Hadoop本⾝在数据存储和计算⽅⾯有很好的可扩展性和⾼容错性,因此使⽤Hive构建的数据仓库也秉承了这些特性。
Hive就是在Hadoop上架了⼀层SQL接⼝,可以将SQL翻译成MapReduce去Hadoop上执⾏,这样就使得数据开发和分析⼈员很⽅便的使⽤SQL来完成海量数据的统计和分析,⽽不必使⽤编程语⾔开发MapReduce那么⿇烦。
2. Hive安装与配置2.1. 下载hive安装⽂件2.2.上传⽂件 解压⽂件(tar -zxvf apache-hive-1.2.2-bin.tar.gz) 重命名(mv apache-hive-1.2.2-bin hive)2.3.配置环境变量 vim /etc/profile(路径按照⾃⼰的实际情况配置) 执⾏source /etc/profile让配置⽣效2.4.执⾏hive --version,验证是否安装成功 有hive的版本显现,安装成功!2.5.配置hive 1.修改hive-site.xml(默认是没有这个⽂件的,复制⼀个) 复制⽂件: cp hive-default.xml.template hive-site.xml 编辑⽂件: vim hive-site.xml 插⼊代码,具体内容根据⾃⼰的情况修改<property><name>javax.jdo.option.ConnectionUserName</name><value>root</value></property><property><name>javax.jdo.option.ConnectionPassword</name><value>123456</value></property><property><name>javax.jdo.option.ConnectionURL</name>mysql<value>jdbc:mysql://192.168.213.11:3306/hive</value></property><property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.jdbc.Driver</value></property> <property><name>hive.cli.print.header</name><value>true</value><description>Whether to print the names of the columns in query output.</description></property><property><name>hive.cli.print.current.db</name><value>true</value><description>Whether to include the current database in the Hive prompt.</description></property> 2.复制mysql的驱动程序到hive/lib下⾯,找不到的可以在我⽹盘下载: 3.创建hive数据库 4.初始化元数据库,命令:schematool -dbType mysql -initSchema(我已经初始化过了,图⽚是截取别⼈的,侵删) 注意:当使⽤的 hive 是 2.x 之前的版本,不做初始化也是 OK 的,当 hive 第⼀次启动的时候会⾃动进⾏初始化,只不过会不会⽣成⾜够多的元数据库中的表。
Hive安装配置指北(含HiveMetastore详解)本⽂介绍Hive安装配置的整个过程,包括MySQL、Hive及Metastore的安装配置,并分析了Metastore三种配置⽅式的区别。
⽹上有很多介绍Hive Metastore三种配置⽅式的⽂章,但是理解都不对,给读者造成了很多误导。
本⼈详细阅读Apache和CDH官⽅⽂档中关于Hive Metastore的部分,并经过实践,终于填好各种坑,安装配置成功,遂记录下本⽂,供⼤家参考。
1. 相关概念Hive Metastore有三种配置⽅式,分别是:1. Embedded Metastore Database (Derby) 内嵌模式2. Local Metastore Server 本地元存储3. Remote Metastore Server 远程元存储1.1 Metadata、Metastore作⽤metadata即元数据。
元数据包含⽤Hive创建的database、tabel等的元信息。
元数据存储在关系型数据库中。
如Derby、MySQL等。
Metastore的作⽤是:客户端连接metastore服务,metastore再去连接MySQL数据库来存取元数据。
有了metastore服务,就可以有多个客户端同时连接,⽽且这些客户端不需要知道MySQL数据库的⽤户名和密码,只需要连接metastore 服务即可。
1.2三种配置⽅式区别内嵌模式使⽤的是内嵌的Derby数据库来存储元数据,也不需要额外起Metastore服务。
这个是默认的,配置简单,但是⼀次只能⼀个客户端连接,适⽤于⽤来实验,不适⽤于⽣产环境。
本地元存储和远程元存储都采⽤外部数据库来存储元数据,⽬前⽀持的数据库有:MySQL、Postgres、Oracle、MS SQL Server.在这⾥我们使⽤MySQL。
本地元存储和远程元存储的区别是:本地元存储不需要单独起metastore服务,⽤的是跟hive在同⼀个进程⾥的metastore服务。
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,虽然不是必要更改的配置文件,但合理的设置会对我们有一定的帮助,具体配置方法可见官方文档。
根据官方文档的描述,在使用Hive之前需要在HDFS中创建几个目录,并且将其开放g+w模式。
如下代码所示:
通过我的试验,以上创建目录的步骤是可以省略的,Hive会自动创建需要的目录。
Hive运行示例:
Hive提供了一个CLI(Command Line Interface)客户端,我们可以通过CLI进行直观的DDL、DML 及SQL操作。
以下是CLI使用示例:
在hive控制台,执行命令成功后会打印如下所求的提示:
如果有以上提示就证明你的Hive已经安装成功并能运行了。