查看原文
其他

时间紧急!数据库迁移怎么才能更快?

老鱼 老鱼笔记 2022-06-18





问数据库迁移需要多长时间,就好像问去度假需要多少钱一样。答案,不同情况下,会有很大差异。那么,到底哪些因素会影响数据迁移所需时间长短?这是我们本文要探讨的。


01

什么是数据库迁移?


数据库迁移是从一个数据库到另一个数据库的任何类型的数据移动。

 

数据库迁移有多种形式。可能是同类数据库的迁移,比如,将一台服务器上的MySQL数据库的数据迁移到另外一台服务器上的MySQL数据库上。

 

也有可能是不同类型数据库的迁移。比如将数据从MySQL迁移到Cassandra,这种情况下,你可能需要做数据转换。

 

在其他情况下,数据库迁移可能意味着将数据从一种类型的存储介质(如磁带)移动到另外一种类型的存储介质(如硬盘)。在备份系统和生产系统之间移动数据,这种类型的数据库迁移很常见。

 

数据库迁移的数据通道可以有多种。目前,通过网络连接传输数据是最常见的方法,你也可以在同一系统内将数据从一个磁盘移动到另一个磁盘,或者使用便携式磁盘(如移动硬盘)在服务器之间传输数据。


02

数据库迁移需要多长时间?


哪些因素会影响迁移时间?在规划数据库迁移时,你需要了解三个主要因素:

 

1、你需要传多少数据。更多的数据意味着更长的迁移时间。


2、你如何移动数据。你是通过网络传输数据吗?如果这样,你的带宽是多少?如果是从一个磁盘复制到另外一个磁盘,那么磁盘读写I/O是多少?(注意,理论上的速度通常很难实现。)


3、需要转换多少数据,以及如何简化流程来执行数据转换。你需要进行的转换越多,数据转换手动操作流程越多,数据库迁移就越慢。在必须将数据从一种类型的数据库迁移到另外一种类型的情况下尤其如此。

 

要优化数据库迁移速度,请注意对这些因素的控制。


03

数据转换与数据库迁移速度


在文章结束前,让我们重新审视上面列出的第三个因素:数据转换。在很多情况下,如果要提高数据库迁移速度,数据转换是最重要的因素。

 

数据转换是大多数情况下你能控制的唯一因素。你通常是无法控制传输的数据量,你也无法控制传输数据的方式,只能使用可用的传输方式。

 

但你可以控制的是数据转换方式及流程的自动化程度。理想状态下,你将利用数据转换工具,允许数据从一种类型的数据库无缝迁移到另外一种类型的数据库,而不需要人进行手动转换工作。

END

延伸阅读

七个尖锐的问题,听OceanBase如何回应

亚马逊CTO:我们为什么提供这么多数据库?

通关TPC-DS,中国数据库领域首破纪录!

性能神化,聊聊Exadata 的“七宗罪”

Hadoop将死?Cloudera CEO怒怼Gartner

5320字长文!招商银行数据库架构探秘

为何云计算厂商都在搞数据库?

阿里云发布第三代数据库POLARDB的背后

泰山之巅对话•Oracle数据库掌门人

系列:知名互联网公司都在使用哪些数据库? 

四大行、股份制、城商行都在用什么数据库?

如何针对PB级大数据做毫秒级在线分析?

AWS CEO嘲讽甲骨文:没新公司会用Oracle

MongoDB 4.0支持多文档ACID意味着什么?

公众号

laoyubiji

老鱼,10年企业级老编一枚,采访过上百位CEO/CTO,你若有故事,欢迎联系!

欢迎订阅老鱼笔记

✬如果你喜欢这篇文章,欢迎分享到朋友圈✬

评论功能现已开启,灰常接受一切形式的吐槽和赞美☺

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存