没有合适的资源?快使用搜索试试~ 我知道了~
Arkcontrol 数据同步功能简介1
需积分: 0 0 下载量 129 浏览量
2022-08-08
23:06:11
上传
评论
收藏 2.49MB DOCX 举报
温馨提示
试读
14页
Arkcontrol 数据同步功能简介1
资源详情
资源评论
资源推荐
1. Arkcontrol 数据同步功能简介
Arkcontrol 数据同步功能是基于极数云舟自主研发的 Arkgate 的数据异构同
步工具。Arkgate 是一款 MySQL 的插件,模拟了 MySQL 从库的 IO Thread,不
断地 Dump MySQL 的 Binlog Events,实时地将 MySQL 数据库的增量更新同步
到目标数据库中。目标数据库支持 HBase、Elasticsearch 及 MySQL 数据库,以
解决不同人群及业务的需求。架构如下图所示:
图中各个节点说明如下:
在线 MySQL
最左边的 MySQL,可以是一个集群,也可以是单节点,都可以通过同一个
Arkgate 来做数据传输,一个传输任务称为一个通道,也就是可以有多个通道。
要求线上 MySQL 必须记录 Binlog 并且设置 binlog_format 为 ROW 模式。
Arkgate
Arkgate 是一个 MySQL 插件,在 MySQL 内部不断运行着传输任务。将 Dump
过来的数据 Binlog Events 解析出来,转换为 JSON,并行地存储到 MySQL 中,
这是一个数据的中间状态。这个数据库被称为数据中心。
数据中心
在这个数据库中,一个数据库对应一个通道,一个通道具有唯一的名字,
即 Tunnel Name。在这个数据库中,存储了这个通道相关的所有信息,包括复制
主从节点、独立配置参数、从节点对应的位置信息、主节点复制的最新位置、白
/黑名单及 JSON 数据。本系统到此为止也是可以使用的,业务可以自己来定制
化地查这里面的数据,而如果为了简单方便,可以部署增强系统,即 Adapter 程
序。
Adapter 程序
已经做了几种目标数据库的 Adapter 程序,包括 Kafka, HBase、ES 及 MySQL
(目前页面支持自动部署的为到 MySQL),这里可以通过配置文件实现表列的对
应关系,最终实现实时异构的数据转换。
目前 Arkcontrol 中可以在已经搭建好的 gate 集群中添加创建同步任务,监测
任务状态,完成同步任务启停,参数修改、配置等操作。订阅版包含分布式哨兵
集群,可以监控同步链路状态,确保高可用。
2. Arkcontrol 同步任务创建
2.1 准备工作
Arkcontrol 1.4 版本及以后只需在部署中心部署 Arkgate Cluster 集群即可
之前版本需要手动搭建 Arkgate 集群,用于同步任务
2.1.1 搭建数据库实例
使用${installDir}/arkcontrol/software/arkgate 下的 ark-mysql57-5.7.18-
1.el7.centos.x86_64.rpm,搭建单节点实例(127.0.0.1_3321,用户根据情况调整,
这里仅举例说明)
rpm –ivh ark-mysql57-5.7.18-1.el7.centos.x86_64.rpm
/opt/ark/arkdb/scripts/mysql_install_file --port=3321 --target=mysql57 --installdir=/data
2.1.2 拷贝 Arkgate 插件
拷贝 ${installDir}/ArkControl/software/arkgate 下的 arkgate.so 到部署实例
的 plugin_dir(登陆实例${installDir}/ArkControl/software/arkgate 查看)下
拷贝 ${installDir}/ArkControl/software/arkgate 下的arkgate.key文件到部署实
例的 arkdb/3321/etc 下
2.1.3 安装 Arkgate 插件
mysql -uroot -P3321 -h127.0.0.1 -A
执行如下语句:
install plugin arkgate soname 'arkgate.so';
install plugin arkgate_datacenter_threads soname 'arkgate.so';
install plugin arkgate_datacenter_full_list soname 'arkgate.so';
install plugin arkgate_fliter_list soname 'arkgate.so';
install plugin arkgate_slave_list soname 'arkgate.so';
install plugin arkgate_datacenter_list soname 'arkgate.so';
install plugin arkgate_datacenter_options soname 'arkgate.so';
install plugin arkgate_datacenter_tables soname 'arkgate.so';
#查看 arkgate 相关参数确认安装成功
mysql> show global variables like '%arkgate%';
2.1.4 修改配置文件
修改 arkdb/3321/etc/my.cnf 添加
[mysqld]
arkgate_datacenter_host = 127.0.0.1 ##dc 地址
arkgate_datacenter_port = 3321 ##dc 端, dc 与 gate 公用一个 MySQL 实例
arkgate_datacenter_user = arkgate ##访问 dc 用户
arkgate_datacenter_password = arkgate_test ##访问 dc 密码
arkgate_license_file = /data/ark/arkdb/multi/3321/etc/arkgate.key ##License 验证
2.1.5 重启 MySQL 实例
/etc/init.d/mysql.server -P 3321 restart
2.1.6 账号授权
mysql -uroot -P3321 -h127.0.0.1 -A
grant all privileges on *.* to 'arkgate'@'%' identified by 'arkgate_test';
剩余13页未读,继续阅读
洪蛋蛋
- 粉丝: 26
- 资源: 334
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于74LS161+ 74LS192芯片实现倒计时定时器Multisim仿真源文件,Multisim10以上版本可打开运行
- 科大讯飞语音引擎 jar包 demo,科大讯飞语音合成引擎3.0,支持4.0系统以上,文字转语音输出.zip
- Java架构面试笔试专题资料及经验(含答案)SpringBoot面试Linux面试专题及答案 合集.zip
- 头歌c语言实验答案tion-model-for-ne开发笔记
- docker配置使用-model-for-networK开发demo
- docker配置使用vaWeb-mas笔记
- c语言连接两个字符串-mas开发笔记
- 俄罗斯引擎yandex进入x-master 笔记
- 头歌c语言实验答案el-for-network-ids-ma笔记
- 一个delphi写的连连看
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0