Hive远程模式部署参考:
一、Hive数据仓库应用之Hive部署(超详细步骤指导操作,WIN10,VMware Workstation 15.5 PRO,CentOS-6.7)
数据库与表的基本操作参考:
二、Hive数据仓库应用之Hive数据定义语言(一)(超详细步骤指导操作,WIN10,VMware Workstation 15.5 PRO,CentOS-6.7)
文章目录
三、分区表操作
1、创建分区表
在数据库hive_database中创建分区表partitioned_table。
CREATE TABLE IF NOT EXISTS
hive_database.partitioned_table(
username STRING COMMENT "This is username",
age INT COMMENT "This is user age")
PARTITIONED BY (
province STRING COMMENT "User live in province",
city STRING COMMENT "User live in city")
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
STORED AS textfile
TBLPROPERTIES("comment"="This is a partitioned table");
2、查询分区表
查询数据库hive_database中分区表partitioned_table的分区信息。
SHOW PARTITIONS hive_database.partitioned_table;
3、添加分区
向数据库hive_database的分区表partitioned_table添加分区。
ALTER TABLE hive_database.partitioned_table
ADD PARTITION (province='HeBei', city='HanDan')
location '/user/hive_local/warehouse/hive_database.db/HeBei'
PARTITION (province='ShanDong', city='JiNan')
location '/user/hive_local/warehouse/hive_database.db/ShanDong';
之后执行相关指令查看新的分区内容:
4、重命名分区
重命名数据库hive_database中分区表partitioned_table的分区。
ALTER TABLE hive_database.partitioned_table PARTITION
(province='HeBei', city='HanDan')
RENAME TO PARTITION (province='HuBei', city='WuHan');
之后执行相关指令查看新的分区内容:
5、移动分区
5.1 在数据库hive_database中,创建与分区表partitioned_table表结构一致的分区表partitioned_table1。
CREATE TABLE IF NOT EXISTS
hive_database.partitioned_table1(
username STRING COMMENT "This is username",
age INT COMMENT "This is user age"
)
PARTITIONED BY (
province STRING COMMENT "User live in province",
city STRING COMMENT "User live in city"
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
STORED AS textfile
TBLPROPERTIES("comment"="This is a partitioned table");
5.2 将分区表partitioned_table的二级分区province=HuBei/city=WuHan移动到分区表partitioned_table1。
ALTER TABLE hive_database.partitioned_table1 EXCHANGE
PARTITION (province='HuBei', city='WuHan') WITH TABLE partitioned_table;
5.3 分别执行指令查看分区表partitioned_table和partitioned_table1的分区信息。
SHOW PARTITIONS hive_database.partitioned_table;
SHOW PARTITIONS hive_database.partitioned_table1;
6、删除分区
删除数据库hive_database中分区表partitioned_table1的分区。
ALTER TABLE hive_database.partitioned_table1 DROP IF EXISTS PARTITION (province='HuBei', city='WuHan');
SHOW PARTITIONS hive_database.partitioned_table1;
四、分桶表操作。
1、创建分桶表
在数据库hive database中创建分桶表clustered table。
CREATE TABLE IF NOT EXISTS
hive_database.clustered_table(
id STRING,
name STRING,
gender STRING,
age INT,
dept STRING
)
CLUSTERED BY (dept) SORTED BY (age DESC) INTO 3 BUCKETS
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
STORED AS textfile
TBLPROPERTIES("comment"="This is a clustered table");
2、查看分桶表
查看数据库hive_database中分桶表clustered_table的信息。
DESC FORMATTED hive_database.clustered_table;
五、临时表操作。
1、创建临时表
在数据库hive_database中创建临时表temporary_table。
CREATE TEMPORARY TABLE
hive_database.temporary_table
(name STRING,
age int,
genter STRING)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
STORED AS textfile
TBLPROPERTIES("comment"="This is a temporary table");
2、查看临时表内容
DESC FORMATTED temporary_table;
六、视图操作。
1、创建视图
在数据库hive_database中创建视图view_table。
CREATE VIEW IF NOT EXISTS hive_database.view_table
COMMENT "This is a view table"
AS SELECT staff_name FROM hive_database.managed_table_new;
2、查看视图基本结构。
DESC view_table;
3、查询视图信息
查看视图view_table 的详细结构信息和基本结构信息。
DESC FORMATTED view_table;
4、修改视图:
4.1 修改视图属性
修改数据库hive_database中视图view_table的属性。
ALTER VIEW hive_database.view_table SET TBLPROPERTIES("comment"="view table");
4.2 修改视图结构
修改数据库hive_database中视图view_table结构。
ALTER VIEW hive_database.view_table AS SELECT salary,hobby FROM managed_table_new;
5、删除视图
删除数据库hive_database中的视图view_table。
DROP VIEW IF EXISTS hive_database.view_table;
七、索引操作
1、创建索引
为数据库内部表managed_table_new创建索引index_staff_name。
CREATE INDEX index_staff_name
ON TABLE hive_database.managed_table_new (staff_name)
AS 'org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler'
WITH DEFERRED REBUILD
IN TABLE index_name_table
TBLPROPERTIES ("create"="itcast")
COMMENT "index comment";
2、查看索引表
SHOW TABLES;
DESC FORMATTED index_name_table;
3、查看索引
SHOW INDEXES ON managed_table_new FROM hive_database;
4、重建索引
ALTER INDEX index_staff_name ON hive_database.managed_table_new REBUILD;
5、删除索引
DROP INDEX IF EXISTS index_staff_name ON managed_table_new;
SHOW TABLES;
参考文献:黑马程序员.Hive数据仓库应用[M].北京:清华大学出版社,2021.
后续学习链接:
三、Hive数据仓库应用之Hive数据操作语言(超详细步骤指导操作,WIN10,VMware Workstation 15.5 PRO,CentOS-6.7)