数据迁移方法论

文章目录

  • 一. 什么是数据迁移
    • 1. 数据迁移与数据整合
    • 2. 数据迁移和数据复制
    • 3. 数据迁移的主要类型
      • 1. Storage migration
      • 2. 数据库迁移
      • 3. 应用迁移
      • 4. 数据中心迁移
      • 5. Business process migration(业务流程迁移)
      • 6. 云迁移
  • 二. 数据迁移方法
    • 1.大爆炸式数据迁移
    • 2. 滴水式数据迁移
  • 三. 数据迁移过程
    • 1. 规划阶段
    • 2. 数据审计和数据剖析:采用数字化工具
    • 3. 数据备份:在移动之前保护你的数据
    • 4. 迁移设计:hire an ETL specialist
    • 5. 执行:专注于业务目标和客户满意度。
    • 6. 数据迁移测试:跨阶段检查数据质量
    • 7. 迁移后审计:校验关键结果
  • 四. 数据迁移黄金法则

一. 什么是数据迁移

一般来说,数据迁移是将现有的历史数据转移到新的存储、系统或文件格式的过程。这个过程并不像听起来那么简单。它涉及大量的准备工作和迁移后的活动,包括规划、创建备份、质量测试以及结果验证。迁移的结束时间是在关闭旧系统、数据库或环境时。

如下图,描述了需要进行数据迁移的情况
在这里插入图片描述

通常情况下,数据迁移是较大项目的一部分,例如:

  1. 传统软件的现代化或替换,
  2. 系统和存储容量的扩展,
  3. 引入一个与现有应用程序并行运行的附加系统,
  4. 转向集中式数据库,消除数据孤岛并实现互操作性,
  5. 将IT基础设施迁移到云端

1. 数据迁移与数据整合

与处理公司内部信息的迁移不同,数据整合是将来自公司内外多个来源的数据合并为单一视图的过程。
数据迁移是一个单向的过程,一旦所有信息被传输到目标位置,该过程就结束了。相比之下,集成可以是一个持续的过程,涉及流式传输实时数据和在系统之间共享信息。

 

2. 数据迁移和数据复制

在数据迁移中,一旦数据完全转移到新位置,最终您会放弃旧系统或数据库。而在数据复制中,您周期性地将数据传输到目标位置,而不会删除或丢弃其源数据。因此,它有一个起点,但没有明确定义的完成时间。(也就是说数据迁移后并不代表结束)

数据复制可以是数据集成过程的一部分。此外,如果源存储被废弃,它可能会变成数据迁移。

本文,我们只讨论数据迁移 —— 一次性的、单向的过程,就像搬家一样,离开旧居。

 

3. 数据迁移的主要类型

有六种常用的数据迁移类型。例如,数据传输的特定情况可能既属于数据库迁移又属于云迁移,或者同时涉及应用程序和数据库迁移。

在这里插入图片描述

 

1. Storage migration

存储迁移发生在淘汰过时设备的情况下。这涉及将数据从一个物理媒介转移到另一个物理媒介,或者从物理环境转移到虚拟环境。如下举例:

  • 将数据从纸质文件转移到数字文档
  • 从硬盘驱动器(HDD)转移到速度更快、更耐用的固态硬盘(SSD)
  • 从大型机计算机转移到云存储。

迁移场景

这种转变的主要原因是对技术升级的迫切需求,而不是缺乏存储空间。对于大型系统来说,迁移过程可能需要数年时间。比如说,全球第二大的全球分销系统(GDS)Sabre公司已经将其软件和数据从大型机计算机迁移到虚拟服务器上已经超过十年了。预计其迁移周期将在2023年完全完成。

 

2. 数据库迁移

数据库不仅仅是存储数据的地方。它提供了一种特定的方式来组织数据,并通常通过数据库管理系统(DBMS)进行控制。

因此,大多数情况下,数据库迁移意味着

  • 升级到DBMS的最新版本(所谓的同构迁移)
  • 从不同提供商切换到新的DBMS —— 例如,从MySQL切换到PostgreSQL或从Oracle切换到MSSQL(所谓的异构迁移)。
    后一种情况比前一种情况更困难,特别是如果目标和源数据库支持不同的数据结构。当你不得不从传统数据库。迁移数据时,这个任务就变得更具挑战性了。

 

3. 应用迁移

当一家公司更换企业软件供应商时 —— 例如,一家酒店实施了新的物业管理系统,或者一家医院替换了其传统的电子健康记录系统 —— 这需要将数据从一个计算环境转移到另一个计算环境。这里的关键挑战在于,旧的和新的基础架构可能具有独特的数据模型,并且使用

 

4. 数据中心迁移

数据中心是组织用于存储其关键应用程序和数据的物理基础设施。更准确地说,它是一个有着服务器、网络、交换机和其他IT设备的黑暗房间。因此,数据中心迁移可以指不同的事情:从将现有计算机和电缆迁移到其他场所,到将所有数字资产,包括数据和业务应用程序,迁移到新的服务器和存储设备。

 

5. Business process migration(业务流程迁移)

这种类型的迁移是由并购、业务优化或重组驱动的,以应对竞争挑战或进入新市场。所有这些变化可能需要将包括客户、产品和业务操作数据在内的业务应用程序和数据库迁移到新环境中。

 

6. 云迁移

云迁移是一个流行的术语,它涵盖了所有上述情况,如果它们涉及将数据从本地环境迁移到云端或在不同的云环境之间迁移。根据Gartner的预测,到2024年,云端将吸引超过IT支出的45%,并主导着日益增长的IT决策数量。

根据数据量和源地和目标地点之间的差异,迁移可能需要30分钟到几个月甚至几年的时间。项目的复杂性和停机成本将定义如何确切地展开该过程。

 

二. 数据迁移方法

选择适当的迁移方法是确保项目能够顺利进行,没有严重延迟的第一步。

1.大爆炸式数据迁移

优点:成本较低,复杂度较低,所需时间较短,所有更改一次性完成

缺点:高风险的昂贵失败,需要停机时间

在大爆炸式场景中,您在相对较短的时间窗口内,通过一次操作将所有数据资产从源环境迁移到目标环境。

当数据移动并进行转换时,系统需要停机,来满足目标架构的数据迁移。迁移通常在法定假日或周末进行,假定此时客户不使用应用程序。

大爆炸式方法允许在最短可能的时间内完成迁移,并节省了同时在旧系统和新系统之间工作的麻烦。然而,在大数据时代,即使是中小型公司也会积累大量信息,而网络和API网关的吞吐量提供的能力是有限的。所以必须从一开始就考虑到这种约束(网络与网关)。

小结:大爆炸式方法适用于小型公司或处理少量数据的业务。对于必须全天候可用的关键任务应用程序,它不适用。

 

2. 滴水式数据迁移

优点:不太容易出现意外故障,无需停机时间

缺点:成本更高,需要更多时间,需要额外的工作和资源来保持两个系统运行

它将整个过程分解为子迁移,每个子迁移都有自己的目标、时间表、范围和质量检查。
滴水式迁移涉及在旧系统和新系统之间并行运行,并逐步转移数据。因此,无停机时间,客户因为全天候应用程序可用而感到满意。但是,迭代策略需要更多的时间,并给项目增加了复杂性。迁移团队必须跟踪已传输的数据,并确保用户可以在两个系统之间切换以访问所需的信息。

执行滴水式迁移的另一种方法是将旧应用程序完全保持运行,直到迁移结束。因此,您的客户将像往常一样使用旧系统,并且只有在所有数据成功加载到目标环境后才切换到新应用程序。然而,这种情况并不会让您的工程师的工作变得更轻松。他们必须确保数据在创建或更改后在两个平台之间实时同步。换句话说,源系统中的任何更改都必须触发目标系统的更新。

小结
滴水式迁移是中大型企业的正确选择,这些企业无法承受长时间的停机时间,但具有足够的专业知识来应对技术挑战。

 

三. 数据迁移过程

