CN113297145B - 迁移报告的生成方法、装置、电子设备及计算机存储介质 - Google Patents
迁移报告的生成方法、装置、电子设备及计算机存储介质 Download PDFInfo
- Publication number
- CN113297145B CN113297145B CN202010112744.8A CN202010112744A CN113297145B CN 113297145 B CN113297145 B CN 113297145B CN 202010112744 A CN202010112744 A CN 202010112744A CN 113297145 B CN113297145 B CN 113297145B
- Authority
- CN
- China
- Prior art keywords
- migration
- routine
- retrieval
- search
- file
- 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
- 238000013508 migration Methods 0.000 title claims abstract description 329
- 230000005012 migration Effects 0.000 title claims abstract description 329
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000004891 communication Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 7
- 230000000153 supplemental effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000001502 supplementing effect Effects 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/17—Details of further file system functions
- G06F16/1734—Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种迁移报告的生成方法、装置、电子设备及计算机存储介质。其中,所述迁移报告的生成方法,包括:接收用户的迁移报告生成请求,其中,所述迁移报告生成请求中携带有请求生成的迁移报告所属的请求时间段;根据所述请求时间段,从预先生成的例行检索结果中确定匹配的例行检索匹配结果,其中,所述例行检索结果为按照预设的检索周期对文件迁移日志进行检索获取的迁移文件的信息,每个例行检索结果对应一个检索时间段;根据所述例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告。通过本发明实施例,可以快速生成迁移报告。
Description
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种迁移报告的生成方法、装置、电子设备及计算机存储介质。
背景技术
随着云计算对各个行业的渗透,应用、服务上云已是大势所趋,特别是存储系统迁移到云平台的存储系统。文件迁移上云数据量,已从TB级过渡到PB级;同时,单次迁移文件数量已达数百亿。数据上云迁移过程中,迁移服务系统通过迁移报告输出迁移进度、迁移结果等信息。
迁移任务信息、成功文件列表、错误文件列表是迁移报告等重要组成部分。迁移任务信息是根据存储在日志服务(如SLS)中的文件迁移日志确定的。对于百亿级文件迁移而言,按照常规方法,从日志服务中检索获得检索结果,再生成迁移任务信息进而生成迁移报告,需要数十小时、数百GB的存储空间,使得现有技术的迁移报告生成速度慢、时间长而且占用极大存储空间。
发明内容
有鉴于此,本发明实施例提供一种迁移报告的生成方案,以解决上述部分或全部问题。
根据本发明实施例的第一方面,提供了一种迁移报告的生成方法,包括:接收用户的迁移报告生成请求,其中,所述迁移报告生成请求中携带有请求生成的迁移报告所属的请求时间段;根据所述请求时间段,从预先生成的例行检索结果中确定匹配的例行检索匹配结果,其中,所述例行检索结果为按照预设的检索周期对文件迁移日志进行检索获取的迁移文件的信息,每个例行检索结果对应一个检索时间段;根据所述例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告。
根据本发明实施例的第二方面,提供了一种迁移报告的生成装置,包括:接收模块,用于接收用户的迁移报告生成请求,其中,所述迁移报告生成请求中携带有请求生成的迁移报告所属的请求时间段;第一确定模块,用于根据所述请求时间段,从预先生成的例行检索结果中确定匹配的例行检索匹配结果,其中,所述例行检索结果为按照预设的检索周期对文件迁移日志进行检索获取的迁移文件的信息,每个例行检索结果对应一个检索时间段;第一生成模块,用于根据所述例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告。
根据本发明实施例的第三方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如第一方面所述的迁移报告的生成方法对应的操作。
根据本发明实施例的第四方面,提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的迁移报告的生成方法。
根据本发明实施例提供的迁移报告的生成方案,在接收到迁移报告生成请求时,根据迁移报告生成请求的请求时间段,从预先存储的对文件迁移日志进行例行检索获得的例行检索结果中获取例行检索匹配结果,进而使用例行检索匹配结果中包含的迁移文件的信息生成迁移报告。这样避免了在接收到迁移报告生成请求后再对文件迁移日志进行大量检索,从而提升了迁移报告的生成效率,缩短了生成时间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1a为根据本发明实施例一的一种迁移报告的生成方法的步骤流程图;
图1b为根据本发明实施例一的一种使用场景中云平台的示意图;
图1c为根据本发明实施例一的一种例行检索的示意图;
图2a为根据本发明实施例二的一种迁移报告的生成方法的步骤流程图;
图2b为根据本发明实施例二的一种使用场景中生成迁移报告的结构框图;
图3为根据本发明实施例三的一种迁移报告的生成装置的结构框图;
图4为根据本发明实施例四的一种电子设备的结构示意图。
具体实施方式
为了使本领域的人员更好地理解本发明实施例中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明实施例一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本发明实施例保护的范围。
下面结合本发明实施例附图进一步说明本发明实施例具体实现。
实施例一
参照图1a,示出了根据本发明实施例一的一种迁移报告的生成方法的步骤流程图。
在本实施例中,以该迁移报告的生成方法应用于云平台(具体例如为云平台中的在线迁移服务系统)中,生成用于说明文件迁移至云平台的过程中的信息(如迁移任务信息、成功迁移文件列表、错误文件列表等)的迁移报告为例,对该方法进行说明。
用户需要将文件迁移至云平台时,可以通过云平台提供的在线迁移服务系统实现文件的自动迁移。在迁移过程中,在线迁移服务系统产生的文件列表信息进行结构化后,以文件迁移日志的形式存储到日志服务系统中,以供后续在线迁移服务系统基于文件迁移日志生成迁移报告。
当然,在其他实施例中,该方法也可以应用于其他任何进行文件迁移需要生成迁移报告的场景中,本实施例对此不作限制。
本实施例的迁移报告的生成方法包括以下步骤:
步骤S102:接收用户的迁移报告生成请求,其中,所述迁移报告生成请求中携带有请求生成的迁移报告所属的请求时间段。
迁移报告用于向用户展示迁移文件的信息,以便用户能够获知文件迁移的进度、是否成功迁移、未成功迁移的文件的错误原因等等。用户若使用云平台的在线迁移服务系统将文件迁移至云平台,则在此过程中,用户可以通过云平台的控制台指示生成迁移报告,在线迁移服务系统接收到迁移报告生成请求。
在本实施例中,迁移报告包括但不限于:迁移任务信息、成功迁移文件列表和错误文件列表。
其中,迁移任务信息用于指示与文件对应的迁移任务的信息,其中包括但不限于:文件名称、迁移开始时间、迁移结束时间、迁移后的存储位置等等。
成功迁移文件列表中包括但不限于:文件名称、迁移前的存储位置、迁移后的存储位置等等。
错误文件列表中包括但不限于:文件名称、错误原因等等。
请求时间段用于指示本次迁移报告涉及的时间段。请求时间段包括请求开始时间和请求结束时间,请求开始时间可以是默认设置的前一次生成的迁移报告对应的请求结束时间,或者根据设置的计算规则确定的请求开始时间。请求结束时间可以是用户指定的时间。
例如,前一次迁移报告对应的请求结束时间为“2020-1-20 24:00”,请求时间段的请求结束时间为“2020-1-21 24:00”,则当前次迁移报告涉及的请求时间段为从“2020-1-20 24:00”至“2020-1-21 24:00”。
其中,根据需要该时间段可以包含两个端点时间(即请求开始时间和请求结束时间),或者不包含两个端点时间,或者,仅包括其中一个端点时间。
步骤S104:根据所述请求时间段,从预先生成的例行检索结果中确定匹配的例行检索匹配结果。
其中,所述例行检索结果为按照预设的检索周期对文件迁移日志进行检索获取的迁移文件的信息,每个例行检索结果对应一个检索时间段。
例如,在文件迁移过程中,对文件迁移日志进行周期性地例行检索,以获得迁移开始时间在例行检索对应的检索时间段内的迁移文件的信息,将这些迁移文件的信息作为例行检索结果进行存储。
例如,某一次例行检索对应的检索时间段为“2020-1-10 23:20”-“2020-1-10 23:30”,则获取文件迁移日志中迁移开始时间在该检索时间段内的迁移文件的信息,作为对应的例行检索结果进行存储。
通过在文件迁移过程中周期性地对文件迁移日志进行检索,实现将生成迁移报告需要的多次、针对文件迁移日志的全量检索切分为更小粒度的一个、一个的例行检索,从而减小每次例行检索涉及的检索时间段的长度,从而提升检索的效率。
此外,由于预先进行了例行检索,并将例行检索结果进行了存储,从而在生成迁移报告时,只需要根据请求时间段,确定需要的匹配的例行检索匹配结果,也就是检索时间段与请求时间段存在交集的例行检索结果,后续可以使用这些例行检索匹配结果生成迁移报告。
这样避免了用户需要生成迁移报告时再进行检索,以避免检索过多地占用生成迁移报告的时间,提升迁移报告生成的速度和效率,避免现有技术中生成迁移报告的方案需要多次全量检索文件迁移日志,每次检索需要长达数小时,占用大量存储空间,无法满足时间、空间要求的问题,
由于每次例行检索获得的例行检索结果均具有对应的检索时间段,因而在生成
步骤S106:根据所述例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告。
在一具体实现中,生成迁移报告时,比较最新的例行检索匹配结果的检索时间段的检索结束时间和请求时间段的请求结束时间,若请求时间段晚于检索结束时间,表示最新的例行检索结果滞后于迁移报告的需求,需要进行补充检索。
基于此,将请求结束时间和检索结束时间之间的时间段确定为补充检索时间段,并根据补充检索时间段对文件迁移日志进行检索,获得补充检索结果,补充检索结果中包含迁移开始时间在补充检索时间段内的迁移文件的信息。
使用补充检索结果和例行检索匹配结果生成包含迁移文件的信息的迁移报告。该迁移报告中即包含补充检索结果中的迁移文件的信息,也包含例行检索匹配结果中的迁移文件的信息。
在另一具体实现中,若比较请求结束时间早于或者等于最新的例行检索匹配结果对应的检索时间段的检索结束时间,则表示不需要补充检索,可以直接从最新的例行检索匹配结果中获取最新的例行检索匹配结果对应的检索时间段的检索开始时间到请求结束时间之间的部分检索结果。
根据部分检索结果、所有例行检索匹配结果中除最新的例行检索匹配结果之外的剩余例行检索匹配结果,生成包含迁移文件的信息的迁移报告。
这样就可以实现针对海量文件迁移的使用场景,在需要时快速生成迁移报告,解决现有技术中需要数小时、数天才能生成迁移报告的问题。
下面结合一个具体的使用场景,对生成迁移报告的过程进行说明如下:
如图1b所示,以将文件迁移至云平台为例,云平台包括用于提供数据存储服务的对象存储OSS系统、用于提供日志结构化存储和检索的日志服务系统、用于提供数据迁移的在线迁移服务系统,迁移报告的生成方法可以配置于在线迁移服务系统中。
如图1c所示,设文件从t1时刻开始迁移,云平台的在线迁移服务系统每个10分钟进行一次例行检索,则在线迁移服务系统在t2时刻(t2=t1+10分钟)对文件迁移日志进行检索,以检索出迁移开始时间在[t1,t2)内的迁移文件的信息,将这些信息作为例行检索结果存储到对象存储OSS中(如图1c中所示例行检索结果1)。例行检索结果中可以包括:迁移开始时间、迁移结束时间、状态、错误信息、错误堆栈、当前时间戳、用于存储文件的object(对象)大小和object crc校验值等等。
在下一个10分钟到达时,即在t3时刻(t3=t2+10分钟)开始新的例行检索,以检索出迁移开始时间在[t2,t3)内的迁移文件的信息,将这些信息作为例行检索结果存储到对象存储OSS中(如图1c中所示例行检索结果2)。如此重复每隔一段时间就进行一次例行检索,直至迁移完成或者满足终止例行检索的条件。
在获取迁移报告生成请求时,若迁移报告生成请求中的请求时间段为[t1,tx]。则根据存储的例行检索结果对应的检索时间段、以及请求时间段,可以确定例行检索匹配结果为图1c中所示的例行检索结果1和例行检索结果2。
其中,例行检索结果2为最新的例行检索匹配结果,对应的检索结束时间为t3,由于tx大于t3,因此,时间段[t3,tx]作为补偿检索时间段,对文件迁移日志进行检索,获取迁移开始时间在[t3,tx]范围内的迁移文件的信息,并将这些信息作为补偿检索结果。
结合补偿检索结果和例行检索匹配结果(即例行检索结果1和例行检索结果2)生成迁移报告。
通过本实施例,在接收到迁移报告生成请求时,根据迁移报告生成请求的请求时间段,从预先存储的对文件迁移日志进行例行检索获得的例行检索结果中获取例行检索匹配结果,进而使用例行检索匹配结果中包含的迁移文件的信息生成迁移报告。这样避免了在接收到迁移报告生成请求后再对文件迁移日志进行大量检索,从而提升了迁移报告的生成效率,缩短了生成时间。
本实施例的迁移报告的生成方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、移动终端(如平板电脑、手机等)和PC机等。
实施例二
参照图2a,示出了根据本发明实施例二的一种迁移报告的生成方法的步骤流程图。
在本实施例中,仍以该方法应用在云平台中为例进行说明。
本实施例的迁移报告的生成方法包括前述的步骤S102~步骤S106。此外,该方法还可以包括步骤S100a和步骤S100b。
步骤S100a:在数据迁移过程中,按照预设的检索周期对所述文件迁移日志进行例行检索,以获取包含迁移文件的信息的例行检索结果。
需要说明的是,步骤S100a和步骤S100b是可选步骤,其可以在步骤S102之前、之后或者与步骤S102并行执行。
该例行检索可以周期性执行,即每间隔一段时间就执行一次步骤S100a和步骤S100b。需要说明的是,虽然本实施例中采用周期性执行的限定,但是执行例行检索的时间间隔可以相同或者不同。例如,相邻两次例行检索之间的时间间隔可以是10分钟。
又例如,第一次例行检索和第二例行检索之间可以间隔10分钟,第二次例行检索和第三次例行检索之间可以间隔15分钟,第三次例行检索和第四次例行检索之间可以间隔5分钟等等,本领域技术人员可以根据需要确定任意相邻两次例行检索之间的时间间隔。
在一具体实现中,步骤S100a可以实现为:在文件迁移至云平台的过程中,每隔设定时长确定例行检索条件是否满足(如时间间隔到达),若满足,则根据当前检索时间段,检索所述文件迁移日志,将迁移开始时间在所述检索时间段内的迁移文件的信息作为当前次的例行检索结果。
当前检索时间段可以根据需要确定,例如,根据用户的配置确定,或者默认设置每次例行检索的检索时间段。如将当前检索时间段的检索开始时间(记作tn)配置为前次检索时间段的检索结束时间(记作tm-1),当前检索时间段的检索结束时间(记作tm)配置为检索开始时间(即tn)加上设定时长(例如10分钟)。
以当前检索时间段为[tn,tm)为例,根据其对文件迁移日志进行检索,获取其中迁移开始时间在[tn,tm)内的迁移文件的信息(该信息包括但不限于object名称、task名称、job名称、IP地址、迁移开始时间、迁移结束时间、状态、错误信息、错误堆栈、当前时间戳、object大小和object crc校验值等等),将这些信息作为例行检索结果。
此外,需要说明的是,在另一种情况中,相邻两次例行检索对应的检索时间段之间可以具有间隔,例如,第一次例行检索对应的检索时间段为[t1,t2],第二次例行检索对应的检索时间段为[t3,t4],其中t3大于t2,本实施例对此不作限制。
步骤S100b:将获取的例行检索结果保存至对象存储文件中。
由于对象存储文件(例如OSS文件)具有追加上传、并发分片浅复制、海量存储等特性,因而将例行检索结果保存至对象存储文件中,减少本地存储的成本,而且后续可以使用例行检索结果快速生成迁移报告。
在一种具体实现中,步骤S100b可以实现为:
针对每个例行检索结果,确定用于存储当前例行检索结果的对象存储文件的大小是否满足设定阈值。
若未满足设定阈值,则将当前的例行检索结果保存至所述对象存储文件中。
对象存储文件用于存储例行检索结果,为了保证后续生成迁移报告时能够快速获取需要的例行检索结果,避免对象存储文件过大,在向使用的当前对象存储文件中追加例行检索结果时,先判断当前对象存储文件的大小是否满足设定阈值(设定阈值可以根据需要确定,例如10M、100M、1G等),若未满足,则表示可以直接将例行检索结果追加存储到当前对象存储文件中。
或者,若满足,表示当前的对象存储文件的空间不足,需要创建新的对象存储文件,因而若满足设定阈值,则创建新的对象存储文件,并将当前例行检索结果保存至新的对象存储文件中。
这样就可以通过采用对象存储文件将例行检索的例行检索结果进行存储,大大减少了对本地存储空间的要求和使用。
在获取到用户的迁移报告生成请求后,步骤S104中确定例行检索匹配结果可以实现为:从预先生成的例行检索结果中,确定至少部分检索时间段与所述请求时间段重合的例行检索结果,作为所述例行检索匹配结果。
例如,例行检索结果1~4对应的检索时间段分别为[t1,t2)、[t2,t3)、[t3,t4)和[t4,t5),请求时间段为[t1,tx)。通过将各检索时间段与请求时间段之间比较,确定两者是否存在交集,若存在交集,则表示对应的例行检索结果是需要的,将其作为例行检索匹配结果。若不存在交集,则表示不需要该例行检索结果。例如,若tx>t5,则由于例行检索结果1~4的检索时间段均在请求时间段内,因而例行检索匹配结果为例行检索结果1~4。
这样就可以从存储的例行检索结果中确定出需要的例行检索结果,为了便于描述,将需要的例行检索结果记作例行检索匹配结果。
当然,在其他实施例中,可以根据需要采用其他任何适当的方式确定例行检索匹配结果,本实施例对此不作限制。
在一种情况中,在使用例行检索匹配结果生成迁移报告时,步骤S106包括以下子步骤:
子步骤S1061:若请求时间段的请求结束时间晚于最近的所述例行检索匹配结果中的检索时间段的检索结束时间,则根据所述请求结束时间和所述检索结束时间,确定补充检索时间段。
在本情况中,仍以例行检索匹配结果1~4、请求时间段为[t1,tx)为例,其中最新的例行检索匹配结果为例行检索结果4,其对应的检索结束时间为t5。若请求时间段对应的请求结束时间tx大于t5,则表示需要进行补充检索,才能够获取所有需要的检索结果,因此需要确定补充检索时间段,即[t5,tx)。
子步骤S1062:根据所述补充检索时间段对所述文件迁移日志进行检索,并获取补充检索结果。
根据补充检索时间段,对文件迁移日志进行实时检索,由于补充检索时间段的长度较短,并且可以切分成更小的粒度进行并发检索,因此补充检索可在秒级内完成。
通过补充检索获取迁移开始实际在[t5,tx)内的迁移文件的信息作为补充检索结果,并对其进行追加存储。
子步骤S1063:根据所述补充检索结果和所述例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告。
例如,根据补充检索结果中的迁移文件的信息、例行检索匹配结果1~4中的迁移文件的信息生成迁移报告。由于在海量文件迁移过程中的迁移报告的数据量较大,为了便于用户查看,减少数据传输占用的带宽,可以将迁移报告分为迁移文件列表、成功文件列表和错误文件列表等几个部分,并将各个部分的存储地址发送给用户,使用户能够通过存储地址访问到迁移报告中需要的部分,从而便于用户查看。
在另一种情况中,在使用例行检索匹配结果生成迁移报告时,步骤S106包括以下子步骤:
子步骤S1064:若请求时间段的请求结束时间早于或等于最近的所述例行检索匹配结果的检索时间段的检索结束时间,则获取最近的所述例行检索匹配结果的检索时间段的检索开始时间到所述请求结束时间的部分检索结果。
在本情况中,以例行检索匹配结果1~4、请求时间段为[t1,ty)为例,其中最新的例行检索匹配结果为例行检索结果4,除此之外的例行检索匹配结果即为剩余例行检索匹配结果,即剩余例行检索匹配结果为检索结果1~3。
最新的例行检索匹配结果对应的检索结束时间为t5。若请求时间段对应的请求结束时间ty小于t5,则表示最新的例行检索匹配结果中可能存在超出请求时间段不需要的检索结果,因此从最新的例行检索匹配结果(即例行检索结果4)中确定部分检索结果,部分检索结果中包括迁移开始时间在[t4,ty)范围内的迁移文件的信息。
子步骤S1065:根据所述部分检索结果和剩余例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告,所述剩余例行检索匹配结果为所有的所述例行检索匹配结果中除最新的所述例行检索匹配结果之外的例行检索匹配结果。
例如,根据部分检索结果中的迁移文件的信息、例行检索匹配结果1~3中的迁移文件的信息生成迁移报告。如前一情况中所述,根据需要可以直接将迁移报告发送给用户。或者,为了便于用户查看,减少数据传输占用的带宽,可以将迁移报告分为迁移文件列表、成功文件列表和错误文件列表等几个部分,并将各个部分的存储地址发送给用户,使用户能够通过存储地址访问到迁移报告中需要的部分,从而便于用户查看,本实施例对此不作限制。
下面结合一个具体的使用场景,对迁移报告的生成方法进行说明如下:
在本使用场景中,以将海量文件迁移至云平台中为例进行说明。在迁移过程中产生的文件信息进行结构化后(记作文件迁移日志)存储在日志服务系统(例如SLS系统)中。结构化的文件信息包括但不限于:当前时间、当前时间戳、时间间隔、object名称、task名称、job名称、cid、jid、IP地址、迁移开始时间、迁移结束时间、状态、错误信息、错误堆栈、object大小、object crc校验值等等。
如图2b所示,每隔一段时间,对日志服务系统中的文件迁移日志执行一次例行检索,以获取检索时间段内的迁移文件的信息。例如,t1时刻进行的例行检索用于检索出迁移开始时间在[0,t1)时间段内的迁移文件的信息(文件信息存储至对象存储系统中,例如图中例行检索结果1)。t2时刻进行的例行检索用于检索出迁移时间在[t1,t2)时间段内的迁移文件的信息。每次例行检索的例行检索结果以追加方式保存到对象存储文件中。此外,在每次例行检索中,可以将每个检索时间段分成更小时间粒度进行并发检索,以提升检索效率。
在接收到迁移报告生成请求时,如果迁移报告生成请求中的请求时间段包含了例行检索未覆盖的时间段,例如,请求时间段为[0,tx),其中,0~t2这一时间段内的例行检索结果已经预先检索出,t2~tx这一时间段需要进行补充检索,获取迁移开始时间在[t2,tx)这一时间段内的迁移文件的信息。补充检索的补充检索时间段长度较短,而且可以切分成更小的粒度进行并发检索,因而可在秒级内完成。
将补充检索结果都保存到对象存储文件(如OSS)中。其中,补充检索结果可以直接上传到OSS中。
在生成迁移报告时,可以将需要的例行检索结果(也就是例行检索匹配结果)和补充检索结果通过并发的分片上传合并到指定的OSS文件,然后生成迁移报告,该迁移报告中包括迁移任务信息对应的对象存储文件的存储位置、成功迁移信息对应的对象存储文件的存储位置和错误文件信息(其中包含错误原因)对应的对象存储文件的存储位置。
这些存储位置可以是用户的OSS中的位置,这样可以方便用户查看迁移报告,而且便于用户进行权限管理。
采用本使用场景的迁移报告的生成方法,相较于常规生成迁移报告的方案,避免了需要多次全量检索文件迁移日志,节省了每次全量检索需要长达数小时、占用大量存储空间,无法满足时间、空间要求的问题。
本使用场景中,通过例行检索预先生成大部分生成迁移报告需要使用的例行检索结果,把生成迁移报告的时间从数十小时压缩到数秒。通过使用对象存储方式把例行检索结果存储到对象存储OSS上,大大减少了对本地存储空间的要求和使用。这样巧妙而简单地实现了实时生成迁移报告。
将迁移报告需要的检索结果分两部分生成,一部分为例行检索,通过例行检索将所需的大部分或者全部检索结果都预先生成;另一部分为补充检索,如果已有的例行检索结果不能满足迁移报告的需求,则将差额部分进行补充检索,从而实现快速获取补充检索结果,以提升迁移报告生成速度,使其从数十小时减少到秒级,使用存储空间压缩到数百MB。
通过本实施例,在接收到迁移报告生成请求时,根据迁移报告生成请求的请求时间段,从预先存储的对文件迁移日志进行例行检索获得的例行检索结果中获取例行检索匹配结果,进而使用例行检索匹配结果中包含的迁移文件的信息生成迁移报告。这样避免了在接收到迁移报告生成请求后再对文件迁移日志进行大量检索,从而提升了迁移报告的生成效率,缩短了生成时间。
本实施例的迁移报告的生成方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、移动终端(如平板电脑、手机等)和PC机等。
实施例三
参照图3,示出了根据本发明实施例三的一种迁移报告的生成装置的结构框图。
本实施例的迁移报告的生成装置包括:接收模块302,用于接收用户的迁移报告生成请求,其中,所述迁移报告生成请求中携带有请求生成的迁移报告所属的请求时间段;第一确定模块304,用于根据所述请求时间段,从预先生成的例行检索结果中确定匹配的例行检索匹配结果,其中,所述例行检索结果为按照预设的检索周期对文件迁移日志进行检索获取的迁移文件的信息,每个例行检索结果对应一个检索时间段;第一生成模块306,用于根据所述例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告。
可选地,所述第一确定模块304用于从预先生成的例行检索结果中,确定至少部分检索时间段与所述请求时间段重合的例行检索结果,作为所述例行检索匹配结果。
可选地,所述第一生成模块306包括:第二确定模块3061,用于若请求时间段的请求结束时间晚于最近的所述例行检索匹配结果中的检索时间段的检索结束时间,则根据所述请求结束时间和所述检索结束时间,确定补充检索时间段;第一查询模块3062,用于根据所述补充检索时间段对所述文件迁移日志进行检索,并获取补充检索结果;第二生成模块3063,用于根据所述补充检索结果和所述例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告。
可选地,所述第一生成模块306包括:获取模块3064,用于若请求时间段的请求结束时间早于或等于最近的所述例行检索匹配结果的检索时间段的检索结束时间,则获取最近的所述例行检索匹配结果的检索时间段的检索开始时间到所述请求结束时间的部分检索结果;第三生成模块3065,用于根据所述部分检索结果和剩余例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告,所述剩余例行检索匹配结果为所有的所述例行检索匹配结果中除最新的所述例行检索匹配结果之外的例行检索匹配结果。
可选地,所述装置还包括:例行检索模块300a,用于在接收模块302在接收用户的迁移报告生成请求之前,在数据迁移过程中,按照预设的检索周期对所述文件迁移日志进行例行检索,以获取包含迁移文件的信息的例行检索结果;结果存储模块300b,用于将获取的例行检索结果保存至对象存储文件中。
可选地,所述结果存储模块300b用于针对每个例行检索结果,确定用于存储当前例行检索结果的对象存储文件的大小是否满足设定阈值;若未满足设定阈值,则将当前的例行检索结果保存至所述对象存储文件中。
可选地,所述结果存储模块300b还用于若满足设定阈值,则创建新的对象存储文件,并将当前例行检索结果保存至新的对象存储文件中。
本实施例的迁移报告的生成装置用于实现前述多个方法实施例中相应的迁移报告的生成方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本实施例的迁移报告的生成装置中的各个模块的功能实现均可参照前述方法实施例中的相应部分的描述,在此亦不再赘述。
实施例四
参照图4,示出了根据本发明实施例四的一种电子设备的结构示意图,本发明具体实施例并不对电子设备的具体实现做限定。
如图4所示,该电子设备可以包括:处理器(processor)402、通信接口(Communications Interface)404、存储器(memory)406、以及通信总线408。
其中:
处理器402、通信接口404、以及存储器406通过通信总线408完成相互间的通信。
通信接口404,用于与其它电子设备如终端设备或服务器进行通信。
处理器402,用于执行程序410,具体可以执行上述迁移报告的生成方法实施例中的相关步骤。
具体地,程序410可以包括程序代码,该程序代码包括计算机操作指令。
处理器402可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。电子设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器406,用于存放程序410。存储器406可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序410具体可以用于使得处理器402执行以下操作:接收用户的迁移报告生成请求,其中,所述迁移报告生成请求中携带有请求生成的迁移报告所属的请求时间段;根据所述请求时间段,从预先生成的例行检索结果中确定匹配的例行检索匹配结果,其中,所述例行检索结果为按照预设的检索周期对文件迁移日志进行检索获取的迁移文件的信息,每个例行检索结果对应一个检索时间段;根据所述例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告。
在一种可选的实施方式中,程序410还用于使得处理器402在根据所述请求时间段,从预先生成的例行检索结果中确定匹配的例行检索匹配结果时,从预先生成的例行检索结果中,确定至少部分检索时间段与所述请求时间段重合的例行检索结果,作为所述例行检索匹配结果。
在一种可选的实施方式中,程序410还用于使得处理器402在使用所述例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告时,若请求时间段的请求结束时间晚于最近的所述例行检索匹配结果中的检索时间段的检索结束时间,则根据所述请求结束时间和所述检索结束时间,确定补充检索时间段;根据所述补充检索时间段对所述文件迁移日志进行检索,并获取补充检索结果;根据所述补充检索结果和所述例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告。
在一种可选的实施方式中,程序410还用于使得处理器402在使用所述例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告生成请求所请求的迁移报告时,若请求时间段的请求结束时间早于或等于最近的所述例行检索匹配结果的检索时间段的检索结束时间,则获取最近的所述例行检索匹配结果的检索时间段的检索开始时间到所述请求结束时间的部分检索结果;根据所述部分检索结果和剩余例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告,所述剩余例行检索匹配结果为所有的所述例行检索匹配结果中除最新的所述例行检索匹配结果之外的例行检索匹配结果。
在一种可选的实施方式中,程序410还用于使得处理器402在接收用户的迁移报告生成请求之前,在数据迁移过程中,按照预设的检索周期对所述文件迁移日志进行例行检索,以获取包含迁移文件的信息的例行检索结果;将获取的例行检索结果保存至对象存储文件中。
在一种可选的实施方式中,程序410还用于使得处理器402在将获取的例行检索结果保存至对象存储文件中时,针对每个例行检索结果,确定用于存储当前例行检索结果的对象存储文件的大小是否满足设定阈值;若未满足设定阈值,则将当前的例行检索结果保存至所述对象存储文件中。
在一种可选的实施方式中,程序410还用于使得处理器402在将获取的例行检索结果保存至对象存储文件中时,若满足设定阈值,则创建新的对象存储文件,并将当前例行检索结果保存至新的对象存储文件中。
程序410中各步骤的具体实现可以参见上述迁移报告的生成方法实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
需要指出,根据实施的需要,可将本发明实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本发明实施例的目的。
上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如CD ROM、RAM、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如ASIC或FPGA)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,RAM、ROM、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的迁移报告的生成方法。此外,当通用计算机访问用于实现在此示出的迁移报告的生成方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的迁移报告的生成方法的专用计算机。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的范围。
以上实施方式仅用于说明本发明实施例,而并非对本发明实施例的限制,有关技术领域的普通技术人员,在不脱离本发明实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明实施例的范畴,本发明实施例的专利保护范围应由权利要求限定。
Claims (9)
1.一种迁移报告的生成方法,包括:
在数据迁移过程中,按照预设的检索周期对文件迁移日志进行例行检索,以获取包含迁移文件的信息的例行检索结果;
将获取的例行检索结果保存至对象存储文件中;
接收用户的迁移报告生成请求,其中,所述迁移报告生成请求中携带有请求生成的迁移报告所属的请求时间段;
根据所述请求时间段,从预先生成的例行检索结果中确定匹配的例行检索匹配结果,其中,每个例行检索结果对应一个检索时间段;
根据所述例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告。
2.根据权利要求1所述的方法,其中,所述根据所述请求时间段,从预先生成的例行检索结果中确定匹配的例行检索匹配结果,包括:
从预先生成的例行检索结果中,确定至少部分检索时间段与所述请求时间段重合的例行检索结果,作为所述例行检索匹配结果。
3.根据权利要求1或2所述的方法,其中,所述根据所述例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告,包括:
若请求时间段的请求结束时间晚于最近的所述例行检索匹配结果中的检索时间段的检索结束时间,则根据所述请求结束时间和所述检索结束时间,确定补充检索时间段;
根据所述补充检索时间段对所述文件迁移日志进行检索,并获取补充检索结果;
根据所述补充检索结果和所述例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告。
4.根据权利要求1或2所述的方法,其中,所述根据所述例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告,包括:
若请求时间段的请求结束时间早于或等于最近的所述例行检索匹配结果的检索时间段的检索结束时间,则获取最近的所述例行检索匹配结果的检索时间段的检索开始时间到所述请求结束时间的部分检索结果;
根据所述部分检索结果和剩余例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告,所述剩余例行检索匹配结果为所有的所述例行检索匹配结果中除最新的所述例行检索匹配结果之外的例行检索匹配结果。
5.根据权利要求1所述的方法,其中,所述将获取的例行检索结果保存至对象存储文件中,包括:
针对每个例行检索结果,确定用于存储当前例行检索结果的对象存储文件的大小是否满足设定阈值;
若未满足设定阈值, 则将当前的例行检索结果保存至所述对象存储文件中。
6.根据权利要求5所述的方法,其中,所述将获取的例行检索结果保存至对象存储文件中,还包括:
若满足设定阈值,则创建新的对象存储文件,并将当前例行检索结果保存至新的对象存储文件中。
7.一种迁移报告的生成装置,包括:
例行检索模块,用于在数据迁移过程中,按照预设的检索周期对文件迁移日志进行例行检索,以获取包含迁移文件的信息的例行检索结果;
结果存储模块,用于将获取的例行检索结果保存至对象存储文件中;
接收模块,用于接收用户的迁移报告生成请求,其中,所述迁移报告生成请求中携带有请求生成的迁移报告所属的请求时间段;
第一确定模块,用于根据所述请求时间段,从预先生成的例行检索结果中确定匹配的例行检索匹配结果,其中,每个例行检索结果对应一个检索时间段;
第一生成模块,用于根据所述例行检索匹配结果,生成包含所述迁移文件的信息的迁移报告。
8.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-6中任一项所述的迁移报告的生成方法对应的操作。
9.一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1-6中任一所述的迁移报告的生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010112744.8A CN113297145B (zh) | 2020-02-24 | 2020-02-24 | 迁移报告的生成方法、装置、电子设备及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010112744.8A CN113297145B (zh) | 2020-02-24 | 2020-02-24 | 迁移报告的生成方法、装置、电子设备及计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113297145A CN113297145A (zh) | 2021-08-24 |
CN113297145B true CN113297145B (zh) | 2023-12-22 |
Family
ID=77317768
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010112744.8A Active CN113297145B (zh) | 2020-02-24 | 2020-02-24 | 迁移报告的生成方法、装置、电子设备及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113297145B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110007864A (zh) * | 2019-04-11 | 2019-07-12 | 苏州浪潮智能科技有限公司 | 一种数据处理方法、装置、设备及可读存储介质 |
CN110245125A (zh) * | 2019-05-20 | 2019-09-17 | 中国平安人寿保险股份有限公司 | 数据迁移方法、装置、计算机设备和存储介质 |
CN110377580A (zh) * | 2019-07-25 | 2019-10-25 | 中国工商银行股份有限公司 | 一种数据迁移方法、装置及设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0622738D0 (en) * | 2006-11-15 | 2006-12-27 | Ibm | Methods and apparatus for assisted migration in a data processing environment |
WO2016138474A1 (en) * | 2015-02-26 | 2016-09-01 | Bittitan, Inc. | Data migration systems and methods including archive migration |
CN106953893A (zh) * | 2017-02-15 | 2017-07-14 | 北京百度网讯科技有限公司 | 云存储系统间的数据迁移 |
-
2020
- 2020-02-24 CN CN202010112744.8A patent/CN113297145B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110007864A (zh) * | 2019-04-11 | 2019-07-12 | 苏州浪潮智能科技有限公司 | 一种数据处理方法、装置、设备及可读存储介质 |
CN110245125A (zh) * | 2019-05-20 | 2019-09-17 | 中国平安人寿保险股份有限公司 | 数据迁移方法、装置、计算机设备和存储介质 |
CN110377580A (zh) * | 2019-07-25 | 2019-10-25 | 中国工商银行股份有限公司 | 一种数据迁移方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113297145A (zh) | 2021-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110069572B (zh) | 基于大数据平台的hive任务调度方法、装置、设备及存储介质 | |
US10817386B2 (en) | Virtual machine recovery method and virtual machine management device | |
CN107689976B (zh) | 一种文件传输方法及装置 | |
CN113824760B (zh) | 文件并发分块上传方法、装置、电子设备及存储介质 | |
CN114021507B (zh) | 一种自动化集成电路并行仿真方法 | |
CN113485962B (zh) | 日志文件的存储方法、装置、设备和存储介质 | |
EP3842955A2 (en) | File directory traversal method, apparatus, device, and medium | |
CN111865718A (zh) | 一种网关离线数据存储方法、装置、设备及介质 | |
CN112667527A (zh) | 一种确保客户端数据采集准确性的方法及客户端 | |
CN111490947A (zh) | 数据包发送方法、数据包接收方法、系统、设备及介质 | |
CN109766317B (zh) | 一种文件的删除方法、装置、设备及存储介质 | |
CN109388651B (zh) | 一种数据处理方法和装置 | |
CN113297145B (zh) | 迁移报告的生成方法、装置、电子设备及计算机存储介质 | |
CN111984196A (zh) | 一种文件迁移方法、装置、设备及可读存储介质 | |
CN111147226B (zh) | 数据存储方法、装置及存储介质 | |
CN111431951B (zh) | 一种数据处理方法、节点设备、系统及存储介质 | |
CN111881086B (zh) | 大数据的存储方法、查询方法、电子装置及存储介质 | |
CN114116655A (zh) | 基于虚拟机的并行文件存储方法、装置、设备及存储介质 | |
CN113326242A (zh) | 数据处理方法、装置、电子设备及计算机存储介质 | |
CN108376104B (zh) | 节点调度方法及装置、计算机可读存储介质 | |
CN113709209B (zh) | 一种服务器软件下载方法、系统及计算机可读存储介质 | |
CN110213314B (zh) | 确定存储节点的方法、装置、服务器 | |
CN108449343B (zh) | Ssh协议文本数据采集方法、采集器及计算机设备 | |
CN115858472A (zh) | 一种数据处理方法、装置、服务器及介质 | |
CN114741370A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40057450 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |