一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

存储单元的冗余级别更改方法、装置、设备及存储介质与流程

2022-03-02 02:50:23 来源:中国专利 TAG:


1.本技术涉及数据存储技术领域,具体涉及一种存储单元的冗余级别更改方法、装置、电子设备及计算机可读存储介质。


背景技术:

2.目前,高性能存储介质ssd(即固态硬盘)已大规模商用。在分布式存储领域,基于全ssd的全闪存分布式存储系统也已推出,例如fusionstorage 8.0分布式存储系统。在分布式全闪系统中,为防止单点故障导致数据丢失,通常使用副本或者纠删码(error code,简称ec)对数据做冗余保护。
3.在实际的应用中副本或纠删码的冗余级别也是用户根据自己的性能、可靠性和成本需求可配置的。比如ec4 2:可承受2块盘同时故障,而确保数据也不会丢失,但其可用容量只有硬盘容量的66.7%;而ec4 1:只可以承受1块盘故障而确保数据不丢失,但其可用容量有硬盘容量的80%。因此不同需求的用户会根据自己对成本及可靠性的需求选择合适的冗余级别;然而也有部分用户在刚开始部署存储系统的时候没有选择最优的冗余级别,后续运行一段时间后才能发现最适合自身的冗余级别:比如有些用户一开始选择ec4 2,但是后面存储数据量需求上升,但是又不想扩容,而且也觉得可以牺牲可靠性但不能丢失原有的数据也不能中断业务,那这个时候用户就希望能够在线更改冗余级别。具体如何高效、快速地实现在线更改冗余级别是当前亟待解决的一个技术问题。


技术实现要素:

