使用HQL創(chuàng)建內(nèi)部表麦锯、外部表的基本操作恕稠。創(chuàng)建表主要有以下三種方式:
- 自定義表結(jié)構(gòu),以關(guān)鍵字EXTERNAL區(qū)分創(chuàng)建內(nèi)部表和外部表扶欣。
如何確定是創(chuàng)建內(nèi)部表還是外部表
內(nèi)部表鹅巍,如果對(duì)數(shù)據(jù)的處理都由Hive完成,則應(yīng)該使用內(nèi)部表宵蛀。在刪除內(nèi)部表時(shí),元數(shù)據(jù)和數(shù)據(jù)一起被刪除县貌。
外部表术陶,如果數(shù)據(jù)要被多種工具(如Pig等)共同處理,則應(yīng)該使用外部表煤痕,可避免對(duì)該數(shù)據(jù)的誤操作梧宫。刪除外部表時(shí)接谨,只刪除掉元數(shù)據(jù)。
根據(jù)已有表創(chuàng)建新表塘匣,使用CREATE LIKE句式脓豪,完全復(fù)制原有的表結(jié)構(gòu),包括表的存儲(chǔ)格式忌卤。
根據(jù)查詢結(jié)果創(chuàng)建新表扫夜,使用CREATE AS SELECT句式。
這種方式比較靈活驰徊,可以在復(fù)制原表表結(jié)構(gòu)的同時(shí)指定要復(fù)制哪些字段笤闯,不包括表的存儲(chǔ)格式。
在啟用了安全服務(wù)的集群中執(zhí)行如下操作棍厂,需要在數(shù)據(jù)庫中CREATE權(quán)限颗味,使用CREATE AS SELECT句式創(chuàng)建表,需要對(duì)SELECT查詢的表具有SELECT權(quán)限牺弹。詳情請(qǐng)參見概述浦马。