您好,登錄后才能下訂單哦!
小編給大家分享一下如何實現Impala-shell命令參數,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
所謂的外部命令指的是不需要進入到impala-shell交互命令行當中即可執行的命令參數
。impala-shell后面執行的時候可以帶很多參數。你可以在啟動 impala-shell 時設置,用于修改命令執行環境。
impala-shell –h
可以幫助我們查看幫助手冊。
比如幾個常見的:
impala-shell –r
刷新impala元數據,與建立連接后執行 REFRESH 語句效果相同
impala-shell –f
文件路徑 執行指的的sql查詢文件。
impala-shell –i
指定連接運行 impalad 守護進程的主機。默認端口是 21000。你可以連接到集群中運行 impalad 的任意主機。
impala-shell –o
保存執行結果到文件當中去。
所謂內部命令是指,進入impala-shell命令行之后可以執行的語法。
connect hostname
連接到指定的機器impalad上去執行。
refresh dbname.tablename
增量刷新,刷新某一張表的元數據,主要用于刷新hive當中數據表里面的數據改變的情況。
invalidate metadata
全量刷新,性能消耗較大,主要用于hive當中新建數據庫或者數據庫表的時候來進行刷新。
quit/exit命令
從Impala shell中彈出
explain 命令
用于查看sql語句的執行計劃。
explain的值可以設置成0,1,2,3等幾個值,其中3級別是最高的,可以打印出最全的信息set explain_level=3;
profile命令
執行sql語句之后執行,可以打印出更加詳細的執行步驟,主要用于查詢結果的查看,集群的調優等。
注意
:如果在hive窗口中插入數據
或者新建的數據庫或者數據庫表,那么在impala當中是不可直接查詢,需要執行invalidate metadata
以通知元數據的更新;
在impala-shell當中插入的數據,在impala當中是可以直接查詢到的,不需要刷新數據庫,其中使用的就是catalog這個服務的功能實現的,catalog是impala1.2版本之后增加的模塊功能,主要作用就是同步impala之間的元數據。
更新操作通知Catalog,Catalog通過廣播的方式通知其它的Impalad進程。默認情況下Catalog是異步加載元數據的,因此查詢可能需要等待元數據加載完成之后才能進行(第一次加載)。
看完了這篇文章,相信你對“如何實現Impala-shell命令參數”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。