RDS数据订阅服务使用说明

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: RDS数据订阅服务使用说明RDS数据订阅服务主要解决的RDS上的数据同步到HBase,用户可以在HBase上查到RDS的数据,满足大数据查询分析的需求使用场景历史数据沉淀业务使用MySQL承担交易等关键的在线业务,同时有数据分析的需求,需要做一些复杂查询,但不能影响在线业务。

RDS数据订阅服务使用说明

RDS数据订阅服务主要解决的RDS上的数据同步到HBase,用户可以在HBase上查到RDS的数据,满足大数据查询分析的需求

使用场景

历史数据沉淀

业务使用MySQL承担交易等关键的在线业务,同时有数据分析的需求,需要做一些复杂查询,但不能影响在线业务。利用BDS异构数据源迁移,把RDS数据实时同步到HBase,可以轻松应对大数据查询需求。

image.png

迁移方式

RDS历史数据迁移

RDS实时增量数据迁移

  • DTS服务提供对RDS binlog收集,实时抓取源RDS实例的binlog,并提供数据订阅的功能
  • BDS迁移服务订阅DTS所收集的数据,将实时的数据写入到HBase

迁移步骤

RDS历史数据迁移

客户自行使用开源的工具完成数据的迁移

RDS实时增量数据迁移

  1. 客户 - 开通DTS订阅通道
  2. 客户 - DTS通道上设置延迟报警
  3. 客户 - 获取DTS通道id、Access Key、Access Key Secret、RegionID等信息
  4. 客户 - 申请一台ECS并且绑定公网,ECS和云HBase属于同一个VPC,能够打通和HBase集群的网络
  5. 云HBase值班同学 - 协助部署BDS迁移服务,并对客户提供迁移服务的交互界面
  6. 客户 - 在HBase里面创建表信息
  7. 客户 - 录入HBase集群信息、DTS通道信息,提交迁移任务

版本支持

HBase版本:1.x、2.x
RDS版本:订阅通道的限制

BDS迁移服务使用说明

录入HBase集群信息

image.png

HDFS HA 的填写例子
集群名:xxxxx
HDFS URI:hdfs://100.81.140.116:8025,100.81.140.120:8025
HBase在HDFS根目录:/hbase
dfs.nameservices: hbase-cluster
clusterKey:  100.81.140.116,100.81.140.120,100.81.140.122:2185:/hbase

HDFS 非HA 的填写例子
集群名:xxxxx
HDFS URI:hdfs://100.81.140.116:8025
HBase在HDFS根目录:/hbase
dfs.nameservices:
clusterKey: 100.81.140.116,100.81.140.120,100.81.140.122:2185:/hbase


DTS增量数据订阅

image.png

RDS迁移到HBase Mapping例子

[
  {
    "rds_table_name": "hhh_test.phoenix_test",
    "hbase_table_name": "default:phoenix_test",
    "config": {
      "skip_delete": true
    },
    "columns_mapping": [
      {
        "name": "cf1:hhh",
        "src_columns": [
          "id",
          "title"
        ],
        "expression": "{{ concat(title, id) }}"
      },
      {
        "name": "cf1:*",
        "src_columns": [
          "*"
        ]
      }
    ],
    "rowkey_mapping": {
      "src_columns": [
        "id"
      ],
      "expression": "{{ concat('idg', id) }}"
    }
  }
]
AI 代码解读

Mapping说明

参数 描述 必选
rowkey_mapping 定义rowkey的计算方式,src_columns指定用源表哪些列计算rowkey,expression是可选的计算表达式,该计算表达式为jtwig语法,当用户需要对源表的列进行简单计算得到rowkey时可以用
hbase_table_name 目的hbase表名
rds_table_name RDS的表名
columns_mapping 定义源到目的表的转换映射信息,name为hbase列名,需要注意带上列组名,src_columns为源表的列,和rowkey的定义一样,也支持expression表达式
skip_delete 是否跳过删除操作,true为跳过,false为不跳过 否,默认为true,即跳过删除语句
  • 支持简单的表达式,如下
{
    "name": "cf1:address",
     "src_columns": ["address"],
    "expression": "{{ concat('idg', id) }}"
 }
AI 代码解读
  • 支持动态列,没有匹配到的列会走默认的匹配
{
    "name": "cf1:*",
    "src_columns": ["*"]
}
AI 代码解读
  • DML支持情况
操作 支持 备注
INSERT 对应HBase的PUT
UPDATE 对应HBase的PUT
DELETE 用户可以配置是否同步源端的DELETE,默认不同步
  • DDL支持情况
操作 支持 备注
CREATE TABLE 用户在MySQL新建表后,如果需要同步到HBase,需自行在HBase建立对应的表
DROP TABLE
ALTER TABLE ADD COLUMN 同步到默认列组,如果没有默认列组则忽略同步该列
ALTER TABLE DROP COLUMN
ALTER TABLE RENAME COLUMN 新数据同步到默认列组,如果没有默认列组则忽略同步该列,老数据不变
ALTER TABLE MODIFY COLUMN HBase无类型,所以源表列类型变更无影响
所有索引DDL
相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
侧田
+关注
目录
打赏
0
0
0
0
7288
分享
相关文章
SpringBoot 通过集成 Flink CDC 来实时追踪 MySql 数据变动
通过详细的步骤和示例代码,您可以在 SpringBoot 项目中成功集成 Flink CDC,并实时追踪 MySQL 数据库的变动。
189 43
MySQL底层概述—4.InnoDB数据文件
本文介绍了InnoDB表空间文件结构及其组成部分,包括表空间、段、区、页和行。表空间是最高逻辑层,包含多个段;段由若干个区组成,每个区包含64个连续的页,页用于存储多条行记录。文章还详细解析了Page结构,分为通用部分(文件头与文件尾)、数据记录部分和页目录部分。此外,文中探讨了行记录格式,包括四种行格式(Redundant、Compact、Dynamic和Compressed),重点介绍了Compact行记录格式及其溢出机制。最后,文章解释了不同行格式的特点及应用场景,帮助理解InnoDB存储引擎的工作原理。
MySQL底层概述—4.InnoDB数据文件
MySQL和SQLSugar百万条数据查询分页优化
在面对百万条数据的查询时,优化MySQL和SQLSugar的分页性能是非常重要的。通过合理使用索引、调整查询语句、使用缓存以及采用高效的分页策略,可以显著提高查询效率。本文介绍的技巧和方法,可以为开发人员在数据处理和查询优化中提供有效的指导,提升系统的性能和用户体验。掌握这些技巧后,您可以在处理海量数据时更加游刃有余。
41 9
基于SQL Server / MySQL进行百万条数据过滤优化方案
对百万级别数据进行高效过滤查询,需要综合使用索引、查询优化、表分区、统计信息和视图等技术手段。通过合理的数据库设计和查询优化,可以显著提升查询性能,确保系统的高效稳定运行。
18 2
数据管理服务DMS支持MySQL数据库的无锁结构变更
本文介绍了使用Sysbench准备2000万数据并进行全表字段更新的操作。通过DMS的无锁变更功能,可在不锁定表的情况下完成结构修改,避免了传统方法中可能产生的锁等待问题。具体步骤包括:准备数据、提交审批、执行变更及检查表结构,确保变更过程高效且不影响业务运行。
25 2
MySQL进阶突击系列(09)数据磁盘存储模型 | 一行数据怎么存?
文中详细介绍了MySQL数据库中一行数据在磁盘上的存储机制,包括表空间、段、区、页和行的具体结构,以及如何设计和优化行数据存储以提高性能。
【YashanDB 知识库】MySQL 迁移至崖山 char 类型数据自动补空格问题
问题分类】功能使用 【关键字】char,char(1) 【问题描述】MySQL 迁移至崖山环境,字段类型源端和目标端都为 char(2),但应用存储的数据为'0'、'1',此时崖山查询该表字段时会自动补充空格 【问题原因分析】mysql 有 sql_mode 控制,检查是否启用了 PAD_CHAR_TO_FULL_LENGTH SQL 模式。如果启用了这个模式,MySQL 才会保留 CHAR 类型字段的尾随空格,默认没有启动。 #查看sql_mode mysql> SHOW VARIABLES LIKE 'sql_mode'; 【解决/规避方法】与应用确认存储的数据,正确定义数据
一种小资源情况下RDS数据实时同步StarRocks方案
使用一台4C8 G服务器轻松实现2个MySQL实例中通过负责分库分表规则之后的5000多张表的数据实时同步到StarRocks
204 67
mysql怎么查询longblob类型数据的大小
通过本文的介绍,希望您能深入理解如何查询MySQL中 `LONG BLOB`类型数据的大小,并结合优化技术提升查询性能,以满足实际业务需求。
198 6
mysql分页读取数据重复问题
在服务端开发中,与MySQL数据库进行数据交互时,常因数据量大、网络延迟等因素需分页读取数据。文章介绍了使用`limit`和`offset`参数实现分页的方法,并针对分页过程中可能出现的数据重复问题进行了详细分析,提出了利用时间戳或确保排序规则绝对性等解决方案。
155 1
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等