Hbase的shell出现wrong number of arguments xxx以及undefined method any?for xxxx
我們大概碰到過下面這種情況
ERROR: wrong number of arguments (10 for 6)
For usage try 'help "put"'
Took 0.0015 seconds ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
hbase(main):066:0> put 'my_table','www.test5.com', 'cf1:price', '999', 'cf2:title','Hello Python'
ERROR: undefined method `any?' for "Hello Python":String
我一開始總是覺得自己可能是某些空格或者逗號不小心用了圓角字符,仔細查了好久,
才想到或許hbase是不支持"多列在一條命令中更新"的,
也就是:
"一條hbase命令只允許更新一個column"
所以其實你的hbase命令在語法上沒有任何問題,但是不要一次性更新多個column中的值,否則會報上面的錯誤。
[1]中提供了3種辦法:
①使用Java/Python API
②使用Phoenix
③使用hive(前提是hive已經(jīng)映射了hbase)
?
Reference:
[1]How do I insert data into multiple columns using single HBase command?
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的Hbase的shell出现wrong number of arguments xxx以及undefined method any?for xxxx的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DNF公会地下城在哪 地下城与勇士
- 下一篇: hbase命令行在create tabl