Ошибка создания таблицы в HBase

Я новичок в hbase и пытаюсь создать таблицу в оболочке hbase песочницы hortonworks с помощью следующей команды:

create 'testtable', 'colfam1'

При этом я продолжаю получать эту ошибку:

hbase(main):002:0> create 'testtable', 'colfam1'

ERROR: Can't get master address from ZooKeeper; znode data == null

Here is some help for this command:
Creates a table. Pass a table name, and a set of column family
specifications (at least one), and, optionally, table configuration.
Column specification can be a simple string (name), or a dictionary
(dictionaries are described below in main help output), necessarily 
including NAME attribute. 
Examples:

hbase> create 't1', {NAME => 'f1', VERSIONS => 5}
hbase> create 't1', {NAME => 'f1'}, {NAME => 'f2'}, {NAME => 'f3'}
hbase> # The above in shorthand would be the following:
hbase> create 't1', 'f1', 'f2', 'f3'
hbase> create 't1', {NAME => 'f1', VERSIONS => 1, TTL => 2592000, BLOCKCACHE  =>
true }
hbase> create 't1', {NAME => 'f1', CONFIGURATION =>    
{'hbase.hstore.blockingStoreFiles' => '10'}}
Table configuration options can be put at the end.
 Examples:

hbase> create 't1', 'f1', SPLITS => ['10', '20', '30', '40']
hbase> create 't1', 'f1', SPLITS_FILE => 'splits.txt', OWNER => 'johndoe'
hbase> create 't1', {NAME => 'f1', VERSIONS => 5}, METADATA => { 'mykey' => 
 'myvalue' }
hbase> # Optionally pre-split the table into NUMREGIONS, using
hbase> # SPLITALGO ("HexStringSplit", "UniformSplit" or classname)
hbase> create 't1', 'f1', {NUMREGIONS => 15, SPLITALGO => 'HexStringSplit'}
hbase> create 't1', 'f1', {NUMREGIONS => 15, SPLITALGO => 'HexStringSplit',     
REGION_REPLICATION => 2, CONFIGURATION => REGION_REPLICATION => 2, CONFIGURATION =
=> {'hbase.hregion.scan.loadColumnFamiliesOnDemand' => 'true'}}

You can also keep around a reference to the created table:

hbase> t1 = create 't1', 'f1'

Which gives you a reference to the table named 't1', on which you can then
call methods.

Я скопировал эту строку прямо из HBase: The Definitive Guide, так почему же оператор create не работает? Что-то не так с этим синтаксисом?


person nickshoe    schedule 30.06.2014    source источник


Ответы (2)


Вы установили HBase локально или он установлен в кластере. Если первое, то вы запустили HBase с помощью сценария start-hbase.sh. Если последнее, вам придется запустить и HBase, и Zookeeper.

person aa8y    schedule 01.07.2014
comment
Нет, я не устанавливал его локально, HBase предустановлен на виртуальной машине, и у меня тоже нет кластера, только одно виртуальное устройство в виртуальном боксе на моем ноутбуке. Я не могу найти сценарий start-hbase.sh, что еще мне попробовать? - person nickshoe; 01.07.2014
comment
Хорошо. Так вы используете виртуальную машину Cloudera или Hortonworks? Если вы используете Cloudera, то у вас должен быть доступ к Cloudera Manager, который сообщит вам статус услуг. - person aa8y; 01.07.2014
comment
Не могли бы вы попробовать jps | grep HMaster в терминале и рассказать мне, каков результат? - person aa8y; 02.07.2014
comment
Когда я пробую jps | grep HMaster, он не дает никакого вывода, он просто переходит к следующей строке, поэтому я попробовал его с двумя вертикальными полосами, поэтому вот результат: [root @ sandbox ~] # jps || grep HMaster 2883 JobHistoryServer 2003 QuorumPeerMain 2160 Nfs3 1678 DataNode 4289 Jps 3046 RunJar 2761 ApplicationHistoryServer 2150 Portmap 1410 ldap.jar 2763 ResourceManager 2765 NodeManager 1682 SecondaryNameNode 3296 gateway.jrap 1682 RunJar # 395 Sandbox @ RunJar_Run_Sand_Sand_Node 3296 gateway.jrap 1695 | | grep HMaster [root @ sandbox ~] # [/ code] - person nickshoe; 03.07.2014
comment
Обычно HBase не работает. Вам нужно найти в Интернете, где он находится на виртуальной машине HDP. - person aa8y; 03.07.2014
comment
Хорошо, он работает, так что мне нужно искать в Интернете и где что? - person nickshoe; 03.07.2014
comment
Нет, он (HBase) не работает. Если бы он работал, вы бы увидели HMaster в своем jps выводе. Контрольный пункт 4 здесь: docs.hortonworks. com / HDPDocuments / HDP2 / HDP-2.0.0.2 / bk_reference /. Поскольку вы используете виртуальную машину, главный и региональный серверы будут одинаковыми (виртуальная машина). - person aa8y; 03.07.2014

Попробуйте войти в Ambari на вашем локальном хосте и войти в систему. Щелкните HBASE, а затем под сводкой щелкните ActiveHbaseMaster. Затем просто запустите ActiveHbaseMaster и RegionServer / Hbase из столбца слева! Это сработало для меня

person ChrisianBartram    schedule 09.06.2016