CN112650710B - 数据迁移的发送方法及装置、存储介质、电子装置 - Google Patents
数据迁移的发送方法及装置、存储介质、电子装置 Download PDFInfo
- Publication number
- CN112650710B CN112650710B CN202011632479.2A CN202011632479A CN112650710B CN 112650710 B CN112650710 B CN 112650710B CN 202011632479 A CN202011632479 A CN 202011632479A CN 112650710 B CN112650710 B CN 112650710B
- Authority
- CN
- China
- Prior art keywords
- data
- migration
- platform
- mode
- target
- 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.)
- Active
Links
- 230000005012 migration Effects 0.000 title claims abstract description 398
- 238000013508 migration Methods 0.000 title claims abstract description 380
- 238000000034 method Methods 0.000 title claims abstract description 75
- 230000005540 biological transmission Effects 0.000 claims description 23
- 238000013507 mapping Methods 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 14
- 238000012795 verification Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 239000003638 chemical reducing agent Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004941 influx Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
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/18—File system types
- G06F16/188—Virtual file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种数据迁移的发送方法及装置、存储介质、电子装置,其中,上述方法包括:获取在线存储平台发送的待迁移到大数据平台的迁移数据,其中,所述迁移数据包括:非结构化的迁移数据;从虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台。采用上述技术方案,解决相关技术中在迁移数据时必须针对每一个文件设置对应的配置文件的问题。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种数据迁移的发送方法及装置、存储介质、电子装置。
背景技术
随着信息技术的高速发展,整个社会步入数据化时代,数据成为了各企业最重要的资产。海量数据的涌入,对传统存储带来了巨大的挑战,企业也需要建立一套高可靠、高扩展的存储系统。现有的数据迁移工具较多,以Flume为例,Flume是一个分布式、可靠的日志聚合的系统,它可以在系统中定制各种类型的数据发送方,将数据收集到一个节点上,但是每个数据源只能有一个文件,需要针对每一个文件设置对应的配置文件。
针对相关技术中,在迁移数据时必须针对每一个文件设置对应的配置文件,进而导致数据迁移过程的流程复杂等问题,尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据迁移的发送方法及装置、存储介质、电子装置,以解决在迁移数据时必须针对每一个文件设置对应的配置文件,进而导致数据迁移过程的流程复杂等的问题。
根据本发明的一个实施例,提供了一种数据迁移的发送方法,包括:获取在线存储平台发送的待迁移到大数据平台的迁移数据,其中,所述迁移数据包括:非结构化的迁移数据;从虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台。
根据本发明的一个实施例,提供了一种数据迁移的发送方法,包括:获取在线存储平台发送的待迁移到大数据平台的迁移数据,其中,所述迁移数据包括:非结构化的迁移数据;从虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台。
可选的,根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台,包括:在从所述虚拟文件系统中确定的所述数据迁移方式为文件映射方式的情况下,将所述迁移数据按照所述文件映射方式映射到所述大数据平台;在从所述虚拟文件系统中确定的所述数据迁移方式为管道流传输方式的情况下,将所述迁移数据按照所述管道流传输方式传输到目标存储位置,并在所述目标存储位置上,将所述迁移数据迁移到所述大数据平台。
可选的,从虚拟文件系统中确定数据迁移方式,包括:获取所述迁移数据的源地址的目标格式,其中,不同的源地址用于指示不同的在线存储平台;根据所述目标格式确定所述迁移数据对应的所述虚拟文件系统,以从所述虚拟文件系统中确定数据迁移方式。
可选的,根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台,包括:将所述迁移数据转换为所述虚拟文件系统对应的文件对象,其中,不同的文件对象对应不同的虚拟文件系统;根据所述数据迁移方式将所述文件对象迁移到所述大数据平台。
可选的,所述方法还包括:获取所述迁移数据的源地址和目的地址,其中,所述目的地址用于指示所述迁移数据待迁移到所述大数据平台的位置;对所述源地址和所述目的地址进行验证,在验证通过的情况下,从所述虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台。
可选的,获取在线存储平台发送的待迁移到大数据平台的迁移数据,包括:确定所述在线存储平台发送的目标数据的数据类型;在所述数据类型为文件的情况下,将所述目标数据作为所述迁移数据;在所述目标类型为目录的情况下,从所述目标数据所指示的目录中获取所述迁移数据。
可选的,在所述迁移数据还包括:结构化数据的情况下,所述方法还包括:从预先设置的源地址所指示的存储位置获取待迁移的结构化数据;将所述结构化数据生成Map对象;将所述Map对象迁移到所述大数据平台,以实现将所述结构化数据迁移到所述大数据平台。
可选的,将所述Map对象迁移到所述大数据平台,包括:为所述Map对象设置多个Map任务,其中,每一个Map任务用于将所述每一个Map任务对应的Map对象迁移至所述大数据平台;按照目标调度器的分配按照预设顺序执行所述多个Map任务,以将所述Map对象迁移到所述大数据平台。
根据本发明的又一个实施例,还提供了一种数据迁移的发送装置,包括:获取模块,用于获取在线存储平台发送的待迁移到大数据平台的迁移数据,其中,所述迁移数据包括:非结构化的迁移数据;确定模块,用于从虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台。
根据本发明的又一个实施例,还提供了一种计算机可读的存储介质,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行以上任一项中所述的方法。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行以上任一项中所述的方法。
通过本发明,获取在线存储平台发送的待迁移到大数据平台的迁移数据,其中,所述迁移数据包括:非结构化的迁移数据;从虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台。也就是说,获取在线存储平台发送的待迁移到大数据平台的非结构化的迁移数据,根据从虚拟文件系统中确定数据迁移方式将所述迁移数据迁移到所述大数据平台。采用上述技术方案,解决相关技术中在迁移数据时必须针对每一个文件设置对应的配置文件,进而导致数据迁移过程的流程复杂等的问题,从而在迁移数据过程中,引入虚拟文件系统,进而按照数据迁移方式将所述迁移数据迁移到所述大数据平台。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种数据迁移的发送方法的计算机终端的硬件结构框图;
图2是根据本发明实施例的一种数据迁移的发送方法的流程图;
图3是根据本发明实施例的一种数据迁移的发送方法的流程示意图;
图4是根据本发明实施例的一种数据迁移的融合存储系统的示意图;
图5是根据本发明实施例的结构化数据迁移的发送方法的流程示意图;
图6是根据本发明实施例的一种数据迁移的发送装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例所提供的方法实施例可以在计算机终端,或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例的一种数据迁移的发送方法的计算机终端的硬件结构框图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器(Microprocessor Unit,简称是MPU)或可编程逻辑器件(Programmable logic device,简称是PLD))和用于存储数据的存储器104,在一个示例性实施例中,上述计算机终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示等同功能或比图1所示功能更多的不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的数据迁移的发送方法的确定方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种数据迁移的发送方法,应用于上述计算机终端,图2是根据本发明实施例的数据迁移的发送方法的流程图,该流程包括如下步骤:
步骤S202:获取在线存储平台发送的待迁移到大数据平台的迁移数据,其中,所述迁移数据包括:非结构化的迁移数据;
步骤S204:从虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台。
通过本发明,获取在线存储平台发送的待迁移到大数据平台的迁移数据,其中,所述迁移数据包括:非结构化的迁移数据;从虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台。也就是说,获取在线存储平台发送的待迁移到大数据平台的非结构化的迁移数据,根据从虚拟文件系统中确定数据迁移方式将所述迁移数据迁移到所述大数据平台。采用上述技术方案,解决相关技术中在迁移数据时必须针对每一个文件设置对应的配置文件,进而导致数据迁移过程的流程复杂等的问题,从而在迁移数据过程中,引入虚拟文件系统,进而按照数据迁移方式将所述迁移数据迁移到所述大数据平台。
根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台,包括:在从所述虚拟文件系统中确定的所述数据迁移方式为文件映射方式的情况下,将所述迁移数据按照所述文件映射方式映射到所述大数据平台;在从所述虚拟文件系统中确定的所述数据迁移方式为管道流传输方式的情况下,将所述迁移数据按照所述管道流传输方式传输到目标存储位置,并在所述目标存储位置上,将所述迁移数据迁移到所述大数据平台。
需要说明的是,虚拟文件系统是指Apache VFS,Apache VFS提供了一种虚拟文件系统,能够方便在其所支持的文件系统(如本地系统、FTP、HTTP、HDFS等)急进行文件操作。Apache VFS核心是FileObject接口,不同文件系统都实现该接口的方法,进而根据不同文件系统类型调用其相应处理方式。因为非结构化数据迁移重点需要解决实现不同文件系统迁移中的性能问题,所以通过使用Apache VFS可以在不同文件系统间进行文件操作以及多线程并发操作,从而解决了非结构化数据迁移不同文件系统兼容和迁移性能问题。需要说明的是,FileObject也就是文件对象,不同文件系统对应不同的文件对象。其中FileObject既可以表示接口,又可以表示对象,具体表示什么,本发明会在提及FileObject时说明。
需要说明的是,所述数据迁移方式也就是copyFrom方法,其中copyFrom方法具体可包括:文件映射方式与管道流传输方式。文件映射方式是将所述迁移数据直接映射到大数据平台,迁移系统只需要调用迁移程序获取源地址、目标地址等相关信息,迁移系统使用文件映射方式将所述迁移数据直接映射到大数据平台。其中,迁移系统不需要将所述迁移数据缓存下来。其中迁移系统是在线存储平台与大数据平台之间的一个系统,所有数据迁移的过程与步骤的执行主体都是迁移系统。其中迁移程序是负责数据迁移的程序。管道流传输方式是将所述迁移数据从在线存储平台缓存到所述目标存储位置,再由所述目标存储位置将所述迁移数据发送给大数据平台。
在步骤S204中,从虚拟文件系统中确定数据迁移方式,还包括:获取所述迁移数据的源地址的目标格式,其中,不同的源地址用于指示不同的在线存储平台;根据所述目标格式确定所述迁移数据对应的所述虚拟文件系统,以从所述虚拟文件系统中确定数据迁移方式。
需要说明的是,迁移系统通过迁移程序从在线存储平台获取所述迁移数据的相关信息,相关信息包括源地址、目标地址、数据类型信息。源地址信息拥有源地址的目标格式,不同的虚拟文件系统的源地址的目标格式不同,通过所述目标格式就可以确定所述迁移数据对应的文件系统。其中文件系统可包括:FTP系统、HTTP系统、HDFS系统。其中HDFS既可以是HDFS系统,也可以是HDFS接口,HDFS具体是系统还是接口出现时会说明。需要说明的是,不同的源地址用于指示不同的在线存储平台,迁移系统可以根据源地址找到对应的在线存储平台,在对应的在线存储平台中找到文件或者文件目录。通过上述技术手段,就可以根据所述目标格式确定所述迁移数据对应的文件系统,就可以确定所述迁移数据对应的在线存储平台,并确定文件或者文件目录。
在步骤S204中,根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台,包括:将所述迁移数据转换为所述文件系统对应的文件对象,其中,不同的文件对象对应不同的虚拟文件系统;根据所述数据迁移方式将所述文件对象迁移到所述大数据平台。
需要说明的是,迁移系统发送给所述大数据平台的所述迁移数据是转换为文件系统对应的文件对象,所以迁移系统需要将所述迁移数据转换为所述文件系统对应的文件对象。需要说明的是,根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台的数据就是文件对象。需要说明的是,不同的虚拟文件系统对应不同的文件对象。用FileObject对象表示文件对象的总称,FileObject对象可以包括:FTP文件对象、HTTP文件对象、HDFS文件对象。举例说明:在线存储平台的系统是FTP系统,迁移系统中的迁移程序会可以根据FTP文件系统的源地址的目标格式确定待迁移的文件系统是FTP系统,在确定待迁移的文件系统是FTP系统之后,迁移程序将所述迁移数据转换为对应的FTP文件对象,将所述迁移数据转换为对应的FTP文件对象之后,根据所述数据迁移方式将所述文件对象迁移到所述大数据平台。
在执行步骤S204之前,所述方法还包括:获取所述迁移数据的源地址和目的地址,其中,所述目的地址用于指示所述迁移数据待迁移到所述大数据平台的位置;对所述源地址和所述目的地址进行验证,在验证通过的情况下,从所述虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台。
需要说明的是,为了保证数据迁移的成功率,以及数据迁移的安全性,迁移系统需要对所述源地址和所述目的地址进行验证。在一个可选实施例中,在线存储平台或者大数据平台可能会因为某些原因暂停运行或者停止运行,此时在线存储平台内对应的所述源地址或者大数据平台内对应的所述目的地址是无效的,迁移系统是无法从在线存储平台获取所述迁移数据,或者无法将文件对象发送给大数据平台,此时所述源地址和所述目的地址是无效的,数据迁移会失败。为了避免这种情况,迁移系统会对所述源地址和所述目的地址进行验证。在另一个可选实施例中,在线存储平台内对应的所述源地址或者大数据平台内对应的所述目的地址是不安全的,在所述源地址或者所述目的地址是不安全的情况下,数据迁移可能会造成数据的非法盗用或者保密数据的泄露,所以迁移系统需要对所述源地址和所述目的地址的安全性进行验证。通过上述技术手段,就可以确保数据迁移的成功率,以及数据迁移的安全性。
在执行步骤S204之前,所述方法还包括:获取在线存储平台发送的待迁移到大数据平台的迁移数据,确定所述在线存储平台发送的目标数据的数据类型;在所述数据类型为文件的情况下,将所述目标数据作为所述迁移数据;在所述目标类型为目录的情况下,从所述目标数据所指示的目录中获取所述迁移数据。
需要说明的是,目标数据表示的就是所述迁移数据。需要说明的是,迁移系统从所述在线存储平台后获取的数据类型信息可能是文件或者目录信息,而迁移系统迁移不同数据类型的数据的迁移方法是不一样的。举例说明:如果所述迁移数据的数据类型是文件,那么迁移程序调用Apache VFS中FTP文件对象的copyFrom方法,以copyFrom方法将FTP文件对象发送给大数据平台。其中,copyFrom方法可具体包括:文件映射方式与管道流传输方式,具体采用哪一种方式由迁移程序随机决定。其中迁移数据就是文件内的数据,也就是说,以copyFrom方法将文件发送给大数据平台。如果所述迁移数据的数据类型是目录信息,那么迁移程序调用Apache VFS中FTP文件对象的copyFrom方法,以copyFrom方法将FTP文件对象发送给大数据平台。其中,迁移数据是目录细信息对应位置获取的数据。
在一个可选实施例中,在所述迁移数据还包括:结构化数据的情况下,所述方法还包括:从预先设置的源地址所指示的存储位置获取待迁移的结构化数据;将所述结构化数据生成Map对象;将所述Map对象迁移到所述大数据平台,以实现将所述结构化数据迁移到所述大数据平台。
需要说明的是,所述迁移数据除了非结构化数据之外,还可以是结构化数据。当所述迁移数据是结构化数据的情况下,从预先设置的源地址获取待迁移的结构化数据,之后将所述结构化数据生成对应的Map对象,将生成的Map对象迁移到所述大数据平台。通过上述技术手段,就可以实现结构化数据的迁移。
在一个可选实施例中,将所述Map对象迁移到所述大数据平台,包括:为所述Map对象设置多个Map任务,其中,每一个Map任务用于将所述每一个Map任务对应的Map对象迁移至所述大数据平台;按照目标调度器的分配按照预设顺序执行所述多个Map任务,以将所述Map对象迁移到所述大数据平台。
需要说明的是,本发明迁移结构化数据是通过MapReduce结构实现的。MapReduce迁移的对象是Map对象,所以将所述结构化数据生成对应的Map对象。需要说明的是,上述生成的Map对象是多个Map对象,目标调度器的分配按照预设顺序执行所述多个Map任务,就可以将所述Map对象迁移到大数据平台。大数据平台按照Map对象的接受顺序整合多个Map对象,就可以得到所述结构化数据。
为了更好的理解上述技术方案,使用以下可选流程图用于解释说明数据迁移的具体步骤。
图3是根据本发明实施例的一种数据迁移的发送方法的流程示意图,如图3所示:
S302:迁移系统根据迁移程序设置获取源地址、目标地址等相关信息,主要包括数据类型信息:文件和目录信息;
S304:迁移系统验证源地址、目标地址信息是否有效;
S306:迁移系统根据地址信息确定文件系统类型,如Win、FTP文件系统;
S308:迁移系统把获取的源数据转换为FileObject对象;
S310:迁移系统根据获得的数据类型数据判断是否存在目标目录;
S312:如果不存在目标目录,迁移系统创建目标目录;如果存在目标目录,执行S314;
S314:迁移系统调用Apache VFS中FileObject对象的copyFrom方法;
S316:迁移系统调用HDFS写入接口目标数据;
S318:迁移系统返回执行成功/失败结果信息;
S320:非结构化迁移结束。
通过本发明,获取在线存储平台发送的待迁移到大数据平台的迁移数据,其中,所述迁移数据包括:非结构化的迁移数据;从虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台。也就是说,获取在线存储平台发送的待迁移到大数据平台的非结构化的迁移数据,根据从虚拟文件系统中确定数据迁移方式将所述迁移数据迁移到所述大数据平台。采用上述技术方案,解决相关技术中在迁移数据时必须针对每一个文件设置对应的配置文件,进而导致数据迁移过程的流程复杂等的问题,从而在迁移数据过程中,引入虚拟文件系统,进而按照数据迁移方式将所述迁移数据迁移到所述大数据平台。
图4是根据本发明实施例的一种数据迁移的融合存储系统的示意图;如图4所示:
迁移系统通过迁移程序从在线存储平台获取所述迁移数据,迁移系统将迁移数据发送给大数据平台,其中迁移系统发送给所述大数据平台的所述迁移数据是转换为文件系统对应的文件对象。
图5是根据本发明实施例的结构化数据迁移的发送方法的流程示意图,如图5所示:
S502:设置迁移工作的参数,获取预设的配置信息:对任务运行的配置信息进行解析,设置作业相关的参数,如读取文件的路径、文件的输入/输出格式、处理Map任务所用的Mapper类、处理Reduce的Reducer类等,设置数据的输入路径:获取迁移数据的保存位置,数据迁移的过程中会将所有源路径下的文件迁移到大平台上的目标路径下,设置数据迁移的目的路径:即迁移后的数据所要保存的路径,该路径可以是一个HDFS的指定文件夹目录,也可以是Hive或者HBase中一个指定的表;
S504:从输入地址获取源数据,在获取源数据时,采取了JDBC获得对应的MySQL中的数据,得到的结果集类型为ResultSet的Java对象;
S506:源数据格式转换,步骤S504中获取的ResultSet对象转换成Key/Value对形式的Hadoop Map类型;
S508:启动MapReduce作业,在完成设置工作并获得数据源后,即开始执行任务分发,将源数据写入目标地址。步骤S502中设置的Map个数分割任务,决定每个任务所要迁移的数据范围。当TaskTracker有空闲的Slot并且其IO的资源情况满足要求时,TaskTracker将任务分配给他。若IO的负载过大,就算有空闲的Slot,调度器也会考虑将任务分配给其他负载较轻且有空闲的Slot的TaskTracker。采用目标调度器,调度系统能够有效地识别到每个TaskTracker的IO性能,进行优化调度,提升数据迁移的效率;
S510:将任务中的数据写入HBase,TaskTracker执行该Map任务,将获取到的Key/Value对数据写入到HBase中,当所有的Map任务都完成时,数据迁移结束,否则,JobTracker继续分配任务给TaskTracker进行处理,直到所有任务完成。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种数据迁移的发送装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图6是根据本发明实施例的一种数据迁移的发送装置的结构框图;如图6所示,包括:
获取模块60,用于获取在线存储平台发送的待迁移到大数据平台的迁移数据,其中,所述迁移数据包括:非结构化的迁移数据;
确定模块62,用于从虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台。
通过本发明,获取在线存储平台发送的待迁移到大数据平台的迁移数据,其中,所述迁移数据包括:非结构化的迁移数据;从虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台。也就是说,获取在线存储平台发送的待迁移到大数据平台的非结构化的迁移数据,根据从虚拟文件系统中确定数据迁移方式将所述迁移数据迁移到所述大数据平台。采用上述技术方案,解决相关技术中在迁移数据时必须针对每一个文件设置对应的配置文件的问题,从而在迁移数据时只需要获取预设的配置信息,就可以按照数据迁移方式将所述迁移数据迁移到所述大数据平台。
可选的,确定模块62还用于在从所述虚拟文件系统中确定的所述数据迁移方式为文件映射方式的情况下,将所述迁移数据按照所述文件映射方式映射到所述大数据平台;在从所述虚拟文件系统中确定的所述数据迁移方式为管道流传输方式的情况下,将所述迁移数据按照所述管道流传输方式传输到目标存储位置,并在所述目标存储位置上,将所述迁移数据迁移到所述大数据平台。
需要说明的是,虚拟文件系统是指Apache VFS,Apache VFS提供了一种虚拟文件系统,能够方便在其所支持的文件系统(如本地系统、FTP、HTTP、HDFS等)急进行文件操作。Apache VFS核心是FileObject接口,不同文件系统都实现该接口的方法,进而根据不同文件系统类型调用其相应处理方式。因为非结构化数据迁移重点需要解决实现不同文件系统迁移中的性能问题,所以通过使用Apache VFS可以在不同文件系统间进行文件操作以及多线程并发操作,从而解决了非结构化数据迁移不同文件系统兼容和迁移性能问题。需要说明的是,FileObject也就是文件对象,不同文件系统对应不同的文件对象。其中FileObject既可以表示接口,又可以表示对象,具体表示什么,本发明会在提及FileObject时说明。
需要说明的是,所述数据迁移方式也就是copyFrom方法,其中copyFrom方法具体可包括:文件映射方式与管道流传输方式。文件映射方式是将所述迁移数据直接映射到大数据平台,迁移系统只需要调用迁移程序获取源地址、目标地址等相关信息,迁移系统使用文件映射方式将所述迁移数据直接映射到大数据平台。其中,迁移系统不需要将所述迁移数据缓存下来。其中迁移系统是在线存储平台与大数据平台之间的一个系统,所有数据迁移的过程与步骤的执行主体都是迁移系统。其中迁移程序是负责数据迁移的程序。管道流传输方式是将所述迁移数据从在线存储平台缓存到所述目标存储位置,再由所述目标存储位置将所述迁移数据发送给大数据平台。
可选的,确定模块62还用于获取所述迁移数据的源地址的目标格式,其中,不同的源地址用于指示不同的在线存储平台;根据所述目标格式确定所述迁移数据对应的所述虚拟文件系统,以从所述虚拟文件系统中确定数据迁移方式。
需要说明的是,迁移系统通过迁移程序从在线存储平台获取所述迁移数据的相关信息,相关信息包括源地址、目标地址、数据类型信息。源地址信息拥有源地址的目标格式,不同的虚拟文件系统的源地址的目标格式不同,通过所述目标格式就可以确定所述迁移数据对应的文件系统。其中文件系统可包括:FTP系统、HTTP系统、HDFS系统。其中HDFS既可以是HDFS系统,也可以是HDFS接口,HDFS具体是系统还是接口出现时会说明。需要说明的是,不同的源地址用于指示不同的在线存储平台,迁移系统可以根据源地址找到对应的在线存储平台,在对应的在线存储平台中找到文件或者文件目录。通过上述技术手段,就可以根据所述目标格式确定所述迁移数据对应的文件系统,就可以确定所述迁移数据对应的在线存储平台,并确定文件或者文件目录。
可选的,确定模块62还用于将所述迁移数据转换为所述文件系统对应的文件对象,其中,不同的文件对象对应不同的虚拟文件系统;根据所述数据迁移方式将所述文件对象迁移到所述大数据平台。
需要说明的是,迁移系统发送给所述大数据平台的所述迁移数据是转换为文件系统对应的文件对象,所以迁移系统需要将所述迁移数据转换为所述文件系统对应的文件对象。需要说明的是,根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台的数据就是文件对象。需要说明的是,不同的虚拟文件系统对应不同的文件对象。用FileObject对象表示文件对象的总称,FileObject对象可以包括:FTP文件对象、HTTP文件对象、HDFS文件对象。举例说明:在线存储平台的系统是FTP系统,迁移系统中的迁移程序会可以根据FTP文件系统的源地址的目标格式确定待迁移的文件系统是FTP系统,在确定待迁移的文件系统是FTP系统之后,迁移程序将所述迁移数据转换为对应的FTP文件对象,将所述迁移数据转换为对应的FTP文件对象之后,根据所述数据迁移方式将所述文件对象迁移到所述大数据平台。
可选的,获取模块60还用于获取所述迁移数据的源地址和目的地址,其中,所述目的地址用于指示所述迁移数据待迁移到所述大数据平台的位置;对所述源地址和所述目的地址进行验证,在验证通过的情况下,从虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台。
需要说明的是,为了保证数据迁移的成功率,以及数据迁移的安全性,迁移系统需要对所述源地址和所述目的地址进行验证。在一个可选实施例中,在线存储平台或者大数据平台可能会因为某些原因暂停运行或者停止运行,此时在线存储平台内对应的所述源地址或者大数据平台内对应的所述目的地址是无效的,迁移系统是无法从在线存储平台获取所述迁移数据,或者无法将文件对象发送给大数据平台,此时所述源地址和所述目的地址是无效的,数据迁移会失败。为了避免这种情况,迁移系统会对所述源地址和所述目的地址进行验证。在另一个可选实施例中,在线存储平台内对应的所述源地址或者大数据平台内对应的所述目的地址是不安全的,在所述源地址或者所述目的地址是不安全的情况下,数据迁移可能会造成数据的非法盗用或者保密数据的泄露,所以迁移系统需要对所述源地址和所述目的地址的安全性进行验证。通过上述技术手段,就可以确保数据迁移的成功率,以及数据迁移的安全性。
可选的,确定模块62还用于获取在线存储平台发送的待迁移到大数据平台的迁移数据,确定所述在线存储平台发送的目标数据的数据类型;在所述数据类型为文件的情况下,将所述目标数据作为所述迁移数据;在所述目标类型为目录的情况下,从所述目标数据所指示的目录中获取所述迁移数据。
需要说明的是,目标数据表示的就是所述迁移数据。需要说明的是,迁移系统从所述在线存储平台后获取的数据类型信息可能是文件或者目录信息,而迁移系统迁移不同数据类型的数据的迁移方法是不一样的。举例说明:如果所述迁移数据的数据类型是文件,那么迁移程序调用Apache VFS中FTP文件对象的copyFrom方法,以copyFrom方法将FTP文件对象发送给大数据平台。其中,copyFrom方法可具体包括:文件映射方式与管道流传输方式,具体采用哪一种方式由迁移程序随机决定。其中迁移数据就是文件内的数据,也就是说,以copyFrom方法将文件发送给大数据平台。如果所述迁移数据的数据类型是目录信息,那么迁移程序调用Apache VFS中FTP文件对象的copyFrom方法,以copyFrom方法将FTP文件对象发送给大数据平台。其中,迁移数据是目录细信息对应位置获取的数据。
可选的,确定模块62还用于结构化数据的情况下,所述方法还包括:从预先设置的源地址所指示的存储位置获取待迁移的结构化数据;将所述结构化数据生成Map对象;将所述Map对象迁移到所述大数据平台,以实现将所述结构化数据迁移到所述大数据平台。
需要说明的是,所述迁移数据除了非结构化数据之外,还可以是结构化数据。当所述迁移数据是结构化数据的情况下,从预先设置的源地址获取待迁移的结构化数据,之后将所述结构化数据生成对应的Map对象,将生成的Map对象迁移到所述大数据平台。通过上述技术手段,就可以实现结构化数据的迁移。
可选的,确定模块62还用于为所述Map对象设置多个Map任务,其中,每一个Map任务用于将所述每一个Map任务对应的Map对象迁移至所述大数据平台;按照目标调度器的分配按照预设顺序执行所述多个Map任务,以将所述Map对象迁移到所述大数据平台。
需要说明的是,本发明迁移结构化数据是通过MapReduce结构实现的。MapReduce迁移的对象是Map对象,所以将所述结构化数据生成对应的Map对象。需要说明的是,上述生成的Map对象是多个Map对象,目标调度器的分配按照预设顺序执行所述多个Map任务,就可以将所述Map对象迁移到大数据平台。大数据平台按照Map对象的接受顺序整合多个Map对象,就可以得到所述结构化数据。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取在线存储平台发送的待迁移到大数据平台的迁移数据,其中,所述迁移数据包括:非结构化的迁移数据;
S2,从虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取在线存储平台发送的待迁移到大数据平台的迁移数据,其中,所述迁移数据包括:非结构化的迁移数据;
S2,从虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台。
可选地,在本可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种数据迁移的发送方法,其特征在于,包括:
获取在线存储平台发送的待迁移到大数据平台的迁移数据,其中,所述迁移数据包括:非结构化的迁移数据;
从虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台;
其中,根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台,包括:
在从所述虚拟文件系统中确定的所述数据迁移方式为文件映射方式的情况下,将所述迁移数据按照所述文件映射方式映射到所述大数据平台;
在从所述虚拟文件系统中确定的所述数据迁移方式为管道流传输方式的情况下,将所述迁移数据按照所述管道流传输方式传输到目标存储位置,并在所述目标存储位置上,将所述迁移数据迁移到所述大数据平台;
其中,根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台之前,所述方法还包括:
获取所述迁移数据的数据类型信息;
根据所述数据类型信息判断是否存在目标目录,其中,所述目标目录用于所述大数据平台存储所述迁移数据;
在不存在所述目标目录的情况下,在所述大数据平台中创建所述目标目录。
2.根据权利要求1所述的方法,其特征在于,从虚拟文件系统中确定数据迁移方式,包括:
获取所述迁移数据的源地址的目标格式,其中,不同的源地址用于指示不同的在线存储平台;
根据所述目标格式确定所述迁移数据对应的所述虚拟文件系统,以从所述虚拟文件系统中确定数据迁移方式。
3.根据权利要求2所述的方法,其特征在于,根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台,包括:
将所述迁移数据转换为所述虚拟文件系统对应的文件对象,其中,不同的文件对象对应不同的虚拟文件系统;
根据所述数据迁移方式将所述文件对象迁移到所述大数据平台。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述迁移数据的源地址和目的地址,其中,所述目的地址用于指示所述迁移数据待迁移到所述大数据平台的位置;
对所述源地址和所述目的地址进行验证,在验证通过的情况下,从所述虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台。
5.根据权利要求1所述的方法,其特征在于,获取在线存储平台发送的待迁移到大数据平台的迁移数据,包括:
确定所述在线存储平台发送的目标数据的数据类型;
在所述数据类型为文件的情况下,将所述目标数据作为所述迁移数据;
在所述数据类型为目录的情况下,从所述目标数据所指示的目录中获取所述迁移数据。
6.根据权利要求1所述的方法,其特征在于,在所述迁移数据还包括:结构化数据的情况下,所述方法还包括:
从预先设置的源地址所指示的存储位置获取待迁移的结构化数据;
将所述结构化数据生成Map对象;
将所述Map对象迁移到所述大数据平台,以实现将所述结构化数据迁移到所述大数据平台。
7.根据权利要求6所述的方法,其特征在于,将所述Map对象迁移到所述大数据平台,包括:
为所述Map对象设置多个Map任务,其中,每一个Map任务用于将所述每一个Map任务对应的Map对象迁移至所述大数据平台;
按照目标调度器的分配按照预设顺序执行所述多个Map任务,以将所述Map对象迁移到所述大数据平台。
8.一种数据迁移的发送装置,其特征在于,包括:
获取模块,用于获取在线存储平台发送的待迁移到大数据平台的迁移数据,其中,所述迁移数据包括:非结构化的迁移数据;
确定模块,用于从虚拟文件系统中确定数据迁移方式,并根据所述数据迁移方式将所述迁移数据迁移到所述大数据平台;
其中,所述确定模块,还用于在从所述虚拟文件系统中确定的所述数据迁移方式为文件映射方式的情况下,将所述迁移数据按照所述文件映射方式映射到所述大数据平台;在从所述虚拟文件系统中确定的所述数据迁移方式为管道流传输方式的情况下,将所述迁移数据按照所述管道流传输方式传输到目标存储位置,并在所述目标存储位置上,将所述迁移数据迁移到所述大数据平台;
其中,所述确定模块,还用于获取所述迁移数据的数据类型信息;
根据所述数据类型信息判断是否存在目标目录,其中,所述目标目录用于所述大数据平台存储所述迁移数据;在不存在所述目标目录的情况下,在所述大数据平台中创建所述目标目录。
9.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至7任一项中所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至7任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011632479.2A CN112650710B (zh) | 2020-12-31 | 2020-12-31 | 数据迁移的发送方法及装置、存储介质、电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011632479.2A CN112650710B (zh) | 2020-12-31 | 2020-12-31 | 数据迁移的发送方法及装置、存储介质、电子装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112650710A CN112650710A (zh) | 2021-04-13 |
CN112650710B true CN112650710B (zh) | 2023-07-21 |
Family
ID=75366816
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011632479.2A Active CN112650710B (zh) | 2020-12-31 | 2020-12-31 | 数据迁移的发送方法及装置、存储介质、电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112650710B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114416690B (zh) * | 2021-12-22 | 2024-10-01 | 新华三大数据技术有限公司 | 文件存储到对象存储的数据迁移装置、方法和存储介质 |
CN115017096B (zh) * | 2021-12-30 | 2023-10-31 | 荣耀终端有限公司 | 数据迁移方法、可读介质和电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101727504A (zh) * | 2010-01-29 | 2010-06-09 | 成都市华为赛门铁克科技有限公司 | 一种文件系统数据迁移方法和装置 |
CN104065685A (zh) * | 2013-03-22 | 2014-09-24 | 中国银联股份有限公司 | 面向云计算环境的分层存储系统中的数据迁移方法 |
CN105530273A (zh) * | 2014-09-29 | 2016-04-27 | 国际商业机器公司 | 用于数据迁移的方法和装置 |
CN106407417A (zh) * | 2016-09-23 | 2017-02-15 | 维沃移动通信有限公司 | 一种应用程序数据备份方法及移动终端 |
-
2020
- 2020-12-31 CN CN202011632479.2A patent/CN112650710B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101727504A (zh) * | 2010-01-29 | 2010-06-09 | 成都市华为赛门铁克科技有限公司 | 一种文件系统数据迁移方法和装置 |
CN104065685A (zh) * | 2013-03-22 | 2014-09-24 | 中国银联股份有限公司 | 面向云计算环境的分层存储系统中的数据迁移方法 |
CN105530273A (zh) * | 2014-09-29 | 2016-04-27 | 国际商业机器公司 | 用于数据迁移的方法和装置 |
CN106407417A (zh) * | 2016-09-23 | 2017-02-15 | 维沃移动通信有限公司 | 一种应用程序数据备份方法及移动终端 |
Also Published As
Publication number | Publication date |
---|---|
CN112650710A (zh) | 2021-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107145380B (zh) | 虚拟资源编排方法及装置 | |
CN108319496B (zh) | 资源访问方法、业务服务器、分布式系统及存储介质 | |
CN109829287A (zh) | Api接口权限访问方法、设备、存储介质及装置 | |
CN110704177B (zh) | 计算任务处理方法、装置、计算机设备和存储介质 | |
CN112650710B (zh) | 数据迁移的发送方法及装置、存储介质、电子装置 | |
CN108228444B (zh) | 一种测试方法和装置 | |
CN113079200A (zh) | 一种数据处理的方法、装置及系统 | |
CN108021400B (zh) | 数据处理方法及装置、计算机存储介质及设备 | |
CN110377440B (zh) | 信息处理方法和装置 | |
CN113918232B (zh) | 一种算法服务的调用方法、装置、服务器和存储介质 | |
CN109828830B (zh) | 用于管理容器的方法和装置 | |
CN113051245A (zh) | 用于迁移数据的方法、装置及系统 | |
US8510423B2 (en) | Install system and install method | |
CN117724852A (zh) | 一种云电脑计算资源分配方法及装置 | |
CN110275913A (zh) | 数据供应方法、装置、及存储介质和电子装置 | |
CN111414339B (zh) | 一种文件的处理方法、系统、装置、设备及介质 | |
CN111858020B (zh) | 用户资源限制方法、装置及计算机存储介质 | |
CN111131324A (zh) | 业务系统的登陆方法及装置、存储介质、电子装置 | |
CN115756549A (zh) | 一种大数据中台数据的下载方法、装置及存储介质 | |
CN112559118A (zh) | 应用数据迁移方法、装置、电子设备及存储介质 | |
US10528625B2 (en) | Client cloud synchronizer | |
CN113691575B (zh) | 通信方法、装置及系统 | |
CN115269117A (zh) | 一种资源创建方法、装置、计算机设备及存储介质 | |
CN112988339B (zh) | 一种数据管理方法及装置 | |
CN114462016A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |