![查詢結(jié)果插入到Hive表中_第1頁(yè)](http://file4.renrendoc.com/view/d309f1af08b1317bc6a2a0655dddb674/d309f1af08b1317bc6a2a0655dddb6741.gif)
![查詢結(jié)果插入到Hive表中_第2頁(yè)](http://file4.renrendoc.com/view/d309f1af08b1317bc6a2a0655dddb674/d309f1af08b1317bc6a2a0655dddb6742.gif)
![查詢結(jié)果插入到Hive表中_第3頁(yè)](http://file4.renrendoc.com/view/d309f1af08b1317bc6a2a0655dddb674/d309f1af08b1317bc6a2a0655dddb6743.gif)
![查詢結(jié)果插入到Hive表中_第4頁(yè)](http://file4.renrendoc.com/view/d309f1af08b1317bc6a2a0655dddb674/d309f1af08b1317bc6a2a0655dddb6744.gif)
![查詢結(jié)果插入到Hive表中_第5頁(yè)](http://file4.renrendoc.com/view/d309f1af08b1317bc6a2a0655dddb674/d309f1af08b1317bc6a2a0655dddb6745.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
查詢結(jié)果插入到Hive表中學(xué)習(xí)目標(biāo)2知識(shí)目標(biāo)●了解Load加載●了解insert插入的模式能力目標(biāo)●掌握Load實(shí)例●掌握多插入模式學(xué)習(xí)任務(wù)3了解LOCAL關(guān)鍵字熟悉動(dòng)態(tài)分區(qū)模式了解create…as操作總結(jié)insertinto語句用法Load加載insert插入4目錄Create…as操作查詢結(jié)果插入到Hive表中摘要5Hive是基于Hadoop構(gòu)建的一套數(shù)據(jù)倉(cāng)庫(kù)分析系統(tǒng),它提供了豐富的SQL查詢方式來分析存儲(chǔ)在Hadoop分布式文件系統(tǒng)中的數(shù)據(jù),可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫(kù)表,并提供完整的SQL查詢功能,可以將SQL語句轉(zhuǎn)換為MapReduce任務(wù)進(jìn)行運(yùn)行,通過自己的SQL去查詢分析需要的內(nèi)容,這套SQL簡(jiǎn)稱HiveSQL,使不熟悉mapreduce的用戶很方便的利用SQL語言查詢,匯總,分析數(shù)據(jù)。Load加載6Load實(shí)例LOADDATA[LOCAL]INPATH'filepath'[OVERWRITE]INTOTABLEtablename[PARTITION(partcol1=val1,partcol2=val2...)]解釋:local:可選,表示從本地文件系統(tǒng)中加載,而非hdfsoverwrite:可選,先刪除原來數(shù)據(jù),然后再加載Load加載7
而hive的score表對(duì)應(yīng)的hdfs文件依舊沒變,因此load的命令的執(zhí)行其實(shí)就是簡(jiǎn)單的mv操作。
如果要實(shí)現(xiàn)真正的分區(qū)加載則應(yīng)該采用下面的加載方式,先load加載到非分區(qū)表score1,這個(gè)時(shí)候查詢是可以的。Load加載8向數(shù)據(jù)表內(nèi)加載文件?Load操作只是單純的復(fù)制/移動(dòng)操作,將數(shù)據(jù)文件移動(dòng)到Hive表對(duì)應(yīng)的位置。?filepath?相對(duì)路徑,例如:project/data1?絕對(duì)路徑,例如:/user/hive/project/data1?包含模式的完整URI,例如:hdfs://namenode:9000/user/hive/project/data1?加載的目標(biāo)可以是一個(gè)表或者分區(qū)。如果表包含分區(qū),必須指定每一個(gè)分區(qū)的分區(qū)名?filepath可以引用一個(gè)文件(這種情況下,Hive會(huì)將文件移動(dòng)到表所對(duì)應(yīng)的目錄中)或者是一個(gè)目錄(在這種情況下,Hive會(huì)將目錄中的所有文件移動(dòng)至表所對(duì)應(yīng)的目錄中)Load加載9LOCAL關(guān)鍵字?指定了LOCAL?load命令會(huì)去查找本地文件系統(tǒng)中的filepath。如果發(fā)現(xiàn)是相對(duì)路徑,則路徑會(huì)被解釋為相對(duì)于當(dāng)前用戶的當(dāng)前路徑。用戶也可以為本地文件指定一個(gè)完整的URI,比如:file:///user/hive/project/data1。?load命令會(huì)將filepath中的文件復(fù)制到目標(biāo)文件系統(tǒng)中。目標(biāo)文件系統(tǒng)由表的位置屬性決定。被復(fù)制的數(shù)據(jù)文件移動(dòng)到表的數(shù)據(jù)對(duì)應(yīng)的位置。?沒有指定LOCAL如果filepath指向的是一個(gè)完整的URI,hive會(huì)直接使用這個(gè)URI。Load加載10OVERWRITE?指定了OVERWRITE?目標(biāo)表(或者分區(qū))中的內(nèi)容(如果有)會(huì)被刪除,然后再將filepath指向的文件/目錄中的內(nèi)容添加到表/分區(qū)中。?如果目標(biāo)表(分區(qū))已經(jīng)有一個(gè)文件,并且文件名和filepath中的文件名沖突,那么現(xiàn)有的文件會(huì)被新文件所替代。將查詢結(jié)果插入Hive表?將查詢結(jié)果插入Hive表?將查詢結(jié)果寫入HDFS文件系統(tǒng)Load加載11?基本模式INSERTOVERWRITETABLEtablename1[PARTITION(partcol1=val1,partcol2=val2...)]select_statement1FROMfrom_statement?多插入模式FROMfrom_statementINSERTOVERWRITETABLEtablename1[PARTITION(partcol1=val1,partcol2=val2...)]select_statement1[INSERTOVERWRITETABLEtablename2[PARTITION...]select_statement2]...?自動(dòng)分區(qū)模式INSERTOVERWRITETABLEtablenamePARTITILoad加載12insert插入hive不支持INSERTINTO,UPDATE,DELETE操作,這樣的話,就不要很復(fù)雜的鎖機(jī)制來讀寫數(shù)據(jù)。INSERTINTOsyntaxisonlyavailablestartinginversion0.8。INSERTINTO就是在表或分區(qū)中追加數(shù)據(jù),并不是經(jīng)典數(shù)據(jù)庫(kù)中的insertinto操作,只是insertinto單詞一樣。13基本模式INSERTINTO|OVERWRITETABLEtablename1[PARTITION(partcol1=val1,partcol2=val2...)]select_statement1多插入模式FROMfrometable1,fromtable2....INSERTINTO|OVERWRITETABLEdesttable1[PARTITION(partcol1=val1,partcol2=val2...)]select_statement1[INSERTINTO|OVERWRITETABLEdesttable2[PARTITION...]select_statement2]...insert插入14動(dòng)態(tài)分區(qū)模式INSERTINTO|OVERWRITETABLEtablenamePARTITION(partcol1[=val1],partcol2[=val2]...)select_statementFROMfrom_statement將score1中的某個(gè)分區(qū)數(shù)據(jù)insert到score中:insertoverwritetablescorepartition(school="school1",class="class1")selectid,name,Chinese,English,mathfromscore1whereschool="school1"andclass="class1";insert插入15動(dòng)態(tài)分區(qū)模式將score1中的某個(gè)分區(qū)數(shù)據(jù)insert到score中:insertoverwritetablescorepartition(school="school2",class="class1")selectid,name,Chinese,English,mathfromscore1whereschool="school2"andclass="class1";insertoverwritetablescorepartition(school="school3",class="class1")selectid,name,Chinese,English,mathfromscore1whereschool="school3"andclass="class1";insert插入16查詢表文件數(shù)據(jù):[root@xxxtmp]#
hdfsdfs-cat
/user/hive/warehouse/jira.db/score/school=school1/class=class1/000000_00001,zhangsan,99.0,98.0,100.00004,zhangsan2,99.0,98.0,100.0分區(qū)數(shù)據(jù)并沒有存在表文件中,僅存在目錄上,因此,這下hive的分區(qū)本質(zhì)摸清楚了。那么問題來了,假如分區(qū)數(shù)很多,每條一個(gè)分區(qū)豈不累死,hive提出了動(dòng)態(tài)分區(qū)的功能,上面的語句是靜態(tài)分區(qū),需要手動(dòng)指定。動(dòng)態(tài)分區(qū)和靜態(tài)分區(qū)并不在我們這章的討論范圍。insert插入17insertinto語句用法INSERTOVERWRITETABLEtablename1[PARTITION(partcol1=val1,partcol2=val2...)[IF
NOTEXISTS]]\select_statement1FROMfrom_statement;用法一:用法二:INSERTINTOTABLEtablename1[PARTITION(partcol1=val1,partcol2=val2...)]\select_statement1FROMfrom_statement;hive>insertintotablecite>select*fromtt;insert插入18insertinto語句用法這樣就會(huì)將tt表格里面的數(shù)據(jù)追加到cite表格里面。并且在cite數(shù)據(jù)存放目錄生成了一個(gè)新的數(shù)據(jù)文件,這個(gè)新文件是經(jīng)過處理的,列之間的分割是cite表格的列分割符,而不是tt表格列的分隔符。insert插入19建完的score2表沒有分區(qū),因此,create...as不能復(fù)制分區(qū)表。分區(qū)表的復(fù)制:需要先用createtablescore3likescore來復(fù)制表結(jié)構(gòu),然后將原表的數(shù)據(jù)復(fù)制到新表(score3);創(chuàng)建新表:createtablescore3likescore;Create…as操作createtable
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年槍托項(xiàng)目可行性研究報(bào)告
- 加工項(xiàng)目分包合同范本
- 市區(qū)精裝修房長(zhǎng)期出租合同范本
- 冷庫(kù)建設(shè)合同范本合集
- 2025年度二零二五新型智能公產(chǎn)房買賣合同示范文本
- 城市綜合辦公樓單層長(zhǎng)期出租合同范本
- 公交運(yùn)輸合同范例
- 個(gè)人租給公司房屋租賃合同范本
- 會(huì)所庭院出租合同范本
- 債權(quán)讓與合同范例
- VDA6.3 2023過程審核教材
- 高職應(yīng)用語文教程(第二版)教案 3管晏列傳
- 高中物理《光電效應(yīng)》
- 烹飪實(shí)訓(xùn)室安全隱患分析報(bào)告
- 《金屬加工的基礎(chǔ)》課件
- 運(yùn)輸行業(yè)春節(jié)安全生產(chǎn)培訓(xùn) 文明駕駛保平安
- 體驗(yàn)式沙盤-收獲季節(jié)
- 找人辦事協(xié)議
- 老年護(hù)理陪護(hù)培訓(xùn)課件
- 醬香型白酒工廠設(shè)計(jì)
- 第3章 環(huán)境感知技術(shù)
評(píng)論
0/150
提交評(píng)論