hive內部表和外部表的區別

Hive創建內部表時,會將數據移動到數據倉庫指向的路徑 。創建外部表時,僅記錄數據所在的路徑,不對數據的位置做任何改變,在刪除表的時候,內部表的元數據和數據會被一起刪除,而外部表只刪除元數據,不刪除數據 。這樣外部表相對來說更加安全些,數據組織也更加靈活,方便共享源數據 。
【hive內部表和外部表的區別】需要注意的是傳統數據庫對表數據驗證是寫時模式,而Hive在load時是不檢查數據是否符合schema的,Hive遵循的是讀時模式,只有在讀的時候Hive才檢查解析具體的數據字段 。