不管使用什么方法,数据迁移过程存在如下几个阶段:

  • 规划(Planning)
  • 数据审计和剖析(Data Auditing and Profiling)
  • 数据备份(Data Backup)
  • 迁移设计(Migration Design)
  • 执行(Execution)
  • 测试(Testing)
  • 迁移后审计(Post-Migration Audit)

在这里插入图片描述

下面,我们将概述在每个阶段您应该采取的措施,以便将数据转移到新位置,而不会出现损失、严重延迟或/和破坏性预算超支。

 

1. 规划阶段

创建数据迁移计划并持续进行数据迁移是一个复杂的过程,它始于对现有数据资产的评估,并精心设计迁移计划。
规划阶段可分为四个步骤。

  • 精炼范围。这一步的关键目标是筛选出任何多余的数据,并定义运行系统所需的最小信息量。因此,需要与用户进行咨询,对源系统和目标系统进行高层次分析。
  • 评估源系统和目标系统。对当前系统操作需求的评估,以及如何将其适应新环境的方式。
  • 设定数据标准。能够在迁移过程的每个阶段发现问题区域,并在迁移后阶段避免出现意外问题(失败后如何重试或回滚)。
  • 估算预算和设定实际时间表。在范围被精炼和系统被评估之后,选择大爆炸式或滴水式方法、估算项目所需资源、设定时间表和截止日期会更容易。根据Oracle的估算,企业规模的数据迁移项目平均持续半年到两年。

 

2. 数据审计和数据剖析:采用数字化工具

该阶段用于检查和清理待迁移数据的全部范围。其目的是在迁移之前检测可能的冲突,识别数据质量问题,并消除重复和异常。
审计和剖析是繁琐、耗时且劳动密集的活动,因此在大型项目中应采用自动化工具。一些常见的解决方案包括 Open Studio for Data Quality、Data Ladder、SAS Data Quality、Informatica Data Quality 和 IBM InfoSphere QualityStage。

 

3. 数据备份:在移动之前保护你的数据

从技术上讲,这个阶段并不是强制性的。然而,数据迁移的最佳实践要求在执行实际迁移之前对您计划移动的内容创建完整备份。这样,在发生意外的迁移失败和数据丢失时,您将获得额外的保护层。

 

4. 迁移设计:hire an ETL specialist

迁移设计阶段规定了迁移和测试规则,澄清了验收标准,并分配了迁移团队成员的角色和责任。

尽管有多种技术可用于数据迁移,但抽取、转换和加载(ETL)是首选的技术。如果您的项目涉及大数据量和复杂数据流,那么雇佣一个ETL开发人员或者一个专门负责ETL流程的软件工程师是合适的。在这个阶段,ETL开发人员或数据工程师会创建用于数据转换的脚本,或者选择并定制第三方ETL工具。ETL的一个重要组成部分是数据映射。在理想情况下,这不仅需要ETL开发人员,还需要了解源系统和目标系统的系统分析员,以及了解待移动数据价值的业务分析员。

这个阶段的持续时间主要取决于编写ETL程序脚本或获取适当的自动化工具所需的时间。

 

5. 执行:专注于业务目标和客户满意度。

在“一锅端”(big bang)方案中,迁移过程不会超过几天。另一方面,如果数据以逐步迁移的方式转移,执行时间会更长,但正如之前提到的,可以实现零停机时间和关键性失败风险的最低可能性。

如果您选择了分阶段的方法,请确保迁移活动不会妨碍正常的系统运作。此外,您的迁移团队必须与业务部门沟通,以确定何时推出每个子迁移,并针对哪个用户组进行推出。

 

6. 数据迁移测试:跨阶段检查数据质量

事实上,测试并不是一个独立的阶段,而是在设计、执行和迁移后阶段都进行。如果您采取了逐步迁移的方法,应该及时测试每一部分迁移的数据,以便及时修复问题。
频繁的测试确保数据元素安全地传输,并在进入目标基础架构时具有高质量和与需求一致性。可参考ETL process。

 

7. 迁移后审计:校验关键结果

在将迁移后的数据投入生产之前,应该与关键业务用户验证结果。这个阶段确保信息已被正确传输和记录。在进行迁移后审计之后,旧系统就可以退休了。

 

