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 ...
随机推荐
- ubuntu桌面
gnome-desktop-item-edit ~/Desktop/ --create-new
- Coreseek:常见问题2
1.failed to lock XXXXX.spl文件 这是你建索引的时候会出现的问题,是你没有把打开的的searchd服务给关闭.由于你打开searchd服务时.他会建立一个叫xxx.spl的暂时 ...
- TemplateSyntaxError at /article/list-article-titles/admin/
如图红圈所示,发现一个注释掉的{% if userinfo %}标签竟然可以影响后面的标签快,不能注释,需要完全删除才不会报错. 继续这类django在html模板中直接注释掉发生错误以及解决方案: ...
- 【洛谷P1879】玉米田Corn Fields
玉米田Corn Fields 题目链接 此题和互不侵犯状压DP的做法类似 f[i][j]表示前i行,第i行种植(1)/不种植(0)构成的二进制数为j时的方案数 首先我们可以预处理出所有一行中没有两个相 ...
- 【题解】洛谷P1731 [NOI1999] 生日蛋糕(搜索+剪枝)
洛谷P1731:https://www.luogu.org/problemnew/show/P1731 思路 三重剪枝 当前表面积+下一层表面积如果超过最优值就退出 当前体积+下一层体积如果超过总体积 ...
- PHP中级面试经历
资源来自网络:http://www.2cto.com/kf/201304/204749.html 1.用PHP打印出前一天的时间格式是2006-5-10 22:21:21(2分) 2.echo(),p ...
- Android中得到布局文件对象有三种方式
Android中得到布局文件对象有三种方式 第一种,通过Activity对象 View view = Activity对象.getLayoutInflater().inflater(R.layout. ...
- java交换两个值的三种方法 经典
1.中间变量(在开发中常用) int c=a; a=b; b=c; System.out.println("a的值: "+a+" b的值: "+b); 2.按位 ...
- RMAN备份与恢复(三)--备份相关概念
(1)备份对象 可以使用RMAN进行的备份对象如下: --整个数据库:备份所有的数据文件和控制文件: --数据文件:备份指定的一个或多个数据文件: --表空间:备份指定的一个或多个表空间: --归档重 ...
- iOS:GCD理解1(串行-并行、同步-异步)
1.获取并行.创建串行 队列 1-1).获取 并行(全局) 队列 ,DISPATCH_QUEUE_PRIORITY_DEFAULT 为默认优先级. dispatch_queue_t global_qu ...