不多說(shuō),直接上干貨!
所謂的外部命令指的是不需要進(jìn)入到impala-shell交互命令行當(dāng)中即可執(zhí)行的命令參數(shù)
。impala-shell后面執(zhí)行的時(shí)候可以帶很多參數(shù)。你可以在啟動(dòng) impala-shell 時(shí)設(shè)置,用于修改命令執(zhí)行環(huán)境。
impala-shell –h
可以幫助我們查看幫助手冊(cè)。
比如幾個(gè)常見(jiàn)的:
impala-shell –r
刷新impala元數(shù)據(jù),與建立連接后執(zhí)行 REFRESH 語(yǔ)句效果相同impala-shell –f
文件路徑 執(zhí)行指的的sql查詢(xún)文件。impala-shell –i
指定連接運(yùn)行 impalad 守護(hù)進(jìn)程的主機(jī)。默認(rèn)端口是 21000。你可以連接到集群中運(yùn)行 impalad 的任意主機(jī)。impala-shell –o
保存執(zhí)行結(jié)果到文件當(dāng)中去。所謂內(nèi)部命令是指,進(jìn)入impala-shell命令行之后可以執(zhí)行的語(yǔ)法。
connect hostname
連接到指定的機(jī)器impalad上去執(zhí)行。
refresh dbname.tablename
增量刷新,刷新某一張表的元數(shù)據(jù),主要用于刷新hive當(dāng)中數(shù)據(jù)表里面的數(shù)據(jù)改變的情況。
invalidate metadata
全量刷新,性能消耗較大,主要用于hive當(dāng)中新建數(shù)據(jù)庫(kù)或者數(shù)據(jù)庫(kù)表的時(shí)候來(lái)進(jìn)行刷新。
quit/exit命令
從Impala shell中彈出
explain 命令
用于查看sql語(yǔ)句的執(zhí)行計(jì)劃。
explain的值可以設(shè)置成0,1,2,3等幾個(gè)值,其中3級(jí)別是最高的,可以打印出最全的信息
set explain_level=3;
profile命令
執(zhí)行sql語(yǔ)句之后執(zhí)行,可以打印出更加詳細(xì)的執(zhí)行步驟,主要用于查詢(xún)結(jié)果的查看,集群的調(diào)優(yōu)等。
注意
:如果在hive窗口中插入數(shù)據(jù)
或者新建的數(shù)據(jù)庫(kù)或者數(shù)據(jù)庫(kù)表,那么在impala當(dāng)中是不可直接查詢(xún),需要執(zhí)行invalidate metadata
以通知元數(shù)據(jù)的更新;
在impala-shell當(dāng)中插入的數(shù)據(jù),在impala當(dāng)中是可以直接查詢(xún)到的,不需要刷新數(shù)據(jù)庫(kù),其中使用的就是catalog這個(gè)服務(wù)的功能實(shí)現(xiàn)的,catalog是impala1.2版本之后增加的模塊功能,主要作用就是同步impala之間的元數(shù)據(jù)。
更新操作通知Catalog,Catalog通過(guò)廣播的方式通知其它的Impalad進(jìn)程。默認(rèn)情況下Catalog是異步加載元數(shù)據(jù)的,因此查詢(xún)可能需要等待元數(shù)據(jù)加載完成之后才能進(jìn)行(第一次加載)。
標(biāo)簽:通遼 黔南 黔南 隴南 淮南 河池 常州 河北
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Impala-shell命令參數(shù)的實(shí)現(xiàn)》,本文關(guān)鍵詞 Impala-shell,命令,參數(shù),的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。