从MySQL到TiDB:业务高速增长与数据库选型趋势
最近《哪吒2》全球票房持续高涨,目前已成功跻身全球影史票房榜前八。票房从上映到破 100 亿大关仅用了 16 天。
那么,16 天的时间,能够完成多少套 MySQL 集群的扩容、数据重平衡任务呢?如果选择 TiDB,那么这项任务的耗时可以压缩到分钟级。本文一起来探讨一下 MySQL 和 TiDB 的架构选型。
MySQL 数据库至今仍是全球最受欢迎的开源关系型数据库,广泛应用于中小企业、传统行业和开源项目。LAMP (Linux + Apache + MySQL + PHP) 架构凭借其稳定性和成熟度,成为众多中小型项目或网站的首选方案。MySQL 的高可用架构相对传统,常见架构有单机、主从、分库分表等。虽然 MySQL 提供了 MySQL NDB Cluster 和 MySQL InnoDB Cluster 集群架构,但其在可扩展性、弹性扩容、性能表现等方面的瓶颈仍是可预见的,这些限制在企业业务面对高速发展和数据量激增的情况下愈发明显。
TiDB 是一款 HTAP 云原生分布式数据库产品,随着企业业务高速发展,数据量井喷式增长,TiDB 的水平扩容、强一致性特性在大数据规模场景中表现出众。TiDB 兼容 MySQL 协议、MySQL 常用功能和 MySQL 生态,应用无需或者修改少量代码即可从 MySQL 迁移到 TiDB,极大的降低了迁移成本和风险。
如果你正面临 TB 级以上数据计算处理的需求,并且正考虑将数据从 MySQL 或其他数据库迁移到性能更强、扩展性更好的数据库,那么,TiDB 无疑是你的理想选择。(题外话,理想汽车也在用 TiDB)
(数据来源:https://asktug.com/t/topic/1028116/23?u=shawnyan)
从 MySQL 迁移到 TiDB 的技术优势
TiDB 的架构旨在处理大规模数据和高并发性,这使其在可扩展性和性能方面比 MySQL 更具优势。TiDB 采用分布式存储引擎 TiKV,分布式计算引擎 TiDB Server 以及列式存储引擎 TiFlash,通过向集群添加更多节点即可轻松实现水平扩展。这种扩展能力使 TiDB 能够处理海量数据和高事务率,且不会显著降低性能。相比之下,MySQL 的可扩展性较为局限,且维护不便,尤其是在数据量和并发性要求极高的场景中。
在数据一致性方面,TiDB 实现了 Raft 共识算法,来确保集群中所有节点的数据一致性。数据在多个节点之间复制,并且对数据的任何更改都会以一致的方式传播。这种强一致性对于需要高数据完整性和可靠性的应用程序(例如金融系统和电子商务平台)至关重要。虽然 MySQL Group Replication 或者 MySQL Galera Cluster 虽然也可以保证强一致性,但以性能损耗为代价。而 TiDB 节点和 TiKV 节点在将节点数扩展到 10 个后,性能偏差系数仍保持较小的值,真正做到了性能与节点数的线性增长。
很多企业或用户对存储过程的迁移有所顾虑,一般来说,并不建议在 TiDB 或 MySQL 中使用存储过程,但是如果既存系统中已经大量使用且需要迁移,建议使用 TiDB 企业版(平凯数据库),它是支持存储过程的。或者,通过迁移工具将存储过程转化为应用代码,以此来降低迁移成本。
迁移到 TiDB 对业务发展与成本收益的影响
迁移到 TiDB 可以对业务发展产生积极影响。TiDB 改进的可扩展性和性能,可以帮助企业处理更大量的数据和更高级别的并发性,从而支持更多的用户和交易,帮助企业增加收入、扩展市场份额。例如,在春节期间出现的“小红书”热,TiDB 帮助其轻松应对流量高峰。
在成本方面,虽然 TiDB 基础设施的初始投资可能高于 MySQL,但从长远看,成本节省潜力巨大。TiDB 的分布式架构可以更有效地利用主机资源,TiDB 的资源管控特性 可以帮助用户充分利用 TiDB 集群资源,可将百套 MySQL 集群迁入一套 TiDB 集群,进而降低维护代价,节省成本。
MySQL 迁移到 TiDB 的工具
TiDB 生态提供了非常丰富的工具,以下是一些常用的数据迁移和管理工具:
TiDB Data Migration (DM)
这是一个由PingCAP开发的综合工具,专门用于从MySQL兼容数据库(如MySQL、MariaDB和Amazon Aurora)迁移和复制数据到TiDB。DM支持全量数据迁移和增量数据复制,能够处理MySQL binlog中的DDL和DML事件。它还提供了binlog事件过滤、表列表的允许和阻止、以及可定制的复制规则等功能。DM适用于各种部署环境,包括物理服务器和虚拟化环境,支持多种操作系统。
TiDB Lightning
用于将数据快速导入 TiDB 的工具,特别适用于大规模数据的导入。它支持从 Dumpling 导出的 SQL 文件或 CSV 文件中导入数据,并提供了高效的数据导入机制。TiDB Lightning 可以在导入过程中自动分割和合并数据,以提高导入速度。其优势在于能够处理大规模数据导入,适合数据迁移和初始化场景。
Dumpling
用于从 TiDB 导出数据的工具,支持将数据导出为 SQL 文件或 CSV 文件。它适用于需要将数据从 TiDB 迁移到其他数据库或进行数据分析的场景。Dumpling 提供了灵活的导出选项,可以根据需要选择导出的表和数据格式。它的优势在于简单易用,适合小规模数据的快速导出。
工具 | 场景 | 数据量 | 迁移类型 |
---|---|---|---|
DM | 小数据集,增量变更 | 小于 1 TB | 全量+增量 |
Lighting | 大数据量,全量快速迁移 | 大于 1 TB | 全量 |
Dumpling | 数据导出 SQL 或 CSV 格式 | 任何大小 | 导出(使用 Lighting 导入) |
除了 TiDB 提供的工具之外,还有很多第三方工具,如 mydumper, apt-dts, DataX, OGG 等。
更多关于 MySQL 迁移 TiDB 的内容参阅:
-
https://docs.pingcap.com/zh/tidb/stable/migration-overview
-
https://asktug.com/t/topic/1000053
-
https://tidb.net/blog/231f2752
Have a nice day ~
🌻 往期精彩 ▼
-- / END / --
👉 这里可以找到我
-
微信公众号: @少安事务所
-
ITPUB: @少安事务所
-
TiDB 专栏: @ShawnYan
-
PGFans: @严少安
-
墨天轮: @严少安
👉 这里有得聊
如果对国产基础软件(操作系统、数据库、中间件)感兴趣,可以加群一起聊聊。 关注微信公众号:少安事务所,后台回复[群],即可看到入口。
如果这篇文章为你带来了灵感或启发,就请帮忙点『赞』or『在看』or『转发』吧,感谢!ღ( ´・ᴗ・` )~
本文分享自微信公众号 - 少安事务所(mysqloffice)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
快来报名 | KWDB 演示环境限时免费开放
熟悉我们的伙伴都知道, KWDB 是一款开源的分布式多模数据库,依托千万级设备接入、百万级数据秒级写入、亿级数据秒级读取、多维聚合查询等高效处理能力,KWDB 扎根 AIoT 场景,力求为包括物联网、能源电力、车联网、智慧政务、IT 运维等产业领域的用户提供更高的数据处理与管理效率。 用过才知道 最近收到不少社区开发者发来的需求,想要看看 KWDB 的演示环境。这不,小编马不停蹄的为大家安排到一波云上免费资源,零成本即可拥有丝滑的 KWDB 使用体验。体验过程中你可以 get: ✅ 感受时序数据的存储与查询 通过直观的界面和工具,近距离了解到时序数据如何在数据库中存储和查询,以及如何通过不同的查询语法和函数来满足复杂的数据分析需求。 详情链接>> https://www.kaiwudb.com/kaiwudb_docs/#/oss_v2.1.0/kaiwudb-developer-center/ts-db/ts-db-mgmt.html ✅ 体验数据迁移与同步 数据迁移是我们在选型数据库中非常重要的一个参考指标,在演示环境中大家可以体验将现有的时序数据迁移到 KWD...
- 下一篇
数据无界、湖仓无界,Apache Doris 湖仓一体典型场景实战指南(下篇)
导读: 湖仓一体是将数据湖和数据仓库的优势相结合的数据管理系统。Apache Doris 结合自身特性,提出了【数据无界】和【湖仓无界】核心理念。上篇文章已介绍了 Apache Doris 湖仓一体完整方案,本文将聚焦典型应用场景,进一步深入,帮助读者更好地理解和应用 Apache Doris 湖仓一体。 在数据驱动决策的时代,湖仓一体架构以统一存储、统一计算、统一管理的创新形式,补齐了传统数据仓库和数据湖的短板,逐步成为企业大数据解决方案新的标准。 在上一篇文章中,全面介绍了湖仓一体演进历程以及 Apache Doris 湖仓一体解决方案,具体查阅:(上篇)从 0 到 1 构建湖仓体系, Apache Doris 湖仓一体解决方案全面解读。本文将进一步深入,聚焦于 湖仓分析加速、多源联邦分析、湖仓数据处理 这三个典型场景,分享 Apache Doris 湖仓一体方案的最佳实践。 通过这三个场景的实践,展示 Apache Doris 如何帮助企业快速响应业务需求,提升数据处理和分析的效率。同时,我们也将结合实际场景,提供详细的使用指南,帮助读者更好地理解和应用 Apache Doris...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- 2048小游戏-低调大师作品
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS关闭SELinux安全模块
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS7安装Docker,走上虚拟化容器引擎之路
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库