四. 数据迁移黄金法则

虽然每个数据迁移项目都是独特的,各自都面临着不同的挑战,但一些常见的黄金规则可能有助于公司安全地转移其宝贵的数据资产,避免关键的延误。

  1. 将数据迁移视为揭示和修复数据质量问题的机会。在迁移数据时,设定高标准以改善数据和元数据。
  2. 聘请数据迁移专家并指派专门的迁移团队来执行项目。
  3. 确定需要迁移的最小数据量。
  4. 在编写映射脚本之前,对所有源数据进行概要分析。
  5. 给设计阶段分配充足的时间,因为它对项目成功有很大的影响。
  6. 不要急于关闭旧平台。有时,第一次尝试的数据迁移会失败,需要回滚并重新尝试。
  7. 数据迁移通常被视为一种必要的恶,而不是增值过程。。将迁移视为一项重要的创新项目,值得特别关注,这已经是成功的一半了。

参考:

https://www.altexsoft.com/blog/data-migration/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/419903.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

说一说kong日志级别

Kong官网:The Platform Powering the API World | Kong Inc. Kong Gateway:Kong Gateway | Kong Docs Kong Admin API:Admin API - Kong Gateway - v3.4.x | Kong Docs Kong 企业版社区:API Community for Developers and Industr…

Freesia项目目录结构

目录结构 前端目录: (目录结构来自layui-vue-admin) src文件下 api(前端请求后端服务的路由)assert(一些内置或必要的资源文件)layouts(全局框架样式组件)router&…

OPPO打响AI手机第一枪

明敏 发自 凹非寺 量子位 | 公众号 QbitAI 2024开年,AI趋势依旧高歌猛进。 一边,Sora爆火成为现象级AIGC应用,带动AI再度成为春节后全民热议的第一话题。另一边,手机厂商开始大举All in AI,“放弃传统智能手机”、“…

071:vue+cesium 实现下雨效果

第071个 点击查看专栏目录 本示例的目的是介绍如何在vue+cesium中实现下雨效果,这里使用着色器来实现实例特效。 直接复制下面的 vue+cesium源代码,操作2分钟即可运行实现效果. 文章目录 示例效果配置方式示例源代码(共120行)着色代码实现心得:专栏目标示例效果

基于java+springboot动物检疫信息管理系统设计和实现

基于java SSM springboot动物检疫信息管理系统设计和实现 博主介绍:多年java开发经验,专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 央顺技术团队 Java毕设项目精品实战案例《1000套》 欢迎点赞 收藏 ⭐留言 文…

文件基础和文件fd

文章目录 预备知识C语言的文件接口系统调用文件fd 正文开始前给大家推荐个网站,前些天发现了一个巨牛的 人工智能学习网站, 通俗易懂,风趣幽默,忍不住分享一下给大家。 点击跳转到网站。 预备知识 我们平时说文件就是说文件里…

【前端素材】推荐优质在线通用果蔬商城电商网页eStore平台模板(附源码)

一、需求分析 1、系统定义 通用果蔬网站是指专门提供各类果蔬产品展示和销售的在线平台。它将不同种类的新鲜水果、蔬菜、干果、坚果等聚集在一起,为消费者提供方便、快捷的购物渠道。 2、功能需求 通用果蔬网站是指专门提供各类果蔬产品展示和销售的在线平台。…

关键对话_

关键对话 https://www.bilibili.com/video/BV1Vh4y1E7sY 关键对话,是那些让你觉得很艰难,同时又非常重要的谈话 关键对话三个特征 1、对话双方的观点有很大差距, 比如说你和你父母观点差异很大,父母觉得到了一定年龄就该结婚啊…

C++:非静态成员默认初始化

C11之前只有常静态成员变量才能进行默认初始化,其它变量初始化时总要进行繁琐的过程 class A{int a; public:A():a(10){} };C11开始支持非静态成员的默认初始化,默认初始化和初始化参数列表同时初始化一个变量时会使用初始化参数列表,不进行…

IIS发布PHP网站字体404解决办法

