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

參數值

 

表數據展示

影響該表的操作

創建、刪除表、修改表註釋、新增數據、刪除數據等

 

 

  • 權限

角色表(roles)

表結構

ROLE_ID

bigint

20

角色ID

CREATE_TIME

int

11

創建時間

OWNER_NAME

varchar

128

擁有者名稱

ROLE_NAME

varchar

128

角色名稱

表數據展示

 

影響該表的操作

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

 

表數據展示

 

影響該表的操作

給用戶授權角色、給角色授權角色

庫權限表(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

庫權限

 

表數據展示

對該表影響的操作

授權用戶庫權限

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

 

 

表數據展示

對該表產生影響的操作

授權、移除用戶表權限

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章