hive元数据库中哪些表存储了表元数据信息
时间: 2024-06-06 08:07:08 浏览: 106
Hive元数据库中存储了很多表元数据信息,其中比较重要的表包括:
1. TBLS:存储了所有表的基本信息,如表名、表类型、Owner、创建时间等。
2. COLUMNS_V2:存储了所有表的列信息,包括列名、数据类型、注释等。
3. SDS:存储了所有表的存储信息,包括文件路径、文件格式、输入格式等。
4. PARTITIONS:存储了分区表的分区信息,包括分区键、分区值等。
5. PARTITION_KEYS:存储了分区表的分区键信息。
6. TABLE_PARAMS:存储了表的参数信息,如输入格式、输出格式、压缩格式等。
7. SERDES:存储了所有表的序列化和反序列化类信息。
8. DATABASE_PARAMS:存储了数据库的参数信息,如描述、位置等。
9. DBS:存储了所有数据库的基本信息,如数据库名称、描述、位置等。
10. TABLES_PRIVILEGE:存储了表的权限信息,如授权用户、授权类型等。
相关问题
hive元数据库中的表介绍
Hive元数据库中的表是指记录着Hive数据库中所有表的元数据信息的表,包括表名、列名、数据类型、分区信息等重要信息。Hive元数据库中的表分为两种:系统表和用户表。
1. 系统表
系统表是Hive自带的表,用于存储Hive元数据库中的系统信息,如表和列的信息、分区信息、表统计信息等。常用的系统表包括:
- `DBS`:存储数据库信息
- `TABLES`:存储表信息
- `COLUMNS_V2`:存储列信息
- `PARTITIONS`:存储分区信息
- `TABLE_PARAMS`:存储表级参数信息
- `SERDES`:存储序列化/反序列化信息
- `SDS`:存储表的存储信息
- `SORT_COLS`:存储排序列信息
- `INDEX_PARAMS`:存储索引参数信息
2. 用户表
用户表是由用户创建的表,用于存储业务数据。用户表的元数据信息也存储在Hive元数据库中,包括表名、列名、数据类型、分区信息等。用户表的元数据信息可以通过查询系统表来获取。例如,可以通过查询`TABLES`表来获取所有用户表的信息。
总之,Hive元数据库中的表记录了Hive数据库中所有表的元数据信息,方便用户对表进行管理和查询。
① 创建数据库hive; ② 在hive数据库中,创建表usr,含三个属性id,name,age ③ 在hive数据库中,创建表usr,含三个属性id,name,age,存储路径为“/usr/local/hive/warehouse/hive/usr” ④ 在hive数据库中,创建外部表usr,含三个属性id,name,age,可以读取路径“/usr/local/data”下以“,”分隔的数据。 ⑤ 在hive数据库中,创建分区表usr,含三个属性id,name,age,还存在分区字段sex。 ⑥ 创建视图little_usr,只包含usr表中id,age属性 ⑦ 删除数据库hive ⑧ 删除表usr,如果是内部表,元数据和实际数据都会被删除;如果是外部表,只删除元数据,不删除实际数据 ⑨ 删除视图little_usr ⑩ 为hive数据库设置dbproperties键值对属性值来描述数据库属性信息 ⑪ 重命名表usr为user ⑫ 为表usr增加新分区 ⑬ 把表usr中列名name修改为username,并把该列置于age列后 ⑭ 修改little_usr视图元数据中的tblproperties属性信息 ⑮ 查看Hive中包含的所有数据库 ⑯ 查看Hive中以h开头的所有数据库 ⑰ 查看数据库hive中所有表和视图 ⑱ 查看数据库hive中以u开头的所有表和视图 ⑲ 查看数据库hive的基本信息,包括数据库中文件位置信息等 ⑳ 查看数据库hive的详细信息,包括数据库的基本信息及属性信息等 21 把目录’/usr/local/data‘下的数据文件中的数据装载进usr表并覆盖原有数据
好的,以下是对应的Hive命令:
1. 创建数据库hive
```sql
CREATE DATABASE hive;
```
2. 在hive数据库中,创建表usr,含三个属性id,name,age
```sql
USE hive;
CREATE TABLE usr (
id INT,
name STRING,
age INT
);
```
3. 在hive数据库中,创建表usr,含三个属性id,name,age,存储路径为“/usr/local/hive/warehouse/hive/usr”
```sql
CREATE TABLE usr (
id INT,
name STRING,
age INT
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
LOCATION '/usr/local/hive/warehouse/hive/usr';
```
4. 在hive数据库中,创建外部表usr,含三个属性id,name,age,可以读取路径“/usr/local/data”下以“,”分隔的数据。
```sql
CREATE EXTERNAL TABLE usr (
id INT,
name STRING,
age INT
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
LOCATION '/usr/local/data';
```
5. 在hive数据库中,创建分区表usr,含三个属性id,name,age,还存在分区字段sex。
```sql
CREATE TABLE usr (
id INT,
name STRING,
age INT
)
PARTITIONED BY (sex STRING);
```
6. 创建视图little_usr,只包含usr表中id,age属性
```sql
CREATE VIEW little_usr AS
SELECT id, age FROM usr;
```
7. 删除数据库hive
```sql
DROP DATABASE hive;
```
8. 删除表usr,如果是内部表,元数据和实际数据都会被删除;如果是外部表,只删除元数据,不删除实际数据
```sql
DROP TABLE usr;
```
9. 删除视图little_usr
```sql
DROP VIEW little_usr;
```
10. 为hive数据库设置dbproperties键值对属性值来描述数据库属性信息
```sql
ALTER DATABASE hive SET DBPROPERTIES ('description' = 'This is a sample database for Hive');
```
11. 重命名表usr为user
```sql
ALTER TABLE usr RENAME TO user;
```
12. 为表usr增加新分区
```sql
ALTER TABLE usr ADD PARTITION (sex='male') LOCATION '/path/to/male/data';
```
13. 把表usr中列名name修改为username,并把该列置于age列后
```sql
ALTER TABLE usr CHANGE name username STRING AFTER age;
```
14. 修改little_usr视图元数据中的tblproperties属性信息
```sql
ALTER VIEW little_usr SET TBLPROPERTIES ('comment' = 'This is a view for user table');
```
15. 查看Hive中包含的所有数据库
```sql
SHOW DATABASES;
```
16. 查看Hive中以h开头的所有数据库
```sql
SHOW DATABASES LIKE 'h%';
```
17. 查看数据库hive中所有表和视图
```sql
SHOW TABLES;
```
18. 查看数据库hive中以u开头的所有表和视图
```sql
SHOW TABLES LIKE 'u%';
```
19. 查看数据库hive的基本信息,包括数据库中文件位置信息等
```sql
DESCRIBE DATABASE hive;
```
20. 查看数据库hive的详细信息,包括数据库的基本信息及属性信息等
```sql
DESCRIBE DATABASE EXTENDED hive;
```
21. 把目录’/usr/local/data‘下的数据文件中的数据装载进usr表并覆盖原有数据
```sql
LOAD DATA LOCAL INPATH '/usr/local/data' OVERWRITE INTO TABLE usr;
```
以上是对应的Hive命令,可以根据实际需求进行相应的操作。
阅读全文