Репликация 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,
EDIT-1
После добавления hbase.replication=true в cluster_2Я смог скопировать таблицы, куда я вручную помещаю данные с помощью оболочки HBase. Не повезло с другими.
2 ответа
Похоже, ваш атрибут таблицы 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
Позвольте мне знать, если это помогает!!
Найдите возможные проблемы и их решения https://debugginghadoop.blogspot.com/2023/07/all-possible-hbase-replication-issues.html .