Hive入门+示例

0、总结

(1)在hive里创建一个数据库:test_db、testzhang_db

通过MySQL查询testzhang_db,是在hadoop_hive(存放元数据信息)----》DBS(表)---》即数据库的创建信息

通过hadoop查询,是值的默认存储路径:hdfs://hadoop000:8020/user/hive/warehouse

(2)在数据库里创建一张表:将txt文件变成hive里test_db、testzhang_db的一张表。--》再解释:在test_db中创建表,将数据加载到表中,使用sql统计数据。

 

1、安装mysql5.7

(1)安装步骤:centos7 下安装 mysql5.7 - 亚萌 - 博客园 (cnblogs.com)

(2)镜像中已有

 

2、进入MySQL

(1)注意与hive-site.xml里的mysql

jdbc:mysql://hadoop000:3306/hadoop_hive?createDatabaseIfNotExist=true

指定mysql,相当于在hadoop000这台机器上的3306端口,3306是mysql数据库的默认端口号,指向hadoop_hive数据库,

(2)进入MySQL

注意与hive-site.xml里的javax.jdo.option.ConnectionUserName、ConnectionPassword对应上

用户名是root,密码是root

show后,数据库是默认的三个:information_schema、mysql、performance_schema

[hadoop@hadoop000 ~]$ cd software/
[hadoop@hadoop000 software]$ mysql -uroot -proot
mysql> show databases;

(3)启动hive

注意以后beeline和hiveserver2需要配合使用

[hadoop@hadoop000 bin]$ pwd
/home/hadoop/app/hive-1.1.0-cdh5.15.1/bin
[hadoop@hadoop000 bin]$ hive

(4)在hive里创建测试数据库

hive> create database testzhang_db;

创建结束后,会在 mysql> show databases; 后出现第四个数据库hadoop_hive。

hadoop_hive里存放的是元数据信息。其中有20多张tables,是hive为我们创建的。

mysql> use hadoop_hive;
mysql> show tables;

查看DBS,即数据库的信息。是默认的hive数据库

hadoop000:8020是hadoop路径

/user/hive/warehouse是hive默认的路径

mysql> select * from DBS \G;
[hadoop@hadoop000 ~]$ hadoop fs -ls /user/hive/warehouse

(5)准备数据

将 helloworld.txt 变成hive里的表。

[hadoop@hadoop000 data]$ vi helloworld.txt
1
zhangsan 2 lisi 3 wangwu
[hadoop@hadoop000 data]$ pwd
/home/hadoop/data

(6)在test_db中创建表,将数据加载到表中,使用sql统计数据

统计的时候,会生成mapreduce作业。

hive> use test_db;
hive> show tables;
hive> create table helloworld(id int, name string) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t';
hive> show tables;
hive> select * from helloworld;
hive> load data local inpath '/home/hadoop/data/helloworld.txt' overwrite into table helloworld;
hive> select * from helloworld;
hive> select count(1) from helloworld;

 

posted @ 2021-08-05 16:51  酱汁怪兽  阅读(263)  评论(0编辑  收藏  举报