元數據簡介
元數據是關于數據的組織、數據域及其關系的信息,簡言之,元數據就是關于數據的數據。它的作用類似于數據庫管理系統的數據字典,保存了邏輯數據結構、文件、地址和索引等信息。
元數據是數據倉庫管理系統的重要組成部分,元數據管理器是企業級數據倉庫中的關鍵組件,貫穿數據倉庫構建的整個過程,直接影響著數據倉庫的構建、使用和維護。
目前存在問題:
- 查看表信息不方便(查看、檢索、表復用)
- 表依賴關系不清楚(血緣關系)
- 表信息過少(維護者、量級、是否可用)
- 表權限管理、數據管理、數據質量監控
元數據數據模型
Metadata Groups | Metadata |
---|---|
Basic | 大小、格式、別名、最后一次修改時間、 權限訪問控制表 |
Content-based | 結構、條數、數據圖譜、主鍵、頻繁詞匯、相似數據集 |
Provenance | 讀任務、寫任務、下游數據集、上游數據集 |
User-supplied | 描述、注釋 |
Team and Project | 項目描述、所屬團隊 |
Temporal | 修改歷史 |
可參考 Goods: Organizing Google’s Datasets論文
Hive元數據設計
表名 | 說明 | 關聯鍵 |
---|---|---|
TBLS | 所有hive表的基本信息 | TBL_ID,SD_ID |
TABLE_PARAM | 表級屬性,如是否外部表,表注釋等 | TBL_ID |
COLUMNS | Hive表字段信息(字段注釋,字段名,字段類型,字段序號) | SD_ID |
SDS | 所有hive表、表分區所對應的hdfs數據目錄和數據格式 | SD_ID,SERDE_ID |
SERDE_PARAM | 序列化反序列化信息,如行分隔符、列分隔符、NULL的表示字符等 | SERDE_ID |
PARTITIONS | Hive表分區信息 | PART_ID,SD_ID,TBL_ID |
PARTITION_KEYS | Hive分區表分區鍵 | TBL_ID |
PARTITION_KEY_VALS | Hive表分區名(鍵值) | PART_ID |