4.本技术的目的是提供一种存储单元的冗余级别更改方法、装置、电子设备及计算机可读存储介质。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。
5.根据本技术实施例的一个方面,提供一种存储单元的冗余级别更改方法,应用于计算设备,包括:
6.在接收到冗余级别更改指令时,从各存储单元中提取出有效数据并清除其他数据;
7.根据所述冗余级别更改指令,将所有空置的存储单元设置为新冗余级别的存储单元;
8.对提取出的所述有效数据以及新输入的数据进行聚合,得到聚合后的数据;
9.将所述聚合后的数据存入所述新冗余级别的存储单元中。
10.在本技术的一些实施例中,在所述从各存储单元中提取出有效数据并清除其他数据之前,所述方法还包括:
11.设定所述各存储单元的数据处理优先级;
12.所述从各存储单元中提取出有效数据并清除其他数据,包括:按照所述数据处理
优先级依次从所述各存储单元中提取出有效数据并清除其他数据。
13.在本技术的一些实施例中,所述设定所述各存储单元的数据处理优先级,包括:
14.获取各所述存储单元中的垃圾数据占比,根据所述垃圾数据占比将各所述存储单元划分为多个占比级别;所述垃圾数据占比与所述占比级别呈正相关;
15.获取各所述存储单元中的数据存储时长,根据所述数据存储时长将各所述存储单元划分为多个时长级别;所述数据存储时长与所述时长级别呈正相关;
16.比较所述各存储单元的占比级别,设定所述占比级别与所述数据处理优先级呈正相关;
17.对同一占比级别的各存储单元的时长级别进行比较,设定所述同一占比级别的各存储单元的数据处理优先级与时长级别呈正相关。
18.在本技术的一些实施例中,所述获取各所述存储单元中的垃圾数据占比,根据所述垃圾数据占比将各所述存储单元划分为多个占比级别,包括:
19.重复检测各所述存储单元中的垃圾数据占比,根据最近一次检测到的垃圾数据占比重新将各所述存储单元划分为多个占比级别。
20.在本技术的一些实施例中,所述获取各所述存储单元中的数据存储时长,根据所述数据存储时长将各所述存储单元划分为多个时长级别,包括:
21.重复检测各所述存储单元中的数据存储时长,根据最近一次检测到的数据存储时长重新将各所述存储单元划分为多个时长级别。
22.在本技术的一些实施例中,所述重复检测各所述存储单元中的数据存储时长,包括周期性地检测各所述存储单元中的数据存储时长。
23.在本技术的一些实施例中,所述冗余级别更改指令包括将旧冗余级别的存储单元更改为新冗余级别的信息;所述从各存储单元中提取出有效数据并清除其他数据,包括:
24.按照第一数据处理速率从各存储单元中提取出有效数据并清除其他数据;
25.所述方法还包括:当所有的所述存储单元均更改为所述新冗余级别之后,按照第二数据处理速率回收各所述存储单元;
26.其中,所述第二数据处理速率小于所述第一数据处理速率。
27.根据本技术实施例的另一个方面,提供一种存储单元的冗余级别更改装置,应用于计算设备,包括:
28.数据回收模块,用于在接收到冗余级别更改指令时,从各存储单元中提取出有效数据并清除其他数据;
29.冗余级别设置模块,用于根据所述冗余级别更改指令,将所有空置的存储单元设置为新冗余级别的存储单元;
30.数据聚合模块,用于对提取出的所述有效数据以及新输入的数据进行聚合,得到聚合后的数据;
31.存储操作模块,用于将所述聚合后的数据存入所述新冗余级别的存储单元中。
32.根据本技术实施例的另一个方面,提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现上述任一项所述的存储单元的冗余级别更改方法。
33.根据本技术实施例的另一个方面,提供一种计算机可读存储介质,其上存储有计
算机程序,该程序被处理器执行,以实现上述任一项所述的存储单元的冗余级别更改方法。
34.本技术实施例的其中一个方面提供的技术方案可以包括以下有益效果:
35.本技术实施例提供的存储单元的冗余级别更改方法,从各存储单元中提取出有效数据并清除其他数据,将所有空置的存储单元设置为新冗余级别的存储单元,对提取出的有效数据以及新输入的数据进行聚合,将聚合后的数据存入新冗余级别的存储单元中,实现了高效、快速的冗余级别在线更改,执行过程中占用的计算资源较少。
36.本技术的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者,部分特征和优点可以从说明书中推知或毫无疑义地确定,或者通过实施本技术实施例了解。
附图说明
37.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
38.图1示出了一个实施例一种实施方式的存储单元的冗余级别更改方法流程图;
39.图2示出了一个实施例另一实施方式的存储单元的冗余级别更改方法流程图;
40.图3示出了图2中的步骤s00步骤流程图;
41.图4示出了一个实施例一种实施方式的存储单元的冗余级别更改装置结构框图;
42.图5示出了一个实施例另一实施方式的存储单元的冗余级别更改装置结构框图;
43.图6示出了图5中的设定模块的结构框图;
44.图7示出了一个实施例的电子设备的结构框图;
45.图8示出了一个实施例的计算机可读存储介质的示意图。
具体实施方式
46.为了使本技术的目的、技术方案及优点更加清楚明白,下面结合附图和具体实施例对本技术做进一步说明。应当理解,此处所描述的具体实施例仅用以解释本技术,并不用于限定本技术。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
47.本领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本技术所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
48.在例如分布式全闪系统的存储系统中,采用row(redirect-on-write,写时重定向)的方式写入数据会更能发挥ssd盘的性能优势,同时对重删、压缩特性能更好的支持。但row的写入方式是全新写的模式,必须配合gc(garbage collection,垃圾回收)来及时释放空间才能持续的支持row写入数据。
49.热点数据修改较为频繁,不需要长期存储在存储系统中,因此不需要进行迁移。发
明人发现现有的技术中,有的技术方案没有进行热点数据识别,导致对很多热点数据进行了不必要的迁移;有的技术方案需要用额外的智能统计算法来识别热点数据,导致额外增加了后台任务,额外的数据读取和数据写入操作,增加了存储系统的整体负担。
50.在本技术的实施例中,计算设备接收到冗余级别更改指令时,启动垃圾回收功能和写时重定向功能。写时重定向指的是为了保护原数据,将对原数据存储空间的写操作重新定向到另一个存储空间的操作。利用垃圾回收功能可以完成在线更改冗余级别的数据搬移。
51.如图1所示,本技术的一个实施例提供了一种存储单元的冗余级别更改方法,应用于计算设备,该方法包括步骤s10-步骤s40:
52.s10、在接收到冗余级别更改指令时,从各存储单元中提取出有效数据并清除其他数据。
53.冗余级别更改指令是由用户通过输入设备例如鼠标或键盘等输入给计算设备的指令。计算设备接收到冗余级别更改指令时,从各存储单元中提取出有效数据并清除其他数据。计算设备例如可以是计算机或服务器等设备。
54.在某些实施方式中,所述冗余级别更改指令包括将旧冗余级别的存储单元更改为新冗余级别的信息。所述从各存储单元中提取出有效数据并清除其他数据,包括:按照第一数据处理速率从各存储单元中提取出有效数据并清除其他数据。为了快速满足用户切换数据冗余级别的需求,在此过程中会加速垃圾数据回收,以较高的第一数据处理速率进行垃圾数据回收,第一数据处理速率可以根据实际需求来设定。垃圾回收的时候优先选择旧冗余级别的数据表中有效数据最少的数据块进行回收。
55.从各存储单元中提取出有效数据并清除其他数据之后,对应得到各空置的存储单元,这是垃圾回收的过程。
56.s20、根据所述冗余级别更改指令,将所有空置的存储单元设置为新冗余级别的存储单元。
57.冗余级别更改指令包括将旧冗余级别的存储单元更改为新冗余级别的信息,根据将旧冗余级别的存储单元更改为新冗余级别的信息,将所有空置的存储单元设置为新冗余级别的存储单元。
58.s30、对提取出的所述有效数据以及新输入的数据进行聚合,得到聚合后的数据。
59.发明人发现现有的在线更改冗余级别的技术通常是用户下发了更改冗余级别的需求之后,将新写的数据写入新的冗余级别的空间中,对于旧的数据则需要通过在线数据迁移的方式迁到新的冗余级别的空间中。
60.本实施例中,在从各存储单元中提取出有效数据的过程中,会不断有新的数据输入,此时,将提取出的所述有效数据以及新输入的数据进行聚合,得到聚合后的数据。可以是基于新的冗余级别将有效数据与外部输入数据进行聚合,得到聚合后的数据。聚合可以是一种将提取出的有效数据与新输入的数据进行整合的操作。
61.s40、将所述聚合后的数据存入所述新冗余级别的存储单元中。
62.例如,通过垃圾回收功能可以将原本存储的数据块信息(例如可以只是几十字节的内存信息)以及新输入的数据按照新冗余级别存储于不同的存储单元中。存储单元例如可以为数据表。
63.在某些实施方式中,如图2所示,在所述从各存储单元中提取出有效数据并清除其他数据之前,所述方法还包括步骤s00:
64.s00、设定所述各存储单元的数据处理优先级。
65.具体地,可以为每个待回收写时重定向对象设置垃圾量档位和存在时长档位两种档位,根据该两种档位设定各存储单元的数据处理优先级。
66.在设定所述各存储单元的数据处理优先级之后,所述从各存储单元中提取出有效数据并清除其他数据,包括:按照所述数据处理优先级依次从所述各存储单元中提取出有效数据并清除其他数据。
67.在某些实施方式中,如图3所示,步骤s00包括步骤s001-步骤s004:
68.s001、获取各所述存储单元中的垃圾数据占比,根据所述垃圾数据占比将各所述存储单元划分为多个占比级别;所述垃圾数据占比与所述占比级别呈正相关。
69.在某些实施方式中,步骤s001包括:重复检测各所述存储单元中的垃圾数据占比,根据最近一次检测到的垃圾数据占比重新将各所述存储单元划分为多个占比级别。
70.存储单元中的垃圾数据的占比级别可以根据垃圾数据占比的值进行划分,例如,可以根据垃圾数据占比的值分别达到90%、80%、
……
10%、0%对应设置10个占比级别,即当垃圾数据占比的值位于区间(90%,100%]时,对应占比级别为10级,当垃圾数据占比的值达到(80%,90%]时,对应占比级别为9级,
……
,当垃圾数据占比的值大于[0%,10%]时,对应占比级别为1级。具体地,占比级别划分方式的一个例子如下表1所示:
[0071]
表1占比级别划分方式
[0072][0073][0074]
当存储单元上产生新的垃圾数据的时候,则更新垃圾数据的占比并根据更新后的垃圾数据的占比判断是否需要重新调整该存储单元的占比级别。占比级别的设置需合理,若级别设置过多会导致存储单元占比级别调节频繁而消耗较多cpu计算资源,而若占比级
别设置过少又会影响对待回收的存储单元的选择。
[0075]
s002、获取各所述存储单元中的数据存储时长,根据所述数据存储时长将各所述存储单元划分为多个时长级别;所述数据存储时长与所述时长级别呈正相关。
[0076]
在某些实施方式中,步骤s002包括:重复检测各所述存储单元中的数据存储时长,根据最近一次检测到的数据存储时长重新将各所述存储单元划分为多个时长级别。
[0077]
具体地,所述重复检测各所述存储单元中的数据存储时长,包括周期性地检测各所述存储单元中的数据存储时长,以及非周期性地检测各所述存储单元中的数据存储时长,具体可以根据实际需要进行选择。
[0078]
存在时长的计算是从该写时重定向对象完成数据写入开始计算时间,时间越长说明该存储单元上面保存的数据越“冷”,“冷”的程度越严重。可以定时检测存储单元的数据存储时长,数据存储时长每超过超时阈值一次,则上调一个时长级别。这个超时阈值是可调整的,具体可以根据实际需要进行设置,例如可设置超时阈值为1小时,也可以根据实际需要设置超时阈值为其他时长。
[0079]
s003、比较所述各存储单元的占比级别,设定所述占比级别与所述数据处理优先级呈正相关。
[0080]
设定占比级别与数据处理优先级呈正相关即设定占比级别越高则数据处理优先级越高。例如表1中的占比级别1级到10级所对应的数据处理优先级依次递增。存储单元例如可以是数据块,通过s003可以实现按照各数据块中所含有的有效数据量从小到大的顺序依次对数据块进行回收。
[0081]
s004、对同一占比级别的各存储单元的时长级别进行比较,设定所述同一占比级别的各存储单元的数据处理优先级与时长级别呈正相关。
[0082]
设定同一占比级别的各存储单元,时长级别越高,数据处理优先级越高。例如,有四个存储单元,分别为a、b、c和d,a、b、c和d中,垃圾数据占比的值分别为72%,46%,48%和68%,则对应的占比级别分别为8级、5级、5级和7级,b和c的占比级别均为5级,则根据b和c的时长级别设定b和c的优先级,假设b的时长级别小于c的时长级别,则b的优先级小于c的优先级,该四个存储单元对应的优先级关系为d》a》c》b,即d的优先级大于a的优先级,a的优先级大于c的优先级,c的优先级等于b的优先级。
[0083]
上述的设定所述各存储单元的数据处理优先级的步骤s001-s004,优先选择垃圾数据占比级别最高的写时重定向对象(本实施例中的对象即存储单元),这样可以确保有效数据的搬移次数较少;在同一占比级别内的各存储单元,有效数据百分比相差不大,搬移次数则相对接近,因此,可以随机确定同一占比级别内各存储单元的优先级,也可以根据时长级别确定各存储单元的优先级;由于占比级别的数量有限,而实际应用的数据量又很大,每个占比级别又会有很多写时重定向对象,可以在同一占比级别内按照时长级别确定各存储单元的优先级,设定同一占比级别的各存储单元,时长级别越高,数据处理优先级越高,这样可确保每次回收的都是最冷的数据。
[0084]
例如,存储空间为10t(这个在当前应用中算比较小的),每个写时重定向对象(写时重定向对象即写时重定向存储单元)为4m,占比级别按表1所示的方式设为10档,那么每个占比级别平均会对应262144个写时重定向对象,即使每次回收100个写时重定向对象,也只是每个占比级别的1/2621的数据,按照时长级别可分为1000个级别,级别最高的一定是
冷数据。同时,每次回收搬移的数据其“冷”的程度差不多,将其重新搬移到同一个新的写时重定向对象的时候,其上面的数据的修改繁忙程度基本一致(这会导致后续这个新的写时重定向对象上面的数据修改时间大体一致,那么后续这个写时重定向对象不仅会长时间存放冷数据,同时数据修改之后其垃圾数据也会极少),这样会使得后续垃圾回收搬移数据量越来越少,从而大幅提升垃圾数据回收效率,从而带来存储系统整体性能及使用寿命的提升。
[0085]
在某些实施方式中,所述方法还包括:s50、当所有的所述存储单元均更改为所述新冗余级别之后,按照第二数据处理速率回收各所述存储单元;其中,所述第二数据处理速率小于所述第一数据处理速率。
[0086]
垃圾回收将旧冗余级别的数据全部回收完之后,恢复原来的回收速度,继续回收新冗余级别的数据,可以节省计算资源。数据处理速率越高,则占用的计算资源越多,第二数据处理速率小于所述第一数据处理速率,则当所有的所述存储单元均更改为所述新冗余级别,完成了更改冗余级别的任务,然后改为采用第二数据处理速率,这样可以比采用第一数据处理速率节省更多的计算资源。
[0087]
由于垃圾回收本身是后台任务,因此对主机输入输出的时延没有影响;而且垃圾回收本身也要搬移数据,在此过程中就不会产生额外的开销。另外,垃圾回收选中的写时重定向存储单元本身是垃圾数据占比较大的存储单元,其中残存的有效数据都是长时间未修改的冷数据,这样就会减少热数据的搬移次数,减少写入的次数,从而带来存储系统整体性能的提升以及寿命的提升。
[0088]
在线更改冗余级别,利用垃圾回收自身的选择算法,自动选择冷数据进行数据搬移,减少热数据的搬移次数,减少数据写入的次数,从而带来存储系统整体性能及寿命的提升。解决了在线更改冗余级别时数据迁移过程中产生的额外写放大问题,解决了热点数据冗余迁移的问题。
[0089]
如图4所示,本技术的另一个实施例提供了一种存储单元的冗余级别更改装置,包括:
[0090]
数据回收模块,用于在接收到冗余级别更改指令时,从各存储单元中提取出有效数据并清除其他数据;
[0091]
冗余级别设置模块,用于根据所述冗余级别更改指令,将所有空置的存储单元设置为新冗余级别的存储单元;
[0092]
数据聚合模块,用于对提取出的所述有效数据以及新输入的数据进行聚合,得到聚合后的数据;
[0093]
存储操作模块,用于将所述聚合后的数据存入所述新冗余级别的存储单元中。
[0094]
在某些实施方式中,如图5所示,上述冗余级别更改装置,还包括设定模块;设定模块用于在所述从各存储单元中提取出有效数据并清除其他数据之前,设定所述各存储单元的数据处理优先级。
[0095]
所述从各存储单元中提取出有效数据并清除其他数据,包括:按照所述数据处理优先级依次从所述各存储单元中提取出有效数据并清除其他数据。
[0096]
在某些实施方式中,如图6所示,上述设定模块包括:
[0097]
第一划分单元,用于获取各所述存储单元中的垃圾数据占比,根据所述垃圾数据
占比将各所述存储单元划分为多个占比级别;所述垃圾数据占比与所述占比级别呈正相关;
[0098]
第二划分单元,用于获取各所述存储单元中的数据存储时长,根据所述数据存储时长将各所述存储单元划分为多个时长级别;所述数据存储时长与所述时长级别呈正相关;
[0099]
第一设定单元,用于比较所述各存储单元的占比级别,设定所述占比级别与所述数据处理优先级呈正相关;
[0100]
第二设定单元,用于对同一占比级别的各存储单元的时长级别进行比较,设定所述同一占比级别的各存储单元的数据处理优先级与时长级别呈正相关。
[0101]
在某些实施方式中,第一划分单元进一步具体用于重复检测各所述存储单元中的垃圾数据占比,根据最近一次检测到的垃圾数据占比重新将各所述存储单元划分为多个占比级别。
[0102]
在某些实施方式中,第二划分单元进一步具体用于重复检测各所述存储单元中的数据存储时长,根据最近一次检测到的数据存储时长重新将各所述存储单元划分为多个时长级别。所述重复检测各所述存储单元中的数据存储时长,包括周期性地检测各所述存储单元中的数据存储时长。
[0103]
在某些实施方式中,所述冗余级别更改指令包括将旧冗余级别的存储单元更改为新冗余级别的信息;所述从各存储单元中提取出有效数据并清除其他数据,包括:
[0104]
按照第一数据处理速率从各存储单元中提取出有效数据并清除其他数据;
[0105]
在某些实施方式中,所述冗余级别更改装置还包括第二回收模块,用于当所有的所述存储单元均更改为所述新冗余级别之后,按照第二数据处理速率回收各所述存储单元;其中,所述第二数据处理速率小于所述第一数据处理速率。
[0106]
本技术的另一个实施例提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现上述任一实施方式的存储单元的冗余级别更改方法。
[0107]
如图7所示,所述电子设备10可以包括:处理器100,存储器101,总线102和通信接口103,所述处理器100、通信接口103和存储器101通过总线102连接;所述存储器101中存储有可在所述处理器100上运行的计算机程序,所述处理器100运行所述计算机程序时执行本技术前述任一实施方式所提供的方法。
[0108]
其中,存储器101可能包含高速随机存取存储器(ram:random access memory),也可能还可以包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口103(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。
[0109]
总线102可以是isa总线、pci总线或eisa总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器101用于存储程序,所述处理器100在接收到执行指令后,执行所述程序,前述本技术实施例任一实施方式揭示的所述方法可以应用于处理器100中,或者由处理器100实现。
[0110]
处理器100可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器100中的硬件的集成逻辑电路或者软件形式的指令完成。上
述的处理器100可以是通用处理器,可以包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器101,处理器100读取存储器101中的信息,结合其硬件完成上述方法的步骤。
[0111]
本技术实施例提供的电子设备与本技术实施例提供的方法出于相同的发明构思,具有与其采用、运行或实现的方法相同的有益效果。
[0112]
本技术的另一个实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,以实现上述任一实施方式的存储单元的冗余级别更改方法。
[0113]
请参考图8,其示出的计算机可读存储介质为光盘20,其上存储有计算机程序(即程序产品),所述计算机程序在被处理器运行时,会执行前述任意实施方式所提供的方法。
[0114]
需要说明的是,所述计算机可读存储介质的例子还可以包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
[0115]
本技术的上述实施例提供的计算机可读存储介质与本技术实施例提供的方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
[0116]
需要说明的是:
[0117]
术语“模块”并非意图受限于特定物理形式。取决于具体应用,模块可以实现为硬件、固件、软件和/或其组合。此外,不同的模块可以共享公共组件或甚至由相同组件实现。不同模块之间可以存在或不存在清楚的界限。
[0118]
在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备固有相关。各种通用装置也可以与基于在此的示例一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本技术也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本技术的内容,并且上面对特定语言所做的描述是为了披露本技术的最佳实施方式。
[0119]
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0120]
以上所述实施例仅表达了本技术的实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,
在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献