у меня есть два HDFS
кластеры с HBase
Сверху, cluster_1
и cluster_2
.
На cluster_1
(Все узлы) Я редактировал hbase-site.xml
добавив это:
<property>
<name>hbase.replication</name>
<value>true</value>
</property>
А потом в cluster_1
Я переделал стол foo
семейство столбцов bar
как это:
disable 'foo'
alter 'foo', NAME => 'bar', REPLICATION_SCOPE => 'my_peer'
enable 'foo'
Затем создал однорангового узла my_peer
как это:
add_peer 'my_peer', 'cluster_2-zookeeper:2181:/my_hbase_znode'
start_replication
Нет данных от foo
воспроизводится в foo
стол в cluster_2
.
Я что-нибудь упускаю? В zk_dump
в cluster_1
говорит, что репликация включена с одноранговым узлом my_peer
.
РЕДАКТИРОВАТЬ-1
После добавления hbase.replication=true
в cluster_2
, Мне удалось реплицировать таблицы, в которые я вручную помещаю данные с помощью оболочки HBase. Не повезло с остальными.
Похоже, ваш атрибут таблицы REPLCATION_SCOPE
установлен неправильно,
change from,
disable 'foo'
alter 'foo', NAME => 'bar', REPLICATION_SCOPE => 'my_peer'
enable 'foo'
к
disable 'foo'
alter 'foo', NAME => 'bar', REPLICATION_SCOPE => '1'
enable 'foo'
Атрибут "REPLICATION_SCOPE
"принимает либо 0
(репликация = ложь) или 1
(репликация = правда).
Используйте команду ниже, независимо от того, включена ли таблица для репликации или нет, list_replicated_tables
Позвольте мне знать, если это помогает!!