一、hive表與視圖相關的元數據表
有TBLS、TABLE_PARAMS、TBL_PRIVS,這三張表通過TBL_ID關聯。每張表只有一個TBL_ID和CD_ID
1、TBLS
該表中存儲Hive表、視圖、索引表的基本信息。
元數據表字段 |
說明 |
示例數據 |
TBL_ID |
表ID |
1 |
CREATE_TIME |
創建時間 |
1436317071 |
DB_ID |
數據庫ID |
2,對應DBS中的DB_ID |
LAST_ACCESS_TIME |
上次訪問時間 |
1436317071 |
OWNER |
所有者 |
liuxiaowen |
RETENTION |
保留字段 |
0 |
SD_ID |
序列化配置信息 |
86,對應SDS表中的SD_ID |
TBL_NAME |
表名 |
lxw1234 |
TBL_TYPE |
表類型 |
MANAGED_TABLE、EXTERNAL_TABLE、INDEX_TABLE、VIRTUAL_VIEW |
VIEW_EXPANDED_TEXT |
視圖的詳細HQL語句 |
|
VIEW_ORIGINAL_TEXT |
視圖的原始HQL語句 |
|
2、TABLE_PARAMS
該表存儲表/視圖的屬性信息。
元數據表字段 |
說明 |
示例數據 |
TBL_ID |
表ID |
1 |
PARAM_KEY |
屬性名 |
totalSize、numRows、EXTERNAL |
PARAM_VALUE |
屬性值 |
970107336、21231028、TRUE |
3、TBL_PRIVS
元數據表字段 |
說明 |
示例數據 |
TBL_GRANT_ID |
授權ID |
1 |
CREATE_TIME |
授權時間 |
1436320455 |
GRANT_OPTION |
|
0 |
GRANTOR |
授權執行用戶 |
|
GRANTOR_TYPE |
授權者類型 |
USER |
PRINCIPAL_NAME |
被授權用戶 |
username |
PRINCIPAL_TYPE |
被授權用戶類型 |
USER |
TBL_PRIV |
權限 |
Select、Alter |
TBL_ID |
表ID |
對應TBLS表中的TBL_ID |
二、Hive文件存儲信息相關的元數據表
主要涉及SDS、SD_PARAMS、SERDES、SERDE_PARAMS
1、SDS
該表保存文件存儲的基本信息,如INPUT_FORMAT、OUTPUT_FORMAT、是否壓縮等。
TBLS表中SD_ID與該表關聯,PARTITIONS表中SD_ID與該表關聯
元數據表字段 |
說明 |
示例數據 |
SD_ID |
存儲信息ID |
1 |
CD_ID |
字段信息ID |
對應CDS表 |
INPUT_FORMAT |
文件輸入格式 |
|
IS_COMPRESSED |
是否壓縮 |
0 |
IS_STOREDASSUBDIRECTORIES |
是否以子目錄存儲 |
0 |
LOCATION |
存儲路徑 |
|
NUM_BUCKETS |
分桶數量 |
5 |
OUTPUT_FORMAT |
文件輸出格式 |
|
SERDE_ID |
序列化類ID |
對應SERDES表 |
2、SD_PARAMS
該表存儲Hive存儲的屬性信息,在創建表時候使用
STORED BY ‘storage.handler.class.name’ [WITH SERDEPROPERTIES (…)指定。
元數據表字段 |
說明 |
示例數據 |
SD_ID |
存儲配置ID |
1 |
PARAM_KEY |
存儲屬性名 |
|
PARAM_VALUE |
存儲屬性值 |
|
3、SERDES
該表存儲序列化使用的類信息
元數據表字段 |
說明 |
示例數據 |
SERDE_ID |
序列化類配置ID |
1 |
NAME |
序列化類別名 |
|
SLIB |
序列化類 |
|
4、SERDE_PARAMS
該表存儲序列化的一些屬性、格式信息,比如:行、列分隔符
元數據表字段 |
說明 |
示例數據 |
SERDE_ID |
序列化類配置ID |
1 |
PARAM_KEY |
屬性名 |
field.delim |
PARAM_VALUE |
屬性值 |
, |
三、Hive表字段相關的元數據表
1、COLUMNS_V2
該表存儲表對應的字段信息。
元數據表字段 |
說明 |
示例數據 |
CD_ID |
字段信息ID |
1 |
COMMENT |
字段註釋 |
|
COLUMN_NAME |
字段名 |
pt |
TYPE_NAME |
字段類型 |
string |
INTEGER_IDX |
字段順序 |
2 |
四、Hive表分區相關的元數據表
1、PARTITIONS
該表存儲表分區的基本信息。
元數據表字段 |
說明 |
示例數據 |
PART_ID |
分區ID |
1 |
CREATE_TIME |
分區創建時間 |
|
LAST_ACCESS_TIME |
最後一次訪問時間 |
|
PART_NAME |
分區名 |
|
SD_ID |
分區存儲ID |
21 |
TBL_ID |
表ID |
2 |
2、PARTITION_KEYS
該表存儲分區的字段信息。
元數據表字段 |
說明 |
示例數據 |
TBL_ID |
表ID |
2 |
PKEY_COMMENT |
分區字段說明 |
|
PKEY_NAME |
分區字段名 |
dt |
PKEY_TYPE |
分區字段類型 |
string |
INTEGER_IDX |
分區字段順序 |
1 |
3、PARTITION_KEY_VALS
該表存儲分區字段值。
元數據表字段 |
說明 |
示例數據 |
PART_ID |
分區ID |
2 |
PART_KEY_VAL |
分區字段值 |
|
INTEGER_IDX |
分區字段值順序 |
0 |
4、PARTITION_PARAMS
該表存儲分區的屬性信息。
元數據表字段 |
說明 |
示例數據 |
PART_ID |
分區ID |
2 |
PARAM_KEY |
分區屬性名 |
|
PARAM_VALUE |
分區屬性值 |
|