《大數(shù)據(jù)平臺(tái)架構(gòu)與原型實(shí)現(xiàn):數(shù)據(jù)中臺(tái)建設(shè)實(shí)戰(zhàn)》一書(shū)由博主歷時(shí)三年精心創(chuàng)作,現(xiàn)已通過(guò)知名IT圖書(shū)品牌電子工業(yè)出版社博文視點(diǎn)出版發(fā)行,點(diǎn)擊《重磅推薦:建大數(shù)據(jù)平臺(tái)太難了!給我發(fā)個(gè)工程原型吧!》了解圖書(shū)詳情,京東購(gòu)書(shū)鏈接:https://item.jd.com/12677623.html,掃描左側(cè)二維碼進(jìn)入京東手機(jī)購(gòu)書(shū)頁(yè)面。 |
一個(gè)很小的問(wèn)題,簡(jiǎn)單記錄一下。有時(shí)候我們會(huì)粘貼一段已經(jīng)成功運(yùn)行過(guò)的SQL或程序腳本,但是在spark-sql / spark-shell / hive / beeline 中執(zhí)行時(shí)可能會(huì)報(bào)這樣的錯(cuò)誤:
hive> CREATE EXTERNAL TABLE IF NOT EXISTS ORDERS(
> Display all 641 possibilities? (y or n)
! != $ELEM$ $KEY$
... ... ...
... ... ...
輸出的Display all 641 possibilities? (y or n)
信息在暗示我們:腳本中有tab建,這會(huì)讓某些shell終端解析為“尋求代碼提示”,所以才會(huì)給出Display all 641 possibilities? (y or n)
這樣的信息。我們可以在文本編輯器,例如notepad++,中選擇“視圖” -> “顯示符號(hào)” -> “顯示空格與制表符” 來(lái)確認(rèn)是否在腳本中含有tab字符。
相應(yīng)的解決方法是:使用空格(4個(gè)或2個(gè))查找替換tab字符即可。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-629767.html
PS. 可能也是因?yàn)檫@種原因,現(xiàn)在IDE(例如IntelliJ)已經(jīng)不使用Tab鍵作為代碼縮進(jìn)了,而是改用4個(gè)或2個(gè)空格符去替換,這樣可以規(guī)避上述問(wèn)題。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-629767.html
到了這里,關(guān)于在 spark-sql / spark-shell / hive / beeline 中粘貼 sql、程序腳本時(shí)的常見(jiàn)錯(cuò)誤的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!