CN105404474A - 一种异构分布式存储系统的数据迁移方法 - Google Patents
一种异构分布式存储系统的数据迁移方法 Download PDFInfo
- Publication number
- CN105404474A CN105404474A CN201510893938.5A CN201510893938A CN105404474A CN 105404474 A CN105404474 A CN 105404474A CN 201510893938 A CN201510893938 A CN 201510893938A CN 105404474 A CN105404474 A CN 105404474A
- Authority
- CN
- China
- Prior art keywords
- migration
- data
- task
- module
- memory system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种异构分布式存储系统的数据迁移方法,该方法采用MVC模式,具体包括以下步骤:1)View模块发起迁移任务;2)Controller模块接收迁移命令;3)Controller模块开始数据迁移;4)View模块每隔设定时间自动向Controller模块查询迁移进度。与现有技术相比,本发明具有实现了迁移可视化,迁移过程可管理,不中断服务的在线迁移,而且使用简单,无须专业人员即可完成迁移过程,保证数据不丢失等优点。
Description
技术领域
本发明涉及一种数据迁移方法,尤其是涉及一种异构分布式存储系统的数据迁移方法。
背景技术
随着大数据时代的来临,越来越多的分布式存储系统应运而生。当现有的分布式存储系统在实际使用一段时间后,可能会出现各种各样的问题:并发性不高,性能变差,可用空间越来越少,服务器负载越来越高等。有些问题可能可以通过简单的添加磁盘,内存的方式解决,但有些问题可能需要重新设计和改变底层的分布式存储系统来解决。
若两种异构的分布式存储系统数据格式变化不是太大,还可以勉强兼容的情况下,可能可以采用直接格式转换的方式进行数据转换以达到迁移的目的。但如果数据格式不能兼容,则意味着需要将原来的分布式存储系统上面的数据迁移到新的分布式存储系统中。为了解决异构分布式存储系统的数据迁移问题,需要一个研发团队来实现数据迁移的过程,他们需要对两边的分布式系统都十分了解,制定一套完整的数据迁移的解决方案,并进行环境搭建配置,和前期的反复预测试。
分布式存储系统的数据迁移并不是一项简单的工程,通常需要一个专业人员去实施迁移过程,并且需要停止原来的分布式存储系统的服务,也就是只能离线迁移,而且迁移时间和数据量成正比,缺少是否迁移完全的校验,如果迁移过程中,出现误操作或者异常问题,可能会有丢失数据的风险。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种异构分布式存储系统的数据迁移方法,采用MVC模式,实现了迁移可视化,迁移过程可管理,不中断服务的在线迁移,而且使用简单,无须专业人员,即可完成迁移过程,保证数据不丢失。
本发明的目的可以通过以下技术方案来实现:
一种异构分布式存储系统的数据迁移方法,其特征在于,该方法采用MVC模式,具体包括以下步骤:
1)View模块发起迁移任务;
2)Controller模块接收迁移命令;
3)Controller模块开始数据迁移;
4)View模块每隔设定时间自动向Controller模块查询迁移进度。
所述的Controller模块的数据迁移过程为:
首先调用Model模块的读取数据接口,从第一分布式存储系统中读取数据;
然后调用Model模块的写入数据接口,往第二分布式存储系统中写入刚刚读取的数据;
最后保存该条迁移记录,如此循环,直到迁移任务中的数据全部迁移完成,则迁移过程结束。
所述的View模块为带有图形界面的客户端,包括图形界面展示单元、迁移命令发起单元和迁移进度实时查询单元。
所述的View模块运行于Windows系统上。
所述的Controller模块为控制器,包括迁移命令接收单元、数据迁移的调度单元以及迁移过程中的进度记录单元。
所述的Model模块为数据读写模块,包括从第一分布式存储系统中读取数据接口,以及往第二分布式存储系统中写入数据接口。
当多个任务一起迁移时,采用多线程的方式进行任务迁移。
所述的采用多线程的方式进行任务迁移具体为:
Controller模块接收迁移任务之后,生成一个随机的任务ID,开启一个迁移线程,此时View模块发起任务就结束了,View模块根据返回的任务ID去查询该迁移任务的进度;
线程中则执行迁移数据的流程,保存迁移记录也按照不同的ID保存到不同的容器中;
迁移结束后,该任务ID结束,View模块查询到该任务ID结束,不再继续查询任务记录。
当数据迁移过程发生中断,断点处继续迁移包括以下步骤:
A)Controller模块开始运行;
B)读取所有未结束的任务ID;
C)读取未结束的任务ID容器中的迁移记录;
D)根据迁移记录分析出断点;
E)启动迁移线程继续迁移。
与现有技术相比,本发明具有以下优点:
1)通过可视化的图形界面,减少了迁移过程中的人工成本,不需要具备专业知识的人也能够实施数据迁移的过程;
2)通过可视化的图形界面,使得迁移过程可以管理,可以通过拆分很多子迁移任务,使一个迁移任务不会花费时间太长;同时让可以多个互不关联的子任务一起迁移,提高迁移效率;
3)由于保存了迁移记录,可以实现增量迁移(待迁移的数据第一次迁移完成之后,发生了变化,第二次迁移不需要迁移全部数据,只需要迁移增量部分的数据)和断点处续迁(迁移过程因各种异常情况的因素导致中断,迁移数据再次开始时,能从中断的地方继续迁移,而不需要全部再迁移一遍);
4)由于分布式存储系统的读取操作并不会导致分布式存储系统提供的服务中断,该方案还支持在线地在异构分布式存储系统之间数据迁移;同时对原有的分布式存储系统不会构成数据丢失的风险。
附图说明
图1为本发明的整体结构示意图;
图2为异构分布式存储系统的多任务并发迁移流程图;
图3为异构分布式存储系统的断点续迁移数据流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
MVC模式全名为ModelViewController,是模型-视图-控制器的缩写,是一种软件设计典范,是一种业务逻辑、数据,界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。本发明采用MVC模式实现一种异构分布式存储系统的数据迁移方法,则可以让迁移过程可视化。
如图1所示,本发明基于MVC的分布式存储系统的数据迁移方法,包括以下步骤:
1)、View模块发起迁移任务;
2)、Controller模块接收迁移命令之后开始迁移;
3)、Controller模块从View模块读取待迁移数据;
4)、View模块调用第一分布式存储系统的读取数据接口读取数据;
5)、Controller模块往View模块写入待迁移数据;
6)、View模块调用第二分布式存储系统的写入数据接口写入数据;
7)、Controller模块保存迁移记录;
8)、View模块每隔设定时间查询迁移进度。
当多个任务一起迁移时,采用多线程的方式进行任务迁移,各个线程之间的数据迁移不受影响,如图2所示,Controller模块接收迁移任务之后,生成一个随机的任务ID,开启一个迁移线程,此时View模块发起任务就结束了,View模块可以根据返回的任务ID去查询该迁移任务的进度了。线程中则执行迁移数据的流程,保存迁移记录也是按照不同的ID保存到不同的容器中。迁移结束后,该任务ID也就结束了。View模块查询到该任务ID结束,不再继续查询任务记录。
当数据迁移过程发生中断,如图3所示,断点处继续迁移包括以下步骤:
1)、Controller模块开始运行;2)、读取所有未结束的任务ID;3)、读取未结束的任务ID容器中的迁移记录;4)、根据迁移记录分析出断点;5)、启动迁移线程继续迁移。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (9)
1.一种异构分布式存储系统的数据迁移方法,其特征在于,该方法采用MVC模式,具体包括以下步骤:
1)View模块发起迁移任务;
2)Controller模块接收迁移命令;
3)Controller模块开始数据迁移;
4)View模块每隔设定时间自动向Controller模块查询迁移进度。
2.根据权利要求1所述的数据迁移方法,其特征在于,所述的Controller模块的数据迁移过程为:
首先调用Model模块的读取数据接口,从第一分布式存储系统中读取数据;
然后调用Model模块的写入数据接口,往第二分布式存储系统中写入刚刚读取的数据;
最后保存该条迁移记录,如此循环,直到迁移任务中的数据全部迁移完成,则迁移过程结束。
3.根据权利要求1所述的数据迁移方法,其特征在于,所述的View模块为带有图形界面的客户端,包括图形界面展示单元、迁移命令发起单元和迁移进度实时查询单元。
4.根据权利要求1或3所述的数据迁移方法,其特征在于,所述的View模块运行于Windows系统上。
5.根据权利要求1所述的数据迁移方法,其特征在于,所述的Controller模块为控制器,包括迁移命令接收单元、数据迁移的调度单元以及迁移过程中的进度记录单元。
6.根据权利要求2所述的数据迁移方法,其特征在于,所述的Model模块为数据读写模块,包括从第一分布式存储系统中读取数据接口,以及往第二分布式存储系统中写入数据接口。
7.根据权利要求1所述的数据迁移方法,其特征在于,当多个任务一起迁移时,采用多线程的方式进行任务迁移。
8.根据权利要求7所述的数据迁移方法,其特征在于,所述的采用多线程的方式进行任务迁移具体为:
Controller模块接收迁移任务之后,生成一个随机的任务ID,开启一个迁移线程,此时View模块发起任务就结束了,View模块根据返回的任务ID去查询该迁移任务的进度;
线程中则执行迁移数据的流程,保存迁移记录也按照不同的ID保存到不同的容器中;
迁移结束后,该任务ID结束,View模块查询到该任务ID结束,不再继续查询任务记录。
9.根据权利要求8所述的数据迁移方法,其特征在于,当数据迁移过程发生中断,断点处继续迁移包括以下步骤:
A)Controller模块开始运行;
B)读取所有未结束的任务ID;
C)读取未结束的任务ID容器中的迁移记录;
D)根据迁移记录分析出断点;
E)启动迁移线程继续迁移。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510893938.5A CN105404474A (zh) | 2015-12-07 | 2015-12-07 | 一种异构分布式存储系统的数据迁移方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510893938.5A CN105404474A (zh) | 2015-12-07 | 2015-12-07 | 一种异构分布式存储系统的数据迁移方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105404474A true CN105404474A (zh) | 2016-03-16 |
Family
ID=55469982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510893938.5A Pending CN105404474A (zh) | 2015-12-07 | 2015-12-07 | 一种异构分布式存储系统的数据迁移方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105404474A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105930545A (zh) * | 2016-06-29 | 2016-09-07 | 浙江宇视科技有限公司 | 一种文件迁移的方法和装置 |
CN106406765A (zh) * | 2016-09-22 | 2017-02-15 | 江苏赞奇科技股份有限公司 | 基于文件链接的异构分布式存储系统及其文件管理方法 |
CN108616597A (zh) * | 2018-05-09 | 2018-10-02 | 四川华创世纪科技有限公司 | 一种实现服务永不中断的分布式运行方法 |
CN108664496A (zh) * | 2017-03-29 | 2018-10-16 | 腾讯科技(深圳)有限公司 | 数据迁移方法及装置 |
CN109101320A (zh) * | 2018-08-08 | 2018-12-28 | 中科边缘智慧信息科技(苏州)有限公司 | 异构处理器平台融合管理系统 |
CN111866038A (zh) * | 2019-04-25 | 2020-10-30 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 基于异构多副本的分布式存储动态防御系统及方法 |
CN111913663A (zh) * | 2020-07-29 | 2020-11-10 | 星辰天合(北京)数据科技有限公司 | 存储卷在线迁移的方法、装置和存储卷在线迁移的系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1801923A (zh) * | 2005-01-05 | 2006-07-12 | 中央电视台 | 分级存储管理系统 |
WO2009043029A2 (en) * | 2007-09-28 | 2009-04-02 | Xcerion Aktiebolag | Network operating system |
CN101997884A (zh) * | 2009-08-18 | 2011-03-30 | 升东网络科技发展(上海)有限公司 | 分布式存储系统和方法 |
US20120137098A1 (en) * | 2010-11-29 | 2012-05-31 | Huawei Technologies Co., Ltd. | Virtual storage migration method, virtual storage migration system and virtual machine monitor |
CN103414762A (zh) * | 2013-07-23 | 2013-11-27 | 中国联合网络通信集团有限公司 | 云备份方法和装置 |
CN104426952A (zh) * | 2013-08-28 | 2015-03-18 | 华为技术有限公司 | 一种数据迁移方法、设备及系统 |
CN104424283A (zh) * | 2013-08-30 | 2015-03-18 | 阿里巴巴集团控股有限公司 | 一种数据迁移的系统和数据迁移的方法 |
-
2015
- 2015-12-07 CN CN201510893938.5A patent/CN105404474A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1801923A (zh) * | 2005-01-05 | 2006-07-12 | 中央电视台 | 分级存储管理系统 |
WO2009043029A2 (en) * | 2007-09-28 | 2009-04-02 | Xcerion Aktiebolag | Network operating system |
CN101997884A (zh) * | 2009-08-18 | 2011-03-30 | 升东网络科技发展(上海)有限公司 | 分布式存储系统和方法 |
US20120137098A1 (en) * | 2010-11-29 | 2012-05-31 | Huawei Technologies Co., Ltd. | Virtual storage migration method, virtual storage migration system and virtual machine monitor |
CN103414762A (zh) * | 2013-07-23 | 2013-11-27 | 中国联合网络通信集团有限公司 | 云备份方法和装置 |
CN104426952A (zh) * | 2013-08-28 | 2015-03-18 | 华为技术有限公司 | 一种数据迁移方法、设备及系统 |
CN104424283A (zh) * | 2013-08-30 | 2015-03-18 | 阿里巴巴集团控股有限公司 | 一种数据迁移的系统和数据迁移的方法 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105930545A (zh) * | 2016-06-29 | 2016-09-07 | 浙江宇视科技有限公司 | 一种文件迁移的方法和装置 |
CN105930545B (zh) * | 2016-06-29 | 2019-07-16 | 浙江宇视科技有限公司 | 一种文件迁移的方法和装置 |
CN106406765A (zh) * | 2016-09-22 | 2017-02-15 | 江苏赞奇科技股份有限公司 | 基于文件链接的异构分布式存储系统及其文件管理方法 |
CN106406765B (zh) * | 2016-09-22 | 2019-06-04 | 江苏赞奇科技股份有限公司 | 基于文件链接的异构分布式存储系统及其文件管理方法 |
CN108664496A (zh) * | 2017-03-29 | 2018-10-16 | 腾讯科技(深圳)有限公司 | 数据迁移方法及装置 |
CN108616597A (zh) * | 2018-05-09 | 2018-10-02 | 四川华创世纪科技有限公司 | 一种实现服务永不中断的分布式运行方法 |
CN108616597B (zh) * | 2018-05-09 | 2021-06-15 | 四川华创世纪科技有限公司 | 一种实现服务永不中断的分布式运行方法 |
CN109101320A (zh) * | 2018-08-08 | 2018-12-28 | 中科边缘智慧信息科技(苏州)有限公司 | 异构处理器平台融合管理系统 |
CN109101320B (zh) * | 2018-08-08 | 2022-06-17 | 中科边缘智慧信息科技(苏州)有限公司 | 异构处理器平台融合管理系统 |
CN111866038A (zh) * | 2019-04-25 | 2020-10-30 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 基于异构多副本的分布式存储动态防御系统及方法 |
CN111913663A (zh) * | 2020-07-29 | 2020-11-10 | 星辰天合(北京)数据科技有限公司 | 存储卷在线迁移的方法、装置和存储卷在线迁移的系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105404474A (zh) | 一种异构分布式存储系统的数据迁移方法 | |
CN104468226A (zh) | 基于Nginx的配置方法及装置 | |
WO2016176807A1 (zh) | 一种dram刷新方法、装置和系统 | |
CN105868093B (zh) | 一种日志写入方法及服务端 | |
CN105721831A (zh) | 一种基于多进程架构的视频监控客户端设计方法 | |
CN102110167A (zh) | 数控系统中实现日志信息管理的方法 | |
CN111767169B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN104104705A (zh) | 分布式存储系统的接入方法和设备 | |
CN109558089A (zh) | 一种数据迁移方法、装置、设备及可读存储介质 | |
CN102981801A (zh) | 一种本地总线数据位宽的转换方法及装置 | |
CN110753040B (zh) | 一种请求处理的方法及装置 | |
CN102929619A (zh) | 一种跨硬件平台的过程自动化软件开发系统 | |
CN111078371B (zh) | 基于Flowable流程引擎的支路任务重建方法及装置 | |
CN102868739B (zh) | 应用于ip san集群存储系统的交换设备 | |
CN103761156A (zh) | 一种针对文件系统的在线修复方法 | |
CN115687469A (zh) | 一种基于DataX的DAG数据的任务调度方法和系统 | |
CN105487850A (zh) | 一种基于组件工厂的全自动模块集成系统及方法 | |
CN105095149A (zh) | 一种片上系统参数的批处理方法和装置 | |
CN103593148A (zh) | 一种cdf侧离线话单数据快速存取的方法及装置 | |
CN104573107A (zh) | 一种网络安全应用NoSQL数据库与关系型数据库融合接口方法 | |
CN103049291B (zh) | 一种存储设备测试环境的配置方法 | |
CN109460360B (zh) | 一种增强ios自动化测试输入稳定性和兼容性的方法 | |
CN112434013A (zh) | 数据表迁移方法、装置、电子设备及存储介质 | |
CN102929677B (zh) | 多数字信号处理器的加载系统及方法 | |
CN104932925A (zh) | 一种电网监控系统实时库更新方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160316 |
|
RJ01 | Rejection of invention patent application after publication |