hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能将SQL语句转变成MapReduce任务来执行。Hive的优点是学习成本低,可以通过类似SQL语句实现快速MapReduce统计,使MapReduce变得更加简单,而不必开发专门的MapReduce应用程序。

安装包:http://archive.apache.org/dist/hive/

版本:apache-hive-3.1.2-bin

解压:tar zxvf apache-hive-3.1.2-bin.tar.gz

在conf目录下新建hive-site.xml

因为我们将hive的元数据信息存储在mysql,所以需要配置mysql连接相关信息。

 <configuration>
   <property>
     <name>javax.jdo.option.ConnectionURL</name>
     <value>jdbc:mysql://localhost:3306/hive?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>root</value>
   </property>
   <property>
     <name>javax.jdo.option.ConnectionPassword</name>
     <value>root</value>
   </property>
 </configuration> 

将mysql驱动放到lib目录下

cp mysql-connector-java-5.1.39.jar lib/

初始化mysql数据库

bin/schematool -dbType mysql -initSchema

启动hive命令行

bin/hive

注:在启动hive之前需要先启动hdfs服务,因为hive操作的数据是存储在hdfs中的。

命令行使用

 显示数据库:
 hive> show databases;
 创建数据库:
 hive> create database testdb;
 创建表:
 hive> create table test_log(id int, name string,age int,sex string);
 查看所有表:
 hive> show tables; 

发表评论

电子邮件地址不会被公开。 必填项已用*标注