hive_常用語(yǔ)句

#關(guān)于hive中數(shù)據(jù)庫(kù)
創(chuàng)建庫(kù):
create database if not exists demo comment'庫(kù)描述信息';

刪除空庫(kù):
drop database if exists demo;

查看庫(kù)描述:本質(zhì)上就是打印出 hive元數(shù)據(jù)庫(kù)中的DBS表中存儲(chǔ)的demo庫(kù)的全部信息
desc database demo;

注: 關(guān)于hive庫(kù)的元數(shù)據(jù)信息放在 DBS 表中
#創(chuàng)建表
create  [external]  table  [if not exists]  tableName(  
gname string comment'字段描述',  
password string comment'',  
gid int comment'',  
unames string comment'' 
) comment '表描述'  
partitioned by (dt string comment'分區(qū)字段描述')  
row format delimited 
fields terminated by '\001'   
lines terminated by '\n'  
stored  as  textfile  
location  '/inputdata' ; 

注意點(diǎn):
1. 創(chuàng)建表的本質(zhì):在hdfs中對(duì)應(yīng)的庫(kù)下面創(chuàng)建目錄啡省,在元數(shù)據(jù)表中添加對(duì)應(yīng)的信息蛤奢。
2. 關(guān)鍵字 location 用來(lái)指定表的存放位置;
建立內(nèi)部分區(qū)表指定 location 位置苗分,該位置下有文件夾兜喻,文件下有數(shù)據(jù)屎开,數(shù)據(jù)不會(huì)自動(dòng)加載到patition中,要手動(dòng)添加partition 并指定 partition的location位置;
3. external 字段創(chuàng)建的是外部表;
4. 關(guān)于內(nèi)部表與外部表:
兩者的區(qū)別體現(xiàn)在刪除數(shù)據(jù)時(shí): 在刪除內(nèi)部表的時(shí)候,Hive將會(huì)把屬于表的元數(shù)據(jù)和數(shù)據(jù)全部刪掉驹马;而刪除外部表的時(shí)候,Hive僅僅刪除外部表的元數(shù)據(jù)除秀,數(shù)據(jù)是不會(huì)刪除的糯累!
適用場(chǎng)景:
內(nèi)部表:多用于臨時(shí)表、中間表
外部表:用于源數(shù)據(jù)
5. 為什么創(chuàng)建分區(qū)表册踩?
單表數(shù)據(jù)量隨著時(shí)間越來(lái)越大泳姐,hive為咯避免全表掃描,引入分區(qū)(將單張表的數(shù)據(jù)根據(jù)條件細(xì)分到不同的目錄)暂吉。
6. hive分區(qū)表的細(xì)節(jié)胖秒??
hive分區(qū)的字段是一個(gè)偽字段慕的,它不會(huì)再表中真實(shí)存在扒怖,可以用來(lái)過(guò)濾查詢(xún)等。
一個(gè)表可以有多個(gè)分區(qū)业稼,而每一個(gè)分區(qū)都是以目錄的形式存在盗痒。
7. hive中的一些概念在hdfs上的體現(xiàn)
hive數(shù)據(jù)庫(kù)的目錄名是 .db 結(jié)尾;
hive內(nèi)部表的目錄是存放在其數(shù)據(jù)庫(kù)的目錄下, hive表的目錄名沒(méi)有任何后綴;
hive分區(qū)字段的目錄名是  分區(qū)字段名=分區(qū)值 的形式結(jié)尾;

查看表:
desc  tablename;
show  create  table  tablename;
#數(shù)據(jù)的導(dǎo)入
load方式:
load data [local] inpath '/path' [overwrite] into table tableName  partition(type='');

注:
1. Load 操作只是單純的復(fù)制/移動(dòng)操作,將數(shù)據(jù)文件移動(dòng)到 Hive 表對(duì)應(yīng)的位置
2. 指定了 local 會(huì)從本地文件系統(tǒng)中加載數(shù)據(jù), 如果沒(méi)有指定 local, 會(huì)從hdfs上加載數(shù)據(jù)
3. 指定了 overwrite 關(guān)鍵字,首先將目標(biāo)表下的數(shù)據(jù)刪除后,然后將新數(shù)據(jù)添加到表中
4. 在加載數(shù)據(jù)時(shí), hive與mysql的區(qū)別
hive是讀時(shí)模式,也就是說(shuō)在加載數(shù)據(jù)時(shí),hive不會(huì)檢查加載的數(shù)據(jù)是否符合規(guī)范;
關(guān)系型數(shù)據(jù)庫(kù)(mysql)是嚴(yán)格寫(xiě)時(shí)模式,如果寫(xiě)入的數(shù)據(jù)有誤,會(huì)報(bào)錯(cuò);


insert方式:
insert  into  table  tablename   [partition(type='')]  select  *  from  xxx ;
insert  overwrite  table  tablename   [partition(type='')]  select  *  from  xxx ;


