Назад | Перейти на главную страницу

Репликация HBase не работает

у меня есть два 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

Позвольте мне знать, если это помогает!!