hive权限之hive元数据

hive权限之hive元数据

  • 介绍

       元数据

               描述数据的数据例如数据表A的大小是100KB,数据表是数据,表大小是数据的数据

      hive元数据

        hive元数据中保存hive库信息、表信息、角色信息、权限关系,因此学习hive权限,Hive元数据至关重要。hive元数据一般存储在关系型数据库中,本篇文章以MYSQL为例,对hive元数据库的表进行分析。

  • 数据库

      数据库表(dbs)

        表结构

DB_ID

bigint

20

数据库ID

DESC

varchar

4000

数据库描述

DB_LOCATION_URI

varchar

4000

数据库HDFS路径

NAME

varchar

128

数据库名

OWNER_NAME

varchar

128

数据库所有者名称

OWNER_TYPE

varchar

10

数据库所有者类型

 

表数据展示

该表产生影响的操作

在hive中新增、删除库

在hive中修改库的owner

  

  • 数据表
  1. 数据表表(tbls)

表结构

TBL_ID

bigint

20

表ID

CREATE_TIME

int

11

创建时间

DB_ID

bigint

20

数据库ID

LAST_ACCESS_TIME

int

11

上次访问时间

OWNER

varchar

767

拥有者名称

OWNER_TYPE

varchar

10

拥有者类型

RETENTION

int

11

保留字段

SD_ID

bigint

20

序列化配置信息ID

TBL_NAME

varchar

128

表名

TBL_TYPE

varchar

128

表类型MANAGED_TABLE、EXTERNAL_TABLE、INDEX_TABLE、VIRTUAL_VIEW

VIEW_EXPANDED_TEXT

mediumtext

0

视图的详细HQL语句

VIEW_ORIGINAL_TEXT

mediumtext

0

视图的原始HQL语句

 

表数据展示

对该表产生影响的操作

Hive中表的新增、删除

Hive中修改表的owner

 数据表属性信息表(table_params)

表结构

TBL_ID

bigint

20

数据表ID

PARAM_KEY

varchar

255

参数名

PARAM_VALUE

varchar

4000

参数值

 

表数据展示

hive权限之hive元数据_第1张图片

影响该表的操作

创建、删除表、修改表注释、新增数据、删除数据等

 

 

  • 权限

角色表(roles)

表结构

ROLE_ID

bigint

20

角色ID

CREATE_TIME

int

11

创建时间

OWNER_NAME

varchar

128

拥有者名称

ROLE_NAME

varchar

128

角色名称

表数据展示

hive权限之hive元数据_第2张图片

 

影响该表的操作

hive中新增、删除角色

 

角色授权表(role_map)

表结构

ROLE_GRANT_ID

bigint

20

角色授权ID

ADD_TIME

int

11

授权时间

GRANT_OPTION

smallint

6

1.被授权者能将该权限授权给其他人
0.不能将该权限再授权给其他人

GRANTOR

varchar

128

授权者

GRANTOR_TYPE

varchar

128

授权者类型

PRINCIPAL_NAME

varchar

128

被授权者名称

PRINCIPAL_TYPE

varchar

128

被授权者类型

ROLE_ID

bigint

20

角色ID

 

表数据展示

hive权限之hive元数据_第3张图片

 

影响该表的操作

给用户授权角色、给角色授权角色

库权限表(db_privs)

表结构

DB_GRANT_ID

bigint

20

库授权ID

CREATE_TIME

int

11

创建时间

DB_ID

bigint

20

数据库ID

GRANT_OPTION

smallint

6

是否可以给其他人授权(1是0否)

GRANTOR

varchar

128

授权人名称

GRANTOR_TYPE

varchar

128

授权人类型

PRINCIPAL_NAME

varchar

128

被授权人名称

PRINCIPAL_TYPE

varchar

128

被授权人类型

DB_PRIV

varchar

128

库权限

 

表数据展示

hive权限之hive元数据_第4张图片

对该表影响的操作

授权用户库权限

grant SELECT/DELETE/INSERT/UPDATE on database XXX to user/role XXX

移除用户库权限

revoke SELECT/DELETE/INSERT/UPDATE on database XXX from user/role XXX

 

  1. 表权限表(tbl_privs)

表结构

TBL_GRANT_ID

bigint

20

表权限ID

CREATE_TIME

int

11

创建时间

GRANT_OPTION

smallint

6

是否可再授权给其他人

GRANTOR

varchar

128

授权者

GRANTOR_TYPE

varchar

128

授权者类型

PRINCIPAL_NAME

varchar

128

被授权者名称

PRINCIPAL_TYPE

varchar

128

被授权者类型

TBL_PRIV

varchar

128

表权限

TBL_ID

bigint

20

表ID

 

 

表数据展示

hive权限之hive元数据_第5张图片

对该表产生影响的操作

授权、移除用户表权限

grant SELECT/DELETE/INSERT/UPDATE on table dbName.tbName to USER/ROLE xxx

revoke SELECT/DELETE/INSERT/UPDATE on table dbName.tbName from USER/ROLE xxx

你可能感兴趣的:(大数据,hive,mysql)