一文读懂:数据复制相关技术
一文读懂:数据复制相关技术
数据复制技术是现代IT系统中不可或缺的一部分,它涉及将数据从一个源复制到一个或多个目标,以实现数据备份、容灾、读写分离等多种功能。本文将深入探讨数据复制的基础知识、不同类型的数据复制技术,以及该技术的未来发展趋势。
数据复制的基础知识
数据复制:是将一组数据从一个数据源拷贝到其它一个或多个数据源。根据计算机网络体系结构(OSI),数据源在IT系统中所处的层级不同,数据复制主要可分为存储硬件层数据复制、操作系统层数据复制和数据库层数据复制。
同步复制:也称为全同步复制,要求每一个I/O写入操作在执行下一个操作处理之前,在源端和目标端都能完成。特点是数据丢失少,会影响生产系统性能,除非目标系统物理上离生产系统比较近。
异步复制:在处理下一个I/O写入操作前,不等待数据复制到目标系统中。特点是复制的数据与源数据有时间差,但这种复制对生产系统性能影响较小。
半同步复制:介于全同步复制与异步复制之间,主库在执行完客户端提交的事务后不是立刻返回给客户端,而是等待至少一个从库接收到并写到relay log中才返回给客户端。相对于异步复制,半同步复制提高了数据的安全性,同时它也造成了一定程度的延迟,这个延迟最少是一个TCP/IP往返的时间。
序列化传输复制:由于网络传输的数据必须是二进制数据,但调用方请求的出入参数都是对象,对象无法直接在网络中传输,所以需要提前把它转成可传输的二进制,并且转换算法是可逆的,而序列化是将对象的状态信息转换为可以存储或传输形式的过程。
上述数据复制方式各有优缺点,也各有其应用场景,从用户角度分析,无论采用哪种复制方式,对于数据的采集,要求尽量不影响数据生产端业务逻辑,保障业务运行和数据收集互不影响,即做到非入侵的数据采集。
系列数据复制技术
数据复制:是将一组数据从一个数据源拷贝到其它一个或多个数据源。根据计算机网络体系结构(OSI),数据源所处层级可分为存储硬件层、操作系统层和数据库层。存储硬件层的数据指存储设备内的所有数据,可能对应多个操作系统层的数据。操作系统层的数据是指由操作系统内部的卷层和文件系统进行组织和管理的数据,可能存储在若干存储设备中。数据库层的数据通常是业务系统及应用程序储存在数据库中、需要随时查询或使用的数据。
根据获取数据的层级不同,数据复制软件也可分为存储硬件层数据复制软件、操作系统层数据复制软件和数据库层数据复制软件。不同层级的数据复制技术在功能、性能上存在一定的差异,各有特点,适用不同的应用场景,具体情况如下:
A.存储硬件层复制技术
存储硬件层复制主要指基于存储磁盘阵列之间的直接镜像,是通过存储系统内建的固件或操作系统,利用IP网络或光纤等传输介质连结,将数据以同步或异步的方式复制到目标端。
存储硬件层复制的优势在于复制工作仅在存储硬件层面进行,与操作系统层无关,因此可以避免服务器的性能开销过大的问题,适用于关键任务和高端交易应用,也是目前最广泛用于容灾场景的数据复制技术之一。存储硬件层复制的劣势在于主要适用于同品牌且同型号的同构存储系统,并需配备低延迟和大带宽的物理链路,成本较高,给异地复制带来极大困难。
B.操作系统层复制技术
根据数据捕获环节的不同,操作系统层复制可以分为字节级复制和块级复制。
字节级复制技术是指对生产服务器文件系统的I/O操作信息进行实时捕获,生成序列化I/O操作日志并发送至目标服务器,操作日志包括I/O操作发生的时间、发起的进程、操作具体针对的文件、文件具体操作的位置以及操作的内容。目标服务器收到I/O操作日志后进行数据的写入,完成数据复制。该技术具有对计算机资源占用小、复制颗粒度细等优势,能够实现高实时性的数据复制,在容灾以及持续数据保护领域有较强的优势。
块级复制技术是指在生产服务器的文件系统之下和磁盘驱动之上的卷层设置驱动模块,实现磁盘数据变化的捕捉。通过对生产服务器磁盘空间进行划分,构建磁盘位图,将发生数据变化的位图信息发送至目标服务器并与前次位图信息进行整合,实现数据的复制。和字节级复制相比,块级复制颗粒度较粗,单次传输数据量较大,适用于具有海量文件的文件系统或者非标准化文件系统的场景,在定时备份领域具有较强的优势。
C.数据库层复制技术
数据库层复制通常采用逻辑复制的方式,将源数据库中的重做日志和归档日志解析出SQL语句后,发送至目标数据库,在目标数据库上重做SQL语句实现数据复制。
逻辑复制的优点在于可以实现不同品牌数据库之间的数据复制,且能实现数据库读写分离、多活,适用于各种数据库数据容灾、高可用、读写分离等场景。
不管是哪种数据复制,都有其优缺点,用户可根据生产环境以及项目规划,选择合适的技术产品以达到目的。
此外,在系列数据复制技术发展历程中,了解不同销售模式的市场发展状况,对于我们全面立体了解数据复制技术及市场发展的帮助也非常大,下面列举市场常见的存储硬件企业、数据库企业和软件企业三大销售模式:
A.存储硬件企业配套销售数据复制软件
存储硬件企业配套销售的数据复制软件最早是作为存储硬件的配套工具,为客户提供增值服务,因此该类产品通常只能够实现同品牌甚至同型号产品之间的复制,缺乏灵活性,对复制的距离、网络带宽有较高要求,该模式的主要目的是提升公司存储硬件的销售机遇。
随着信息系统架构日益复杂,存储硬件的类型多样化,异构存储硬件间的复制需求也逐渐增多。由于存储硬件企业主营业务为存储服务器的研发和销售,并非软件开发,因此通常会选择与第三方软件企业合作,以OEM的方式将数据复制软件与其存储硬件绑定以一体机的形式销售,或作为集成商,向软件企业采购数据复制软件后形成整体解决方案后交付给下游客户。
与第三方软件企业合作的模式下,存储硬件企业和软件企业不构成竞争关系,而是上下游的合作关系。
B.数据库企业配套销售数据复制软件
数据库企业配套销售的数据复制软件最早也同样是作为数据库的配套工具,为客户提供增值服务,因此仅能够实现本公司数据库间的数据复制功能,其主要目的是提升公司数据库产品销售。
随着数据库的类型多样化,异构数据库复制的需求逐渐增多,老牌数据库企业逐渐开始收购第三方数据复制软件企业,增强其数据集成的能力。如2007年IBM收购DataMirror,2009年Oracle收购OGG等等。
但由于数据库企业主营业务并非数据复制软件,对其研发投入相对较少,因此收购部分的业务发展也较缓慢。特别是在近年来数据库类型快速增长的情况下,对异构数据库的兼容情况不甚理想,价格也相对昂贵。
数据复制技术发展趋势
数据爆发式的增长,数据应用场景的不断丰富,数据交易的可持续发展,是推动数据复制技术高速发展的基础条件。在新基建及新一代信息技术等大环境下,数据复制技术也表现出了三大发展趋势。
A.软硬件解耦的数据复制技术
数据复制技术最早是由存储硬件及数据库厂商开发,作为其存储硬件或数据库的辅助工具,通常与存储硬件或数据库绑定,通常只用于本公司的存储硬件或数据库之间的数据复制。其优点在于对本公司的存储或数据库产品的兼容良好、稳定性高、数据复制速度快,但在灵活性和可扩展性上有所欠缺。
随着信息技术的发展,各行业信息系统不断升级和迭代,存储及数据库类型多样化,数据量的提升也带来了分级存储、分级备份的需求,与硬件或数据库绑定的复制技术功能单一、缺乏灵活性等缺点逐渐显现。
软硬件解耦的数据复制技术可以实现不同存储硬件、不同数据库之间的数据复制,在信息系统升级、数据分级存储等场景下具有较强的优势,有望成为未来数据复制行业的重要发展方向。同时,在国内信息系统软硬件安全可信的趋势下,国产存储设备和数据库纷纷涌现,软硬件解耦的数据复制技术也将在信息系统国产化进程中发挥重要作用,加速国产化进程。
B.云端数据复制技术
云计算相较于传统IT架构,具有资源配置效率高、运维难度低、多地多中心布局、业务冗余能力强等优势。随着云计算技术和新型基础设施的逐步成熟,越来越多的企业开始将业务系统、数据应用等迁移上云。数据复制技术也从本地数据复制向云端数据复制发展。
和本地IT架构不同的是,云计算架构将底层硬件设备虚拟化后形成统一的计算资源、存储资源和网络资源,企业在云端的业务系统均统一部署在数据中心的虚拟平台上,因此云端复制和本地复制相比,传输环境存在较大的差异,云端复制的传输具有带宽窄、传输不稳定等特点,对复制技术的压缩能力、断点续传能力提出了更高的要求。
同时,云端复制还需兼顾数据隐私及安全问题,特别是在公有云的场景下,云供应商有较大的权限,可以对数据进行管理。因此在云端复制场景下,数据的脱敏、加密、备份也是云端复制技术需要考虑的重要问题。例如,不要将数据全部存储于云平台,考虑将重要数据在本地进行备份。
C.大数据平台实时复制技术
大数据平台是为了满足大数据的存储、运算、分析、展现的软件平台,主要功能包括数据接入、数据计算和处理、数据存储、查询检索、分析和可视化、安全管理、数据交换和流通等。
大数据平台拥有特殊的文件系统、数据库及数据处理模块,以适配大数据的查询、存储和计算。以Hadoop为例,Hadoop平台采用HDFS分布式文件系统和HBase分布式数据库,通过Hive数据仓库进行数据的存储、查询和分析,与传统的数据库结构存在较大的差别,因此传统的数据库数据复制技术无法实现大数据平台间的数据实时复制,亦无法实现由传统数据库向大数据平台的数据实时复制。
随着大数据技术不断演进和应用持续深化,以数据为核心的大数据产业生态正在加速构建。大数据平台作为基础工具,将随着大数据行业应用的不断深化,得到越来越广泛的应用。同时,传统数据库中的数据也将越来越多地汇聚至大数据平台,进行数据分析挖掘和可视化等,以发挥更大地数据价值。因此,大数据平台实时复制技术是未来数据复制行业的重要发展方向之一。