CN114064563A - 一种基于对象存储的数据迁移方法和服务器 - Google Patents
一种基于对象存储的数据迁移方法和服务器 Download PDFInfo
- Publication number
- CN114064563A CN114064563A CN202010751959.4A CN202010751959A CN114064563A CN 114064563 A CN114064563 A CN 114064563A CN 202010751959 A CN202010751959 A CN 202010751959A CN 114064563 A CN114064563 A CN 114064563A
- Authority
- CN
- China
- Prior art keywords
- file
- storage system
- metadata
- data
- target storage
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/119—Details of migration of file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/214—Database migration support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及存储技术领域,公开了一种基于对象存储的数据迁移方法和服务器。方法包括:创建存储池,将源存储系统挂载到目标存储系统;将源存储系统中文件的元数据写入目标存储系统;根据写入的元数据以及预先设置的数据迁移规则将源存储系统中文件的数据迁移至目标存储系统,不但能够提高数据迁移效率,而且能够降低出错概率。
Description
技术领域
本发明涉及存储技术领域,特别是涉及一种基于对象存储的数据迁移方法和服务器。
背景技术
在信息化建设过程中,随着技术的发展,原有信息系统不断被功能更强大的新系统所取代。对于原有信息系统中的数据则需要迁移到新系统,数据迁移是数据系统整合中保证系统平滑升级和更新的关键部分。
传统的数据迁移方法分为两种,一种为通过工具迁移,另一种为通过手工录入。工具迁移根据实际情况,开发出一个迁移工具,通过该工具将系统A中的数据抽取后并做转换,使得系统B能够识别出系统A的数据。然后在将转换后的数据写入系统B中,从而达到数据迁移的目的。但该方法有一个明显的缺点:工具的开发往往需要根据系统A中数据的具体形态做特殊的开发,开发出的工具存在种种局限性。
而传统的手工录入主要有运维人员参与,将存储系统A中数据手工导出,然后再手工导入到系统B中。该方法对系统A中原有数据没有特殊要求,只要能够导出即可。但是该方法需要投入大量的人力、物力,同时也极易出错。
发明内容
基于此,有必要针对上述技术问题,提供一种基于对象存储的数据迁移方法和服务器,不但能够提高数据迁移效率,而且能够降低出错概率。
第一方面,本发明实施例提供了一种基于对象存储的数据迁移方法,所述方法包括:
创建存储池,将源存储系统挂载到目标存储系统;
将所述源存储系统中文件的元数据写入所述目标存储系统;
根据写入的所述元数据以及预先设置的数据迁移规则将所述源存储系统中文件的数据迁移至所述目标存储系统。
在一些实施例中,所述将所述源存储系统中文件的元数据写入所述目标存储系统,包括:
获取所述源存储系统的目录结构和文件数量;
根据所述文件数量和所述目录结构分配N个工作线程,其中,N为大于等于1的整数;
通过所述工作线程获取所述源存储系统中文件的元数据;
通过所述工作线程将所述源存储系统中文件的元数据写入所述目标存储系统。
在一些实施例中,所述将所述源存储系统中文件的元数据写入所述目标存储系统之后,所述方法还包括:
判断所述文件的元数据是否写入成功;
若所述文件的元数据写入失败,则将文件添加至失败链表;
判断分配的文件是否全部处理完成;
若分配的文件未全部处理完成,则执行通过所述工作线程获取所述源存储系统中文件的元数据的步骤;
若分配的文件全部处理完成,则判断是否还有需要分配的目录;
若还有需要分配的目录,则执行根据所述文件数量和所述目录结构分配N个工作线程的步骤;
若没有需要分配的目录,则处理所述失败链表中的文件。
在一些实施例中,所述方法还包括:
若所述文件的元数据写入成功,则执行判断分配的文件是否全部处理完成的步骤。
在一些实施例中,所述根据写入的所述元数据以及预先设置的数据迁移规则将所述源存储系统中文件的数据迁移至所述目标存储系统,包括:
获取文件的元数据,其中,所述元数据携带有文件的存储类型;
根据所述文件的元数据判断所述文件是否为非目标存储类型;
若为是,则从所述元数据中获取文件信息,其中,所述文件信息包括文件的名称、大小以及路径;
根据所述文件信息获取文件的数据;
将所述文件的数据写入所述目标存储系统。
在一些实施例中,所述将所述文件的数据写入所述目标存储系统之后,所述方法还包括:
判断所述文件的数据是否写入成功;
若为是,则更新文件的元数据;
若为否,则重试;
若重试失败,则给出提示信息。
在一些实施例中,所述更新文件的元数据包括:
将所述文件类型修改为目标存储类型;以及,
删除文件在源存储系统中的路径。
在一些实施例中,所述方法还包括:
获取读取文件请求;
根据所述请求获取文件的元数据;
根据所述文件的元数据确定文件的存储类型;
根据所述文件的存储类型读取数据;
将所述数据返回给客户端。
在一些实施例中,所述根据所述文件的元数据确定文件的存储类型,包括:
根据所述文件的元数据判断文件的存储类型,其中,所述文件的存储类型包括目标存储类型和非目标存储类型;
若所述文件的存储类型为目标存储类型,则从所述目标存储系统中读取文件的数据;
若所述文件的存储类型为非目标存储类型,则根据所述文件的元数据确定文件在源存储系统中的绝对路径;
根据所述文件的绝对路径从所述源存储系统中读取文件的数据。
第二方面,本发明实施例还通过了一种服务器,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述方法步骤。
与现有技术相比,本发明的有益效果是:区别于现有技术的情况,本发明实施例中的基于对象存储的数据迁移方法和服务器,通过创建存储池,将源存储系统挂载到目标存储系统,然后将所述源存储系统中文件的元数据写入所述目标存储系统,接着根据写入的所述元数据以及预先设置的数据迁移规则将所述源存储系统中文件的数据迁移至目标存储系统,不但能够提高数据迁移效率,而且能够降低出错概率。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是本发明一个实施例中基于对象存储的数据迁移方法的应用场景示意图;
图2是本发明一个实施例中基于对象存储的数据迁移方法的流程示意图;
图3是本发明一个实施例中将元数据写入目标存储系统的流程示意图;
图4是本发明一个实施例中将数据迁移至目标存储系统的流程示意图;
图5是本发明一个实施例中判断元数据是否写入成功的流程示意图;
图6是本发明一个实施例中获取文件数据的流程示意图;
图7是本发明一个实施例中从不同存储系统获取数据的流程示意图;
图8是本发明一个实施例中基于对象存储的数据迁移装置的结构示意图;
图9是本发明一个实施例中服务器的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,如果不冲突,本发明实施例中的各个特征可以相互结合,均在本发明的保护范围之内。另外,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。再者,本发明所采用的“第一”、“第二”、“第三”等字样并不对数据和执行次序进行限定,仅是对功能和作用基本相同的相同项或相似项进行区分。
本发明实施例提供的基于对象存储的数据迁移方法,可以应用于图1所示的应用环境中,该应用环境包括客户端和服务器,服务器上运行有源存储系统和目标存储系统,客户端用于从服务器上的系统读取文件。图1示例性的示出了客户端110和服务器120进行通信。其中,客户端110可以但不限于个人计算机、笔记本电脑、智能手机以及平板电脑等。服务器120可以但不限于机架式服务器、刀片式服务器、塔式服务器或者机柜式服务器等,也可以是由若干台服务器组成的服务器集群,或者是一个云计算服务中心。
需要说明的是,本发明实施例提供的方法还可以进一步的拓展到其他合适的应用环境中,而不限于图1所述的应用环境。在实际的应用过程中,该应用环境可以包括更多或者更少的客户端和服务器。
如图2所示,本发明实施例提供了一种基于对象存储的数据迁移方法,所述方法由服务器执行,所述方法包括:
步骤202,创建存储池,将源存储系统挂载到目标存储系统。
在本发明实施例中,根据源存储系统中存储的文件IP以及路径创建存储池,存储池创建完成后,源存储系统会被挂载到目标存储系统上。然后将创建的存储池关联到目标存储系统的bucket桶上,其中,bucket为存储文件的容器。示例性的,源存储系统例如可以为NAS网络附属存储系统,目标存储系统可以为对象存储系统。
步骤204,将所述源存储系统中文件的元数据写入所述目标存储系统。
具体地,当存储池关联到目标存储系统的bucket桶后,将所述源存储系统中文件的元数据写入所述目标存储系统,写入完成后,可根据写入的元数据来访问源存储系统中文件的数据。进一步地,可以将元数据写入目标存储系统的bucket桶。
在其他一些实施例中,作为步骤204的一种实现方式,参照图3所示的流程图,包括以下步骤:
步骤302,获取所述源存储系统的目录结构和文件数量。
具体地,由于事先将源存储系统挂载到目标存储系统,因此,目标存储系统可以访问源存储系统,并且可获取源存储系统的目录结构和文件数量。其中,目录结构不包含子目录,文件数量为总的文件个数。
步骤304,根据所述文件数量和所述目录结构分配N个工作线程,其中,N为大于等于1的整数。
为了提高文件的元数据写入速度,因此采用线程方式进行处理。具体地,启动分配线程,将总的文件数量按照源存储系统的目录结构,分配N个工作线程,其中,N为大于等于1的整数。
步骤306,通过所述工作线程获取所述源存储系统中文件的元数据。
每个目录分配完成后,工作线程开始执行对应操作。具体地,每个工作线程获取源存储系统中文件的元数据,其中,元数据携带有文件名称、文件大小以及文件在源存储系统中的文件路径等信息。
步骤308,通过所述工作线程将所述源存储系统中文件的元数据写入所述目标存储系统。
具体地,当工作线程获取到对应的文件的元数据后,工作线程构建S3请求,将文件的元数据写入所述目标存储系统,即将文件的名称、文件大小以及文件在源存储系统中的文件路径等信息写入目标存储系统。由此能够保证目标存储系统中的目录结构和源存储系统的目录结构保持一致。其中,S3请求为基于S3协议的写请求。
步骤206,根据写入的所述元数据以及预先设置的数据迁移规则将所述源存储系统中文件的数据迁移至所述目标存储系统。
在本发明实施例中,数据迁移规则可以理解为生命周期规则,数据迁移规则可根据实际情况灵活设置。根据写入的所述元数据以及预先设置的数据迁移规则将所述源存储系统中文件的数据迁移至目标存储系统。在数据迁移的过程中,目标存储系统始终对外提供服务,且目标存储系统不需要从源存储系统读取任何数据,进而目标存储系统的性能不会受到影响。
在其他一些实施例中,作为步骤206的一种实现方式,参照图4所示的流程图,包括以下步骤:
步骤402,获取文件的元数据,其中,所述元数据携带有文件的存储类型。
步骤404,根据所述文件的元数据判断所述文件是否为非目标存储类型。
在本发明实施例中,文件的存储类型包括目标存储类型和非目标存储类型。由于文件的元数据携带有文件的存储类型,因此,通过获取文件的元数据即可确定文件的存储类型是否为非目标存储类型。
步骤406,若为是,则从所述元数据中获取文件信息,其中,所述文件信息包括文件的名称、大小以及路径。
若文件的存储类型为非目标存储类型,则直接从元数据中获取文件信息,具体可以获取文件在源存储系统中的名称、大小以及文件在源存储系统中的路径等。
步骤408,根据所述文件信息获取文件的数据。
步骤410,将所述文件的数据写入所述目标存储系统。
具体地,根据文件在源存储系统中的名称、大小以及文件在源存储系统中的路径等信息,从源存储系统中获取文件的数据部分,然后将获取到的文件的数据写入目标存储系统。
在一些实施例中,如图4所示,所述方法除包括图4所示的步骤外,还包括:
步骤412,若所述文件的存储类型不是非目标存储类型,则结束。
在其他一些实施例中,所述将所述文件的数据写入目标存储系统之后,还需判断文件的数据是否写入成功,当文件的数据写入成功,则需要更新文件的元数据,即将所述文件类型修改为目标存储类型;以及,删除文件在源存储系统中的路径。如果文件的数据写入失败,则重试,如果重试依旧失败,则给出提示信息。
在本发明实施例中,通过创建存储池,将源存储系统挂载到目标存储系统,然后将所述源存储系统中文件的元数据写入所述目标存储系统,接着根据写入的所述元数据以及预先设置的数据迁移规则将所述源存储系统中文件的数据迁移至目标存储系统,不但能够提高数据迁移效率,而且能够降低出错概率。
在一些实施例中,如图5所示,所述将所述源存储系统中文件的元数据写入所述目标存储系统之后,所述方法还包括:
步骤502,判断所述文件的元数据是否写入成功。
具体地,当元数据写入结束后,目标存储系统会给工作线程返回消息,工作线程根据该返回消息可以确定文件的元数据是否写入成功。其中,返回消息中可以携带有写入成功或者失败的标识,以使工作线程根据该标识确定元数据是否写入成功。
步骤504,若所述文件的元数据写入失败,则将文件添加至失败链表。
如果文件的元数据写入失败,则将文件添加到失败链表,等待重试。
步骤506,判断分配的文件是否全部处理完成。
具体地,工作线程判断本次分配的文件是否都处理完成。
步骤508,若分配的文件未全部处理完成,则执行通过所述工作线程获取所述源存储系统中文件的元数据的步骤。
具体地,若分配的文件未全部处理完成,则继续获取所述源存储系统中文件的元数据,直到分配的文件全部处理完成。
步骤510,若分配的文件全部处理完成,则判断是否还有需要分配的目录。
具体地,若工作线程将本次分配的文件全部处理完成,则分配线程会判断是否还有目录需要分配。
步骤512,若还有需要分配的目录,则执行根据所述文件数量和所述目录结构分配N个工作线程的步骤。
具体地,若还有需要分配的目录,则循环执行分配操作,即分配线程则根据文件数量和所述目录结构分配N个工作线程。
步骤514,若没有需要分配的目录,则处理所述失败链表中的文件。
具体地,如果没有需要分配的目录,则处理失败链表中的文件,将之前执行失败的文件进行重试操作。若经过重试依旧未能写入元数据的文件,则获取文件的路径等信息,并将所述信息输出。
在一些实施例中,所述方法还包括:若所述文件的元数据写入成功,则执行判断分配的文件是否全部处理完成的步骤。
具体地,如果文件的元数据写入成功,则执行判断分配的文件是否全部处理完成的步骤。
在一些实施例中,可以理解的是,在数据迁移的过程中,若存在新增的文件,即所述新增的文件预先并没有存储在源存储系统中,则将所述新增的文件直接写入目标存储系统。进一步地,先将新增文件的数据部分写入目标存储系统,其次再将新增文件的元数据写入目标存储系统。
在其他一些实施例中,如图6所示,所述方法还包括:
步骤602,获取读取文件请求。
具体地,客户端发送读取文件请求给服务器,服务器上的目标存储系统获取客户端发送的读取文件请求。
步骤604,根据所述请求获取文件的元数据。
根据所述读取文件请求从目标存储系统中获取文件的元数据。
步骤606,根据所述文件的元数据确定文件的存储类型。
具体地,文件的存储类型包括目标存储类型和非目标存储类型。具体地,由于文件的元数据携带有文件的存储类型,因此可根据文件的元数据判断文件的存储类型。
步骤608,根据所述文件的存储类型读取数据。
具体地,确定了文件的存储类型后,根据文件的存储类型读取数据。
在其他一些实施例中,作为步骤608的一种实现方式,参照图7所示的流程图,包括以下步骤:
步骤702,若所述文件的存储类型为目标存储类型,则从所述目标存储系统中读取文件的数据。
具体地,如果文件的存储类型为目标存储类型,则直接从目标存储系统中读取文件的数据。
步骤704,若所述文件的存储类型为非目标存储类型,则根据所述文件的元数据确定文件在源存储系统中的绝对路径。
步骤706,根据所述文件的绝对路径从所述源存储系统中读取文件的数据。
具体地,如果文件的存储类型为非目标存储类型,则根据文件的元数据确定文件在源存储系统中的绝对路径,进而根据文件的绝对路径从源存储系统中读取数据。
步骤610,将所述数据返回给客户端。
具体地,最后由目标存储系统将数据返回给客户端。
相应的,本发明实施例还提供了一种基于对象存储的数据迁移装置800,如图8所示,包括:
创建模块802,用于创建存储池,将源存储系统挂载到目标存储系统;
写入模块804,用于将所述源存储系统中文件的元数据写入所述目标存储系统;
迁移模块806,用于根据写入的所述元数据以及预先设置的数据迁移规则将所述源存储系统中文件的数据迁移至目标存储系统。
在本发明实施例中,通过创建模块创建存储池,将源存储系统挂载到目标存储系统,然后通过使用模块将所述源存储系统中文件的元数据写入所述目标存储系统,最后通过迁移模块根据写入的所述元数据以及预先设置的数据迁移规则将所述源存储系统中文件的数据迁移至目标存储系统,不但能够提高数据迁移效率,而且能够降低出错概率。
需要说明的是,上述基于对象存储的数据迁移装置可执行本发明实施例所提供的基于对象存储的数据迁移方法,具备执行方法相应的功能模块和有益效果,未在基于对象存储的数据迁移装置实施例详尽描述的技术细节,可参考本发明实施例提供的基于对象存储的数据迁移装置。
图9是本发明提供的服务器的硬件结构示意图。如图9所示,该服务器900包括:
一个或者多个处理器902以及存储器904,图9中以一个处理器902为例。
处理器902和存储器904可以通过总线或者其他方式连接,图9中以通过总线连接为例。
存储器904作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的基于对象存储的数据迁移方法对应的程序指令/模块(例如,图8所示的创建模块802、写入模块804以及迁移模块806)。处理器902通过运行存储在存储器904中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述实施例中的基于对象存储的数据迁移方法。
存储器904可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据基于对象存储的数据迁移装置使用所创建的数据等。此外,存储器904可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器904可选包括相对于处理器902远程设置的存储器,这些远程存储器可以通过网络连接至基于对象存储的数据迁移装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个模块存储在所述存储器904中,当被所述一个或者多个服务器执行时,执行上述任意方法实施例中的基于对象存储的数据迁移方法,例如,执行以上描述的图2中的方法步骤202至步骤206,图3中的方法步骤302至步骤308,图4中的方法步骤402至步骤412,图5中的方法步骤502至步骤514,图6中的方法步骤602至步骤610,图7中的方法步骤702至步骤706;实现图8中的模块802至806的功能。
本发明实施例还提供了一种计算机程序产品,包括存储在非易失性计算机可读存储介质上的计算程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时时,使所述计算机执行:图2中的方法步骤202至步骤206,图3中的方法步骤302至步骤308,图4中的方法步骤402至步骤412,图5中的方法步骤502至步骤514,图6中的方法步骤602至步骤610,图7中的方法步骤702至步骤706。
上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。
本发明实施例的客户端以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
本发明实施例的服务器以多种形式存在,包括但不限于:
(1)塔式服务器
一般的塔式服务器机箱和我们常用的PC机箱差不多,而大型的塔式机箱就要粗大很多,总的来说外形尺寸没有固定标准。
(2)机架式服务器
机架式服务器是由于满足企业的密集部署,形成的以19英寸机架作为标准宽度的服务器类型,高度则从1U到数U。将服务器放置到机架上,并不仅仅有利于日常的维护及管理,也可能避免意想不到的故障。首先,放置服务器不占用过多空间。机架服务器整齐地排放在机架中,不会浪费空间。其次,连接线等也能够整齐地收放到机架里。电源线和LAN线等全都能在机柜中布好线,可以减少堆积在地面上的连接线,从而防止脚踢掉电线等事故的发生。规定的尺寸是服务器的宽(48.26cm=19英寸)与高(4.445cm的倍数)。由于宽为19英寸,所以有时也将满足这一规定的机架称为“19英寸机架”。
(3)刀片式服务器
刀片服务器是一种HAHD(High Availability High Density,高可用高密度)的低成本服务器平台,是专门为特殊应用行业和高密度计算机环境设计的,其中每一块“刀片”实际上就是一块系统母板,类似于一个个独立的服务器。在这种模式下,每一个母板运行自己的系统,服务于指定的不同用户群,相互之间没有关联。不过可以使用系统软件将这些母板集合成一个服务器集群。在集群模式下,所有的母板可以连接起来提供高速的网络环境,可以共享资源,为相同的用户群服务。
(4)云服务器
云服务器(Elastic Compute Service,ECS)是一种简单高效、安全可靠、处理能力可弹性伸缩的计算服务。其管理方式比物理服务器更简单高效,用户无需提前购买硬件,即可迅速创建或释放任意多台云服务器。云服务器的分布式存储用于将大量服务器整合为一台超级计算机,提供大量的数据存储和处理服务。分布式文件系统、分布式数据库允许访问共同存储资源,实现应用数据文件的IO共享。虚拟机可以突破单个物理机的限制,动态的资源调整与分配消除服务器及存储设备的单点故障,实现高可用性。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施方式的描述,本领域普通技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种基于对象存储的数据迁移方法,其特征在于,所述方法包括:
创建存储池,将源存储系统挂载到目标存储系统;
将所述源存储系统中文件的元数据写入所述目标存储系统;
根据写入的所述元数据以及预先设置的数据迁移规则将所述源存储系统中文件的数据迁移至所述目标存储系统。
2.根据权利要求1所述的方法,其特征在于,所述将所述源存储系统中文件的元数据写入所述目标存储系统,包括:
获取所述源存储系统的目录结构和文件数量;
根据所述文件数量和所述目录结构分配N个工作线程,其中,N为大于等于1的整数;
通过所述工作线程获取所述源存储系统中文件的元数据;
通过所述工作线程将所述源存储系统中文件的元数据写入所述目标存储系统。
3.根据权利要求2所述的方法,其特征在于,所述将所述源存储系统中文件的元数据写入所述目标存储系统之后,所述方法还包括:
判断所述文件的元数据是否写入成功;
若所述文件的元数据写入失败,则将文件添加至失败链表;
判断分配的文件是否全部处理完成;
若分配的文件未全部处理完成,则执行通过所述工作线程获取所述源存储系统中文件的元数据的步骤;
若分配的文件全部处理完成,则判断是否还有需要分配的目录;
若还有需要分配的目录,则执行根据所述文件数量和所述目录结构分配N个工作线程的步骤;
若没有需要分配的目录,则处理所述失败链表中的文件。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若所述文件的元数据写入成功,则执行判断分配的文件是否全部处理完成的步骤。
5.根据权利要求4所述的方法,其特征在于,所述根据写入的所述元数据以及预先设置的数据迁移规则将所述源存储系统中文件的数据迁移至所述目标存储系统,包括:
获取文件的元数据,其中,所述元数据携带有文件的存储类型;
根据所述文件的元数据判断所述文件是否为非目标存储类型;
若为是,则从所述元数据中获取文件信息,其中,所述文件信息包括文件的名称、大小以及路径;
根据所述文件信息获取文件的数据;
将所述文件的数据写入所述目标存储系统。
6.根据权利要求5所述的方法,其特征在于,所述将所述文件的数据写入所述目标存储系统之后,所述方法还包括:
判断所述文件的数据是否写入成功;
若为是,则更新文件的元数据;
若为否,则重试;
若重试失败,则给出提示信息。
7.根据权利要求6所述的方法,其特征在于,所述更新文件的元数据包括:
将所述文件类型修改为目标存储类型;以及,
删除文件在源存储系统中的路径。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述方法还包括:
获取读取文件请求;
根据所述请求获取文件的元数据;
根据所述文件的元数据确定文件的存储类型;
根据所述文件的存储类型读取数据;
将所述数据返回给客户端。
9.根据权利要求8所述的方法,其特征在于,所述根据所述文件的元数据确定文件的存储类型,包括:
根据所述文件的元数据判断文件的存储类型,其中,所述文件的存储类型包括目标存储类型和非目标存储类型;
根据所述文件的存储类型读取数据,包括:
若所述文件的存储类型为目标存储类型,则从所述目标存储系统中读取文件的数据;
若所述文件的存储类型为非目标存储类型,则根据所述文件的元数据确定文件在源存储系统中的绝对路径;
根据所述文件的绝对路径从所述源存储系统中读取文件的数据。
10.一种服务器,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010751959.4A CN114064563A (zh) | 2020-07-30 | 2020-07-30 | 一种基于对象存储的数据迁移方法和服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010751959.4A CN114064563A (zh) | 2020-07-30 | 2020-07-30 | 一种基于对象存储的数据迁移方法和服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114064563A true CN114064563A (zh) | 2022-02-18 |
Family
ID=80227190
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010751959.4A Pending CN114064563A (zh) | 2020-07-30 | 2020-07-30 | 一种基于对象存储的数据迁移方法和服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114064563A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220092210A1 (en) * | 2020-09-18 | 2022-03-24 | International Business Machines Corporation | Policy-based data migration |
CN115269495A (zh) * | 2022-06-18 | 2022-11-01 | 知学云(北京)科技股份有限公司 | 一种基于aPaaS平台的业务方案元数据处理方法及系统 |
CN115309703A (zh) * | 2022-10-10 | 2022-11-08 | 联想凌拓科技有限公司 | 文件读取方法及装置、电子设备及存储介质 |
CN116860166A (zh) * | 2023-07-04 | 2023-10-10 | 北京云宽志业网络技术有限公司 | 数据迁移方法、装置、电子设备及存储介质 |
WO2023241115A1 (zh) * | 2022-06-13 | 2023-12-21 | 华为技术有限公司 | 数据迁移方法及相关装置 |
CN117591497A (zh) * | 2024-01-18 | 2024-02-23 | 中核武汉核电运行技术股份有限公司 | 一种核电历史数据跨系统迁移方法 |
CN117591495A (zh) * | 2024-01-18 | 2024-02-23 | 中核武汉核电运行技术股份有限公司 | 一种用于核电历史数据迁移的数据存储方法及系统 |
-
2020
- 2020-07-30 CN CN202010751959.4A patent/CN114064563A/zh active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220092210A1 (en) * | 2020-09-18 | 2022-03-24 | International Business Machines Corporation | Policy-based data migration |
WO2023241115A1 (zh) * | 2022-06-13 | 2023-12-21 | 华为技术有限公司 | 数据迁移方法及相关装置 |
CN115269495A (zh) * | 2022-06-18 | 2022-11-01 | 知学云(北京)科技股份有限公司 | 一种基于aPaaS平台的业务方案元数据处理方法及系统 |
CN115269495B (zh) * | 2022-06-18 | 2023-08-08 | 知学云(北京)科技股份有限公司 | 一种基于aPaaS平台的业务方案元数据处理方法及系统 |
CN115309703A (zh) * | 2022-10-10 | 2022-11-08 | 联想凌拓科技有限公司 | 文件读取方法及装置、电子设备及存储介质 |
CN115309703B (zh) * | 2022-10-10 | 2023-01-03 | 联想凌拓科技有限公司 | 文件读取方法及装置、电子设备及存储介质 |
CN116860166A (zh) * | 2023-07-04 | 2023-10-10 | 北京云宽志业网络技术有限公司 | 数据迁移方法、装置、电子设备及存储介质 |
CN117591497A (zh) * | 2024-01-18 | 2024-02-23 | 中核武汉核电运行技术股份有限公司 | 一种核电历史数据跨系统迁移方法 |
CN117591495A (zh) * | 2024-01-18 | 2024-02-23 | 中核武汉核电运行技术股份有限公司 | 一种用于核电历史数据迁移的数据存储方法及系统 |
CN117591495B (zh) * | 2024-01-18 | 2024-05-03 | 中核武汉核电运行技术股份有限公司 | 一种用于核电历史数据迁移的数据存储方法及系统 |
CN117591497B (zh) * | 2024-01-18 | 2024-05-03 | 中核武汉核电运行技术股份有限公司 | 一种核电历史数据跨系统迁移方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114064563A (zh) | 一种基于对象存储的数据迁移方法和服务器 | |
JP7221975B2 (ja) | マルチマスタ分散データ管理システムにおけるトランザクション処理 | |
US9372880B2 (en) | Reclamation of empty pages in database tables | |
CN113296792B (zh) | 存储方法、装置、设备、存储介质和系统 | |
US9742860B2 (en) | Bi-temporal key value cache system | |
US10242014B2 (en) | Filesystem with isolated independent filesets | |
CN102938784A (zh) | 应用于分布式存储系统中的数据存储方法和系统 | |
US10642809B2 (en) | Import, export, and copy management for tiered object storage | |
CN106777394B (zh) | 一种集群文件系统 | |
CN111684437B (zh) | 按时间顺序排序的错位更新键-值存储系统 | |
JP2022076457A (ja) | コンテンツ・アウェア・ノード選択方法、プログラム、およびシステム | |
US11199990B2 (en) | Data reduction reporting in storage systems | |
US11960442B2 (en) | Storing a point in time coherently for a distributed storage system | |
CN111881476A (zh) | 对象存储控制方法、装置、计算机设备及存储介质 | |
CN112084173A (zh) | 数据迁移方法和装置及存储介质 | |
US11500813B2 (en) | Instant replay of a file to a cloud tier on a deduplication file system | |
CN113971163A (zh) | 一种小文件合并存储方法、读取方法以及服务器 | |
US10635523B2 (en) | Fast recovery from failures in a chronologically ordered log-structured key-value storage system | |
US10884649B2 (en) | Tape drive data reclamation | |
US20150160959A1 (en) | Managing virtual machine images in a distributed computing environment | |
US11163636B2 (en) | Chronologically ordered log-structured key-value store from failures during garbage collection | |
US20220027335A1 (en) | Active-active system index management | |
US10318509B2 (en) | Populating text indexes | |
CN109478151B (zh) | 网络可访问数据卷修改 | |
CN107885461B (zh) | 一种数据本地存储方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |