传统应用层逻辑分库DB迁移阿里云DRDS+RDS分布式数据库

本文涉及的产品
云原生数据库 PolarDB 分布式版,标准版 2核8GB
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 随着互联网快速发展,我们的结构化关系数据库在高并发、海量数据的情况下面临单机扩展性问题,首先是单机数据库容量瓶颈,单机数据库在业务高速增长的情况下依赖硬件升级也会到达天花板,并且使用成本变得非常高,而且扩展性的复杂性也是比较高,传统数据库扩容往往意味着服务中断,很难做到业务无感知或者少感知。

随着互联网快速发展,我们的结构化关系数据库在高并发、海量数据的情况下面临单机扩展性问题,首先是单机数据库容量瓶颈,单机数据库在业务高速增长的情况下依赖硬件升级也会到达天花板,并且使用成本变得非常高,而且扩展性的复杂性也是比较高,传统数据库扩容往往意味着服务中断,很难做到业务无感知或者少感知。

    通过数据水平切换来现实分库可以帮助提升数据库整体性能、横向扩展性,切分后有效的降低了单台机器的访问负载,同时最大限度的降低了数据库服务节点宕机后的损失。

    

传统应用业务层逻辑或组件分库实现方式

8947d2a7aac0f0c67547674d0b1bcab3234307bc

                                应用和数据库按业务地域水平拆分     

 26a154bd9b1b4b32a402bb55710a6cd8e9b9bc46

                                应用JDBC驱动层组件封装实现水平拆分

 

传统模式的分库我们看以看到有把系统应用及数据库按业务属性(比如城市、区域、类型等)水平拆分为多个独立分系统,通过在接入层做路由;另外就是在应用通过封装JDBC Driver组件来实现访问分库,类似于通过MySQL的JDBC驱动访问MySQL。传统模式的分库方式虽然使用简单实用容易上手,但是版本难以控制/问题难以追踪排除,并且DB连接仍然和传统数据库一样无法收敛。

 

阿里云DRDS+RDS分布式数据库功能及优势

042267be6f48a9fb6787a06b64f0ab0bc6619caf

基于阿里云DRDS+RDS实现的分布式数据库数据读写存储集群化,不受单机限制,业务使用的连接数也无限制,DRDS中间件服务节点及后端RDS存储服务点都可以支持横向和纵向升级扩展,支持多种拆分模式规则,实现数据水平拆分;兼容 MySQL 协议和大部分 MySQL SQL 语法,无业务侵入式使用读写分离,提供全面的运维和监控能力:

     分库分表:支持 RDS/MySQL 的分库分表,在创建分布式数据库后,只需选择拆分键,DRDS 就可以按照拆分键生成拆分规则,实现数据水平拆分。
透明读写分离:通过使用 RDS 只读实例或者 MySQL 备机实现读写分离,帮助应用解决事务、只读实例或者备机挂掉、指定主备访问等细节问题,对应用无侵入,在 DRDS 控制台即可完成读写分离相关操作。
数据存储平滑扩容:当出现数据存储容量和访问量瓶颈时,DRDS 支持在线存储容量扩展,扩容无需应用改造,扩容进度支持可视化跟踪
服务升降配:DRDS 实例可以通过改变资源数量实现服务能力的弹性扩展。
分布式运维指令集:DRDS 提供独有分布式数据库运维指令集,如 SHOW SLOW、TRACE、SHOW NODE 等指令,快速发现和定位问题。
全局唯一数字序列:DRDS 支持分布式全局唯一且有序递增的数字序列。满足业务在使用分布式数据库下对主键或者唯一键以及特定场景的需求。
数据库账号权限体系:DRDS 支持类单机 MySQL 账号和权限体系,确保不同角色使用的账号操作安全。
分布式事务:DRDS 结合分布式事务套件 GTS,可以支持分布式事务,保证分布式数据库数据一致性。
监控报警:DRDS 支持对核心资源指标和数据库实例指标的实时监控和报警,如实例 CPU、网络 IO、活跃线程等,实时发现资源和性能瓶颈。

 

   

数据迁移-多分库DB数据迁移到DRDS+RDS分布式单个逻辑库

     目前阿里云提供数据迁移工具DTS或数据集成等产品,另外数据集成开源版Datax可以下载部署支持更灵活的方式;

     数据传输(数据传输(Data Transmission)是阿里云提供的一种支持RDBMS(关系型数据库)、NoSQL、OLAP等多种数据源之间数据交互的数据服务。它提供了数据迁移、实时数据订阅及数据实时同步等多种数据传输能力。通过数据传输可实现不停服数据迁移、数据异地灾备、跨境数据同步、缓存更新策略等多种业务应用场景)是阿里云提供的一种支持RDBMS(关系型数据库)、NoSQL、OLAP等多种数据源之间数据交互的数据服务。它提供了数据迁移、实时数据订阅及数据实时同步等多种数据传输能力。通过数据传输可实现不停服数据迁移、数据异地灾备、跨境数据同步、缓存更新策略等多种业务应用场景

Mysql到DRDS数据迁移指导手册: https://help.aliyun.com/document_detail/48470.html

 

数据集成是稳定高效、弹性伸缩的数据同步平台,提供丰富的异构数据源之间数据高速稳定的数据移动及同步能力。丰富的数据源支持:文本存储(FTP/SFTP/OSS/多媒体文件 等)、数据库(RDS/DRDS/MySQL/PostgreSQL 等)、NoSQL(Memcache/Redis/MongoDB/HBase 等)、大数据(MaxCompute/ AnalyticDB/HDFS 等) 、MPP数据库(HybridDB for MySQL等)

迁移工具

部署方式

迁移方式

优势

DTS

PAAS云服务

全量+增量

不停服迁移/白屏化操作

数据集成

PAAS云服务

全量

支持数据库类型丰富/白屏化操作/同步任务管理

Datax

自建部署

全量

灵活,可满足复杂数据迁移场景

 

  

1.     对于传统分库方式往DRDS+RDS的数据迁移,分库数比较少/要求不停服的情况下可以使用DTS,主要是因为每个源分库需要创建一个数据迁移任务,如果分库数较多,那么创建迁移任务的工作量也是很大的;另外对于目标数据源结构变化大,需要源数据库多表合并jion迁移到目标库的场景不适应DTS,可以使用数据集成

2.     分库数较多和需要源数据库多表合并jion迁移到目标库,比如几十上百分库数的,建议使用数据集成或datax来迁移数据;但不支持增量迁移,要实现增量迁移的需要源表有insert或update时间戳

目录
相关文章
|
15天前
|
关系型数据库 Apache 流计算
手把手教你实现 OceanBase 数据到阿里云数据库 SelectDB 内核版 Apache Doris 的便捷迁移|实用指南
本文介绍了如何将数据从 OceanBase 迁移到阿里云数据库 SelectDB 内核版 Apache Doris。提供 3 种数据同步方法 1. 使用 DataX,下载 DataX 并编写配置文件,通过 OceanBaseReader 和 DorisWriter 进行数据迁移。 2. 利用 Apache Doris 的 Catalog功 能,将 OceanBase 表映射到 Doris 并插入数据。 3. 通过Flink CDC,设置 OceanBase 环境,配置 Flink 连接器,实现实时数据同步。
手把手教你实现 OceanBase 数据到阿里云数据库 SelectDB 内核版 Apache Doris 的便捷迁移|实用指南
|
4月前
|
关系型数据库 MySQL 数据库连接
gorm连接mysql数据库以及建表和自动迁移
gorm连接mysql数据库以及建表和自动迁移
39 0
|
5月前
|
SQL 数据库 Python
记Flask-Migrate迁移数据库失败的两个Bug——详解循环导入问题
Flask-Migrate迁移数据库失败的两个Bug 1、找不到数据库:Unknown database ‘***’ 若还没有创建数据库,该迁移工具不会自动创建。你可以使用SQL命令手动创建一个数据库:
46 0
|
7月前
|
存储 SQL 关系型数据库
【面试题精讲】MySQL逻辑架构
【面试题精讲】MySQL逻辑架构
|
5月前
|
关系型数据库 数据库 RDS
如果源数据库和目标数据库中都存在sequence的column且在迁移过程中没有新增的话
如果源数据库和目标数据库中都存在sequence的column且在迁移过程中没有新增的话
30 1
|
7天前
|
SQL 关系型数据库 MySQL
数据库的迁移
数据库的迁移
|
8天前
|
关系型数据库 MySQL 测试技术
【专栏】将 PostgreSQL 迁移到 MySQL 数据库
【4月更文挑战第29天】本文探讨了PostgreSQL数据库向MySQL迁移的过程、挑战及策略。迁移步骤包括评估规划、数据导出与转换、创建MySQL数据库、数据导入。挑战包括数据类型不匹配、函数和语法差异、数据完整性和性能问题。应对策略涉及数据类型映射、代码调整、数据校验和性能优化。迁移后需进行数据验证、性能测试和业务验证,确保顺利过渡。在数字化时代,掌握数据库迁移技能对技术人员至关重要。
|
22天前
|
SQL 自然语言处理 数据库连接
Django ORM的魔力:简化数据库操作与迁移
【4月更文挑战第15天】Django ORM是Django框架的关键部分,提供了一种高级的面向对象方式与数据库交互,简化了手动SQL操作。通过定义Python数据模型,开发者能轻松创建数据库表结构,使用ORM执行查询、添加、修改和删除数据。Django ORM还自动化处理数据库连接、事务和数据类型转换。当模型变化时,Django的迁移工具帮助管理数据库结构的更新。通过这种方式,Django ORM促进了高效、专注于业务逻辑的Web开发。
|
2月前
|
SQL 数据可视化 Apache
阿里云数据库内核 Apache Doris 兼容 Presto、Trino、ClickHouse、Hive 等近十种 SQL 方言,助力业务平滑迁移
阿里云数据库 SelectDB 内核 Doris 的 SQL 方言转换工具, Doris SQL Convertor 致力于提供高效、稳定的 SQL 迁移解决方案,满足用户多样化的业务需求。兼容 Presto、Trino、ClickHouse、Hive 等近十种 SQL 方言,助力业务平滑迁移。
阿里云数据库内核 Apache Doris 兼容 Presto、Trino、ClickHouse、Hive 等近十种 SQL 方言,助力业务平滑迁移
|
3月前
|
存储 关系型数据库 数据库
在进行RDS(Amazon Relational Database Service,亚马逊关系数据库服务)迁移时,兼容性审查
在进行RDS(Amazon Relational Database Service,亚马逊关系数据库服务)迁移时,兼容性审查
23 1