5.hbase表新增数据同步之add_peer
一.前提主从集群之间能互相通讯;

二.在cluster1上(源集群):
1.查看集群已开启的peers
hbase(main):011:0> list_peers
PEER_ID CLUSTER_KEY STATE TABLE_CFS
10 slave.01.bigdata.prod.wgq,slave.02.bigdata.prod.wgq,slave.03.bigdata.prod.wgq:2181:/hbase ENABLED USER_INFO:ncallrecords
1 row(s) in 0.0100 seconds
2.使用新建表test做测试,建表,然后在从集群也建立一张一样的test表:
hbase(main):015:0> create "test","A"
0 row(s) in 2.2720 seconds
3.disable该表:
hbase(main):022:0> disable 'test'
0 row(s) in 2.2550 seconds
4.开启复制功能,默认为不开启:
hbase(main):023:0> alter 'test',{NAME=>'A',REPLICATION_SCOPE => '1'}
5.开启该表:
hbase(main):026:0> enable 'test'
0 row(s) in 1.2630 seconds
6.针对该表建立add_peer功能:
hbase(main):028:0> add_peer '11','slave.01.bigdata.prod.wgq,slave.02.bigdata.prod.wgq,slave.03.bigdata.prod.wgq:2181:/hbase'
0 row(s) in 0.0180 seconds
7.再看查看已开启的peers,可以看到新加的:
hbase(main):029:0> list_peers
PEER_ID CLUSTER_KEY STATE TABLE_CFS
11 slave.01.bigdata.prod.wgq,slave.02.bigdata.prod.wgq,slave.03.bigdata.prod.wgq:2181:/hbase ENABLED
10 slave.01.bigdata.prod.wgq,slave.02.bigdata.prod.wgq,slave.03.bigdata.prod.wgq:2181:/hbase ENABLED USER_INFO:ncallrecords
2 row(s) in 0.0120 seconds
8.开启针对test表同步复制:
hbase(main):030:0> set_peer_tableCFs '11','test'
0 row(s) in 0.0040 seconds
9.再list_peers:
hbase(main):031:0> list_peers
PEER_ID CLUSTER_KEY STATE TABLE_CFS
11 slave.01.bigdata.prod.wgq,slave.02.bigdata.prod.wgq,slave.03.bigdata.prod.wgq:2181:/hbase ENABLED test
10 slave.01.bigdata.prod.wgq,slave.02.bigdata.prod.wgq,slave.03.bigdata.prod.wgq:2181:/hbase ENABLED USER_INFO:ncallrecords
2 row(s) in 0.0050 seconds
10.往主集群hbase数据库test表中put新数据,验证从集群是否有新数据:
hbase(main):034:0> put "test","2222222","A:name","chenliangliang"
0 row(s) in 0.0720 seconds
hbase(main):035:0> put "test","2222222","A:age","30"
0 row(s) in 0.0060 seconds
----------------------------------------------------------------------------------------------------
hbase(main):036:0> scan "test"
ROW COLUMN+CELL
1111111 column=A:age, timestamp=1524021317653, value=30
1111111 column=A:name, timestamp=1524021305313, value=gongxiucheng
2222222 column=A:age, timestamp=1524021628181, value=30
2222222 column=A:name, timestamp=1524021616864, value=chenliangliang
2 row(s) in 0.0070 seconds
-------------------------------------------------------------------------------------------------------
其中rowKey为1111111的这条是开启数据同步之前put的;
-------------------------------------------------------------------------------------------------------
然后到从集群scan test表,假如有rowKey为2222222的这条数据,则同步成功:
---------------------------------------------------------------------------------------------------------
hbase(main):010:0> scan "test"
ROW COLUMN+CELL
2222222 column=A:age, timestamp=1524021628181, value=30
2222222 column=A:name, timestamp=1524021616864, value=chenliangliang
1 row(s) in 0.0350 seconds
三.总结:
1 验证是需要先核对下hbase的版本,不同版本的复制命令不同;
2 同步是针对配置后复制的新数据,旧数据需要手动迁移;
5.hbase表新增数据同步之add_peer的更多相关文章
- Kettle 实现mysql数据库不同表之间数据同步——实验过程
下面是试验的主要步骤: 在上一篇文章中LZ已经介绍了,实验的环境和实验目的. 在本篇文章中主要介绍侧重于对Kettle ETL的相应使用方法, 在这里LZ需要说明一下,LZ成为了避免涉及索引和表连接等 ...
- 雪花ID实现新增数据同步
雪花ID实现新增数据同步 GUID生成的ID,可以确保是唯一ID,但却是无序的,不适合用于数据同步. 雪花算法生成的ID(INT64)能够按照时间有序(升序)生成.只要电脑上的时间是正确的,新增的记录 ...
- 【转】mysql 触发器实现两个表的数据同步
mysql通过触发器实现两个表的同步 目前,在本地测试成功. 假设本地的两个数据库a和b,a下有表table1(id, val) b下有表table2(id, val) 假设希望当table1中数据更 ...
- 浅谈hbase表中数据导出导入(也就是备份)
转自:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=23916356&id=3321832 最近因为生产环境hbase ...
- Hbase到Solr数据同步及Solr分离实战
1. 起因 由于历史原因,公司的数据是持久化在HBase中,查询是通过Solr来实现,这这样的设计必然涉及到要把Hbase中的数据实时同步到Solr,但所有的服务都在一个同一个集群及每台机子都安装了很 ...
- Oracle 通过dblink和job方式实现两个数据库表之间数据同步
需求是需要将Database_A中的dev_test表中的数据同步到Database_B中的dev_test表中. 因为是通过Database_B去同步Database_A库中的数据,所以操作都建立在 ...
- HBase表的数据导出和导入
1. 表数据导出 hbase org.apache.hadoop.hbase.mapreduce.Export test file:///home/hadoop/test (导入到本地) hbase ...
- HBase 建表新增数据记录
login as: root root@192.168.12.23's password: ********* Last login: Wed Aug 20 00:41:17 2014 from 19 ...
- Java 向Hbase表插入数据异常org.apache.hadoop.hbase.client.HTablePool$PooledHTable cannot be cast to org.apache.client.HTable
出错代码如下: //1.create HTablePool HTablePool hp=new HTablePool(con, 1000); //2.get HTable from HTablepoo ...
随机推荐
- python:常用模块一
一.collections模块 1,在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter.deque.defaultd ...
- hdu 6243,6247
题意:n只狗,n个笼子,每个笼子只能有一只,求不在自己笼子的狗的数量的期望. 分析:概率是相等的,可以直接用方案数代替,k 不在自己的笼子的方案数是 n!- (n-1)!,这样的k有n个,总的方案数n ...
- Linux下安装jdk步骤
1.检查当前服务器中是否有安装jdkrpm -qa|grep java 2. 批量删除java rpm -qa | grep java | xargs rpm -e --nodeps 3. 安装jdk ...
- Softmax vs. Softmax-Loss: Numerical Stability
http://freemind.pluskid.org/machine-learning/softmax-vs-softmax-loss-numerical-stability/ softmax 在 ...
- SpringBoot 使用(三): 配置文件详解
代码从开发到测试要经过各种环境,开发环境,测试环境,demo环境,线上环境,各种环境的配置都不一样,同时要方便各种角色如运维,接口测试, 功能测试,全链路测试的配置,hardcode 肯定不合适,如S ...
- iis 中经典和集成模式对应webconfig节点
经典对应<system.web> 集成对应<system.webserver>
- 课时15.DTD文档声明下(了解)
W3C的官方网站是W3School,我们可以去官方网站查询DTD文档声明. HTML4.01 Strict 非常严谨的 如果你写了这个DTD文档声明,你就不能写如下样式: <fon ...
- C#添加二维码带加密带logo
#region 生成QR码,加密与logo在此处修改 public static void CreateQr(string strQrContent, DataTable myTable) { Qr ...
- 在iOS中如何正确的实现行间距与行高
最近准备给 VirtualView-iOS 的文本元素新增一个 lineHeight 属性,以便和 VirtualView-Android配合时能更精确的保证双平台的一致性.面向 Google 以及 ...
- SQL Server中的三种Join方式
1.测试数据准备 参考:Sql Server中的表访问方式Table Scan, Index Scan, Index Seek 这篇博客中的实验数据准备.这两篇博客使用了相同的实验数据. 2.SQ ...