我是HBase的新手。我在尝试基本的查询。和通常的SQL方式一样,每次查询后我都会给分号。查询没有运行。它只是显示了下一个提示符,好像是在等待下一部分命令。
hbase(main):016:0> create 'kau_emp', 'personal data', 'professional data';
hbase(main):017:0*
hbase(main):018:0*
hbase(main):019:0* 给予分号,\ /等没有帮助。按下Ctrl+C退出外壳。
在网上搜索后我发现这里
hbase中的put语句以分号结尾,该分号在交互的ruby (这就是HBase shell )中具有特殊意义。分号将当前语句的执行推迟到输入不以分号结尾的语句为止。换句话说,put语句直到get语句执行之前才被执行(因此,当">> no输出“正在进行时,put语句尚未执行)
所以我试着在后面给出分号,在下一行中给出另一个命令,而不给分号。而且很有帮助。
hbase(main):029:0> create 'kau_emp1', 'personal data', 'professional data';
hbase(main):030:0*
hbase(main):031:0* describe 'kau_emp1'
0 row(s) in 1.2260 seconds
Table kau_emp1 is ENABLED
kau_emp1
COLUMN FAMILIES DESCRIPTION
{NAME => 'personal data', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', COMPRESSION => 'NONE', MIN_VERSIONS => '0', BLOCKCACHE => 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}
{NAME => 'professional data', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', COMPRESSION => 'NONE', MIN_VERSIONS => '0', BLOCKCACHE => 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}
2 row(s) in 0.0140 seconds,当您给出分号,并且不想运行任何其他查询时,有什么合适的方法?
发布于 2016-11-02 02:04:53
我对HBase shell也有同样的问题,通过阅读您的问题,我得到了关于分号及其行为的答案。
所以,我只想回答你的问题:“当你给出分号,而你不想运行任何其他查询时,该怎么做呢?”
输入任何东西,“1”就可以了。
hbase(main):006:0> count 'pds';
hbase(main):007:0* 1
0 row(s) in 0.2870 seconds
=> 1https://stackoverflow.com/questions/35380159
复制相似问题