as方式      既能創(chuàng)建表,還同時(shí)具備導(dǎo)數(shù)據(jù)功能:
create table if not exists  要?jiǎng)?chuàng)建的表名稱(chēng) 
as
select 字段a,字段b  from  已經(jīng)存在的表   where  xxx  ;
#導(dǎo)出數(shù)據(jù):
1、從hive表導(dǎo)出到本地目錄
2俯邓、從hive表導(dǎo)出到hdfs目錄
3骡楼、 > 重定向到文件中

1、
insert overwrite local directory '/home/hivedata/exp2'
row format delimited fields terminated by '\t' 
select * from aa7; 

2稽鞭、
insert overwrite directory '/hivedata/exp2' 
row format delimited fields terminated by ',' 
select * from aa7; 

3鸟整、
hive -e "use 數(shù)據(jù)庫(kù)名;select * from 表名"  >  /home/hivedata/exp3; 
#修改表

動(dòng)態(tài)添加分區(qū):
可以在select語(yǔ)句里面通過(guò)使用分區(qū)值來(lái)動(dòng)態(tài)指明分區(qū)
set hive.exec.dynamic.partition=true;
set hive.exec.dynamic.partition.mode=nonstrict;
insert into table 表名  partition (age) select id, name, tel, age  from 表名;

修改分區(qū)中的數(shù)據(jù)路徑:
ALTER TABLE 表名  PARTITION (date='2016') SET LOCATION "數(shù)據(jù)路徑" ;

修改分區(qū)名稱(chēng):
ALTER TABLE 表名  PARTITION (date='原來(lái)的分區(qū)字段名稱(chēng)') RENAME TO PARTITION ( date='要修改后的字段名稱(chēng)') ;  

添加列:
ALTER  TABLE   表名  ADD COLUMNS ( 添加字段的名稱(chēng)   數(shù)據(jù)類(lèi)型  );  
//在所有存在的列后面,但是在分區(qū)列之前添加一列
例如給hive表temptable 添加字段 a,b  
alter  table  temptable  add  columns ( a string, b string );  

表的重命名:
alter table  舊表名  rename  to  新表名;

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末朦蕴,一起剝皮案震驚了整個(gè)濱河市篮条,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌吩抓,老刑警劉巖涉茧,帶你破解...
    沈念sama閱讀 210,914評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異疹娶,居然都是意外死亡伴栓,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評(píng)論 2 383
  • 文/潘曉璐 我一進(jìn)店門(mén)雨饺,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)钳垮,“玉大人,你說(shuō)我怎么就攤上這事额港〗攘” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,531評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵移斩,是天一觀的道長(zhǎng)肚医。 經(jīng)常有香客問(wèn)我,道長(zhǎng)叹哭,這世上最難降的妖魔是什么忍宋? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,309評(píng)論 1 282
  • 正文 為了忘掉前任痕貌,我火速辦了婚禮风罩,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘舵稠。我一直安慰自己超升,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,381評(píng)論 5 384
  • 文/花漫 我一把揭開(kāi)白布哺徊。 她就那樣靜靜地躺著室琢,像睡著了一般。 火紅的嫁衣襯著肌膚如雪落追。 梳的紋絲不亂的頭發(fā)上谣沸,一...
    開(kāi)封第一講書(shū)人閱讀 49,730評(píng)論 1 289
  • 那天翠霍,我揣著相機(jī)與錄音蹦狂,去河邊找鬼嗅钻。 笑死,一個(gè)胖子當(dāng)著我的面吹牛耙饰,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 38,882評(píng)論 3 404
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼硫朦,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了背镇?” 一聲冷哼從身側(cè)響起咬展,我...
    開(kāi)封第一講書(shū)人閱讀 37,643評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎瞒斩,沒(méi)想到半個(gè)月后破婆,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,095評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡济瓢,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,448評(píng)論 2 325
  • 正文 我和宋清朗相戀三年荠割,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片旺矾。...
    茶點(diǎn)故事閱讀 38,566評(píng)論 1 339
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡蔑鹦,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出箕宙,到底是詐尸還是另有隱情嚎朽,我是刑警寧澤,帶...
    沈念sama閱讀 34,253評(píng)論 4 328
  • 正文 年R本政府宣布柬帕,位于F島的核電站哟忍,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏陷寝。R本人自食惡果不足惜锅很,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,829評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望凤跑。 院中可真熱鬧爆安,春花似錦、人聲如沸仔引。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,715評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)咖耘。三九已至翘簇,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間儿倒,已是汗流浹背版保。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,945評(píng)論 1 264
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人彻犁。 一個(gè)月前我還...
    沈念sama閱讀 46,248評(píng)論 2 360
  • 正文 我出身青樓蹈垢,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親袖裕。 傳聞我的和親對(duì)象是個(gè)殘疾皇子曹抬,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,440評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容