最近在使用 IIS 发布 PHP 网站时,我遇到了一个前端问题,即字体库文件 404 错误。这个问题的根本原因是 IIS 未能正确识别字体文件类型,导致浏览器在加载页面时无法正确获取所需字体资源,进而触发了404错误。这样的问题会导致网站页…

自动生成多个有规律的python列表

问大家一些问题,平常在我们练习时如果在没有给定数据的情况下,手敲这样一个DataFrame 对象是不是很麻烦,而且容易出错,我想了一个办法让其自动生成,这样就省事省力。 首先这些数据都是有规则的依次递增的例如&#xf…

【Sql server】假设有三个字段a,b,c 以a和b分组,如何查询a和b唯一,但是c不同的记录

欢迎来到《小5讲堂》,大家好,我是全栈小5。 这是《Sql Server》系列文章,每篇文章将以博主理解的角度展开讲解, 特别是针对知识点的概念进行叙说,大部分文章将会对这些概念进行实际例子验证,以此达到加深对…

电脑桌面便签哪个好,好用的电脑桌面便签推荐

在如今信息爆炸的时代,人们的工作和生活节奏越来越快,记事和备忘变得尤为重要。而电脑桌面便签作为一种方便快捷的记录工具,备受广大用户青睐。那么,电脑桌面便签哪个好,哪个更加出色呢? 作为一名人事专员…

【Linux系统化学习】信号的保存

目录 阻塞信号 信号处理常见方式概览 信号的其他相关概念 在内核中的表示 sigset_t 信号集操作函数 sigprocmask函数 sigpending函数 信号的捕捉 内核如何实现信号的捕捉 sigaction函数 可重入函数 volatile 阻塞信号 信号处理常见方式概览 当信号来临时&#x…

从模型到复合AI系统的转变

2023年,大型语言模型(LLM)吸引了所有人的注意力,它可以通过提示来执行通用任务,例如翻译或编码。这自然导致人们将模型作为AI应用开发的主要成分而密切关注,所有人都在想新的LLM将带来什么能力。然而,随着越来越多的开发者开始使用LLM构建,我们认为这种关注正在迅速改变:最先进…

使用docker安装otter

1、使用docker安装otter首先要把docker装好 2、使用docker把镜像拉进去 拉镜像的过程中注意使用docker load -i imagename命令。如果使用docker import imagename命令拉镜像,在安装过程中会报以下错误: 网上查资料说是需要使用docker ps -a --no-trunc…

【Windows】打开ftp服务器上的文件夹时发生错误,请检查是否有权限

【Windows】打开ftp服务器上的文件夹时发生错误,请检查是否有权限 ftp协议有两种工作方式:port方式和pasv方式,中文意思为主动式和被动式。 port(主动)方式的连接过程是:客户端向服务器的ftp端口&#xf…

CCF推荐会议|截稿倒计时 计算机图形学与多媒体领域3-4月份截稿资讯!

会议之眼精心汇总了以下CCF推荐会议之计算机十大领域之一:计算机图形学与多媒体领域!2024年度3-4月份会议截稿日期将近!会议之眼致力于为科研学者第一时间获取最新学术资讯!助力广大学者保持领先优势!愿科研人员们在专…

【YOLO v5 v7 v8 小目标改进】BiFormer:从局部空间特征到高效的全局空间特征

BiFormer:从局部空间特征到高效的全局空间特征 提出背景BiFormer 结构 小目标涨点YOLO v5 魔改YOLO v7 魔改YOLO v8 魔改 提出背景 论文:https://arxiv.org/pdf/2303.08810.pdf 代码:https://github.com/rayleizhu/BiFormer 问题: 传统的卷…

【Leetcode每日一题】二分查找 - 搜索插入位置(难度⭐)(21)

1. 题目解析 Leetcode链接:35. 搜索插入位置 这个问题的理解其实相当简单,只需看一下示例,基本就能明白其含义了。 核心在于找到给定目标值要在给定数组下标插入的下标并返回,设计一个O(logn)的算法。 2. 算法原理 a. 分析插入…
最新文章