zoukankan      html  css  js  c++  java
  • HBase replication使用

    hbase-0.90.0的一个重要改进是引入了replication机制,使它的数据完整性得到了进一步的保障。虽然这一功能还不太完善,但是今后必然会变得更加重要。

    hbase的replication机制很像mysql statement-based replication。它是通过WALEdit和hlog来实现的。当请求发送给master cluster时,hlog日志放入hdfs的同时进入replication队列,由slave cluster通过zookeeper获取并写入slave的表中。目前的版本仅支持一个slave cluster



    具体配置如下:
    1 需要保证主从cluster上有相同的table,并且结构一致,都enable
    2 保证主从cluster的版本都在0.90.0以上
    3 主从cluster的机器是两两互通的
    4 master cluster的hbase-site.xml中需要添加以下选项:
    Xml代码  收藏代码
    1. <property>  
    2.   <name>hbase.replication</name>  
    3.   <value>true</value>  
    4. </property>  

    5 进入master cluster的shell,执行:
    add_peer '1', "slave-zk-1,slave-zk-2,...:slave-2181:/slave-zk-parent"
    6 开启要复制的family,进入hbase shell,执行:
    Java代码  收藏代码
    1. disable 'your_table'  
    2. alter 'your_table', {NAME => 'family_name', REPLICATION_SCOPE => '1'}  
    3. enable 'your_table'  

      此时replication己经开始了
    7 要中止或继续replication,使用stop_replication或start_replication

    在复制过程中,可以通过查看regionserver的日志来跟踪复制的进度:
    Considering 1 rs, with ratio 0.1
    Getting 1 rs from peer cluster # 0
    Choosing peer yourip:62020

    要检查复制的数据是否完整,可以利用hbase提供的小工具verifyrep:
    Java代码  收藏代码
    1. hbase org.apache.hadoop.hbase.mapreduce.replication.VerifyReplication --starttime=1265875194289 --stoptime=1265878794289 1 TestTable  

    这里的1是上面的peer_id
  • 相关阅读:
    P1509 找啊找啊找GF
    P1508 Likecloud-吃、吃、吃
    P1493 分梨子
    P1507 NASA的食物计划
    Java简单从文件读取和输出
    服务器和普通用户电脑的区别
    readUTF()和writeUTF()
    js中substring和substr的用法
    AfxMessageBox和MessageBox差别
    POJ 3691 &amp; HDU 2457 DNA repair (AC自己主动机,DP)
  • 原文地址:https://www.cnblogs.com/cl1024cl/p/6205198.html
Copyright © 2011-2022 走看看