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

一种大数据场景下的数据分割方法

2022-05-18 02:22:21 来源:中国专利 TAG:


1.本发明涉及大数据处理领域,具体来说涉及数据集分割技术领域,更具体地说,涉及一种大数据场景下的数据分割方法。


背景技术:

2.大数据场景中,通常涉及到对数据集进行分割以避免单次处理的数据条数过多或者过少而影响处理性能。
3.数据分析和处理服务可以对提交的数据进行数据分析和处理,由于算法效率,计算机资源问题,往往对一次提交的数据量有一定的约束。在大数据处理时,很多场景下由于业务场景的不同,数据分布具有很强的随机性,导致维度内的数据量大概率出现极少或者极多的情况,影响数据处理服务的吞吐量和服务的稳定性。如果一次处理的数据块过大,会造成服务系统压力过大,响应时间过长,甚至可能处理失败;如果一次处理的数据块过小,会造成请求的次数增多,降低服务系统在单位时间内的吞吐量。
4.假设数据处理服务系统的预期处理能力为n条/秒,而请求的数据也是n条,则数据处理服务系统的吞吐量能达到理论上的最大值。所以,将随机分布数据切分为近似均匀的数据块对系统的负载和可预测性具有很大意义。但是,在大数据场景下,从待处理数据中,将数据集合快速切分为均匀的数据块具有较大的挑战性,原因在于:
5.(1)真实的业务系统在单位时间接收的数据条数相对随机,甚至会有较大的波动,造成了数据集合在时间上的分布不均匀。例如,在闲时,可能出现若干单位时间内,业务系统收到的数据很少,甚至可能没有数据;在高峰时间,业务系统高负载,接收大量数据,比如10000条/s,或者更多;
6.(2)大数据场景中,形成完整的全局数据分布视图具有较高的时间复杂度和空间复杂度,代价较大。
7.现有技术对数据集合进行分割的方法如下:
8.现有方法1:将数据集分割为预定大小的数据块,其中每个数据块拥有预定的数据条数。此方案为理想情况,但是,实际情况往往很难达到这一点。如果通过遍历数据的方式获取n条数据,那么时间复杂度就是o(n)。处理过程中,涉及到所有数据的读入、处理和分块,往往会比较费时。而且如果在不改变原始数据的前提下,使用此方案,会有深度翻页的问题,随着数据的处理条数不断增多,当需要处理第m块n条数据时,需要先跳过前n*(m-1)条数据,然后再去除n条数据,此时的时间复杂则退化为o(n^2)。
9.现有方法2:使用数据中属性p的索引,可以快速确定p的取值为某一确定范围的数据条数,从而可以使用属性p的范围来快速分割数据。通过使用索引,可以使用类似折半查找的方式来探测数据范围区间。探测p∈[a,b],如果该区间数据条数小于n,且p∈[a,2b]数据条数大于n,那么认为p∈[a,b]为该数据集的一个合理的分割。该方法可以以o(log n)的时间复杂度,确定范围内的数据条数与n之间的大小关系。相比上一种方法,该方法使用额外的属性索引数据,具有更好的时间复杂度。但是该方法也有比较明显的缺点,首先是,此
方法严重依赖数据在属性维度的分布,可能会出现单个属性的一个取值上,数据量超过服务处理能力的情况;其次,该方法分割的数据范围相对粗糙,无法逼近服务处理能力n,例如p在[a,b]区间内数据条数很少,而在[a,2b]或者[a/2,b]数据条数很多,造成最终的数据分割结果与期望条数的偏离值较大,无法达到理论的服务吞吐量。


技术实现要素:

[0010]
因此,本发明的目的在于克服上述现有技术的缺陷,提供一种大数据场景下的数据分割方法。
[0011]
本发明的目的是通过以下技术方案实现的:
[0012]
根据本发明的第一方面,提供一种大数据场景下的数据分割方法,包括:获取探测区间,确定待分割的数据集合中属于探测区间内的区内数据条数;在区内数据条数不处于预定的容忍范围内时,对探测区间的右端点进行一次或者多次指数型调整直至得到使得区内数据条数处于容忍范围内的右端点或者越过容忍范围;在指数型调整导致区内数据条数越过容忍范围时,以当前的探测区间的右端点以及前一个探测区间的右端点构成的区间为查找范围,通过二分查找法确定使得区内数据条数处于容忍范围内的右端点;根据探测区间的左端点以及使得区内数据条数处于容忍范围内的右端点确定的分割区间对数据集合进行分割。
[0013]
在本发明的一些实施例中,对探测区间的右端点进行指数型调整包括利用以下公式计算右端点:
[0014]
right=left l*2c;
[0015]
其中,right表示探测区间的右端点,left表示探测区间的左端点,l表示探测区间的起始长度,c表示指数,c为整数。
[0016]
在本发明的一些实施例中,对探测区间的右端点进行一次或者多次指数型调整包括:在探测区间内的区内数据条数小于容忍范围的下界时,每次将指数c加1后重新确定区内数据条数;和/或在探测区间内的区内数据条数大于容忍范围的上界时,每次将指数c减1后重新确定区内数据条数。
[0017]
在本发明的一些实施例中,所述方法还包括:在对数据集合进行下一次分割前,根据上次的分割区间的长度以及右端点,确定下一次分割对应的探测区间,其中,下一次分割对应的探测区间的左端点为前次的分割区间的右端点加1,下一次分割对应的探测区间的右端点等于前次的分割区间的右端点加1再加前次的分割区间的长度。
[0018]
在本发明的一些实施例中,所述探测区间限定的范围为数据的时间属性,数据集合中任意数据对应的时间戳中记录的时间处于所述探测区间则表示该数据是属于探测区间内的区内数据。
[0019]
根据本发明的第二方面,一种数据在线迁移的方法,包括:根据处理器的各线程的处理能力以及容忍的偏差,得到容忍范围;利用第一方面所述的大数据场景下的数据分割方法对待分割的数据集合进行分割,得到一个或者多个数据块,其中,每个数据块中包含的数据条数处于容忍范围内;对数据块中的有效数据进行迁移并移除过时的数据。
[0020]
根据本发明的第三方面,一种电子设备,包括:一个或多个处理器;以及存储器,其中存储器用于存储可执行指令;所述一个或多个处理器被配置为经由执行所述可执行指令
以实现第一方面所述方法的步骤。
附图说明
[0021]
以下参照附图对本发明实施例作进一步说明,其中:
[0022]
图1为根据本发明实施例的大数据场景下的数据分割方法的流程示意图;
[0023]
图2为根据本发明实施例的大数据场景下的数据分割方法以及现有方法2对第一个数据块切分的效率效果图;
[0024]
图3是使用现有方法2连续切分数据集合的效果展示图;
[0025]
图4是使用本发明的方法连续切分数据集合的效果展示图。
具体实施方式
[0026]
为了使本发明的目的,技术方案及优点更加清楚明白,以下结合附图通过具体实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0027]
如在背景技术部分提到的,在大数据场景下,从待处理数据中,将数据集合快速切分为均匀的数据块具有较大的挑战性。
[0028]
发明人在大数据工作时,发现数据分割的合理程度,严重影响了数据处理的效率,为此对数据分割的策略进行了深入的研究和实验。
[0029]
发明人首先尝试使用了现有方法1中描述的固定单位长度的分割方法,但是该方法需要遍历部分数据、处理、再接着遍历数据,会出现了深度翻页的问题,导致数据分割效率远低于数据处理服务的能力,导致任务无法在有限的时间内完成。
[0030]
经过多次研究,发明人使用了现有方法2中的技术方案,由于前置过程中已经对数据集进行了部分重要属性建立索引,所以现有技术2也有一定的可行性。发明人选取了数据在时间属性维度上分布相对分散的特点,选取时间维度索引作为数据分割的依据。但是,发明人实践过程中发现,在探测的下一个区间时,该方法会出现数据量分布可能会急剧变化(例如,假设前一次探测的数据量为n
i-1
,n
i-1
》n,当前的探测量ni《n,且ni远小于n),导致分割效果不理想的情况。
[0031]
因此,本发明在对数据集合进行分割时,若探测区间内的区内数据条数不处于容忍范围内时,会对探测区间的右端点进行一次或者多次指数型调整(粗粒度的调整),从而更快地达到或者接近容忍范围,如果指数型调整导致区内数据条数越过容忍范围,则再以当前的探测区间的右端点以及前一个探测区间的右端点构成的区间为查找范围,通过二分查找法确定使得区内数据条数处于容忍范围内的右端点(细粒度的调整);由此,提高分割效率,以更高效地将数据集合分割成所需大小的数据块;而且,分割出的均匀的数据块也可减少不同数据块中数据量(数据条数)的波动,保障后续的数据处理过程的效率。
[0032]
根据本发明的一个实施例,本发明提供一种大数据场景下的数据分割方法,用于对数据集合进行一次或者多次分割以得到数据条数均匀的多个数据块。数据集合是包含多条数据的集合。例如,数据集合可以是数据库(例如,会员库)或者数据文件(例如.csv文件)。大数据场景下,数据集合中包括大量的数据,例如,包括百万条数据,或者,甚至更多。现有的分割算法对大数据场景下的数据集合的分割效率低下。因此,可以考虑对现有的分
割方法进行改进。在数据集合中,每一条数据包含时间属性(it属性),即数据时间戳,数据时间戳记录数据插入数据集合的时间。因此,可以通过查询(例如,利用查询接口或者查询系统),获得数据时间戳在某一范围[a,b]的数据条数。对于给定的数据集合,min(it)和max(it)分别是数据集合中数据时间戳的最小值和最大值,即数据集合的时间范围(待分割的范围)为:[min(it),max(it)]。本发明的目标任务是将数据集合的所有数据,分为若干数据块,每个数据块的数据条数逼近n。
[0033]
根据本发明的一个实施例,参见图1,大数据场景下的数据分割方法包括:获取探测区间,确定待分割的数据集合中属于探测区间内的区内数据条数;在区内数据条数不处于容忍范围内时,对探测区间的右端点进行一次或者多次指数型调整直至得到使得区内数据条数处于容忍范围内的右端点或者越过容忍范围;在指数型调整导致区内数据条数越过容忍范围时,以当前的探测区间的右端点以及前一个探测区间的右端点构成的区间为查找范围,通过二分查找法确定使得区内数据条数处于容忍范围内的右端点;根据探测区间的左端点以及使得区内数据条数处于容忍范围内的右端点确定的分割区间对数据集合进行分割。根据本发明的一个实施例,探测区间限定的范围为数据的时间属性,数据集合中任意数据对应的时间戳(数据的插入时间)中记录的时间处于所述探测区间则表示该数据是属于探测区间内的区内数据。
[0034]
根据本发明的一个实施例,假设探测区间为[left,right],其中,首次探测时,探测区间的左端点left=min(it),探测区间的长度为l,探测区间的右端点right=left l。l的初始值可以根据数据集合中数据的平均分布设置或者根据使用者的经验按需设置。例如,假设一个数据集合中平均一天的数据量接近所需数据块的大小,则可以将长度l的初始值设置为:l=60
×
60
×
24。即将长度l的初始值设置为一天对应的时长(单位为秒)。应当理解,也可以根据具体的情况下,将长度l的初始值设置得更小或者更大。
[0035]
根据本发明的一个实施例,对探测区间的右端点进行指数型调整包括利用以下公式计算右端点:right=left l*2c;其中,right表示探测区间的右端点,left表示探测区间的左端点,l表示探测区间的起始长度,c表示指数,c为整数。优选的,c的初始值通常设为0。即在一次分割开始探测时,right=left l*20=left l。应当理解,以上公式只是一种可选的方式,例如,根据具体应用场景中数据分布的情况,也可采用其他替代性的计算公式实现类似的效果。例如,若将底数设为3,利用公式right=left l*3c计算右端点,或者若将底数设为4,利用公式right=left l*4c计算右端点。
[0036]
根据本发明的一个实施例,对探测区间的右端点进行一次或者多次指数型调整包括:在探测区间内的区内数据条数小于容忍范围的下界时,每次将指数c增1后重新确定区内数据条数;和/或在探测区间内的区内数据条数大于容忍范围的上界时,每次将指数c减1后重新确定区内数据条数。根据本发明的一个实施例,确定探测区间内的区内数据条数与容忍范围的上界、下界的相对关系可以通过多种方式实现。假设容忍范围为[n-f,n f],其中,n表示分割出的数据块中所含数据条数的期望值,f表示浮动值(容忍的偏差)。例如,实现方式1:直接比较区内数据条数与容忍范围的下界n-f的大小以及与容忍范围的下界n f的大小,得到区内数据条数与容忍范围的上界、下界的相对关系。实现方式2:先判断区内数据条数是否落入容忍范围[n-f,n f],若否,再比较区内数据条数与n的相对关系,由此,也可得到区内数据条数与容忍范围的上界、下界的相对关系。比如,区内数据条数没有落入容
忍范围且比n小,则探测区间内的区内数据条数小于容忍范围的下界,或者,区内数据条数没有落入容忍范围且比n大,则探测区间内的区内数据条数大于容忍范围的上界。该实施例的技术方案至少能够实现以下有益技术效果:本发明通过指数型调整,可以粗精度地快速探测到符合容忍范围或者接近容忍范围的探测区间,由此,以比现有方式更高效地进行数据分割,特别是对大数据场景下的数据集合的分割,分割效率、效果更优。
[0037]
根据本发明的一个实施例,大数据场景下的数据分割方法还包括:在对数据集合进行下一次分割前,根据上次的分割区间的长度以及右端点,确定下一次分割对应的探测区间,其中,下一次分割对应的探测区间的左端点为前次的分割区间的右端点加1,下一次分割对应的探测区间的右端点等于前次的分割区间的右端点加1再加前次的分割区间的长度。根据本发明的一个实施例,假设分割区间[left

,right

]对数据集合进行一次分割,则数据集合中属于[left

,right

]的数据被分割到一个数据块。在对数据集合进行下一次分割前,根据上次的分割区间[left

,right

]的长度l=right
′‑
left

以及右端点right

,确定下一次分割对应的探测区间[left,right],其中,左端点left=right

1,右端点right=left l。该实施例的技术方案至少能够实现以下有益技术效果:本实施例使用前次分割的探测经验来确定下一次的分割对应的探测区间的长度,而不是每次都采用统一的初始值,有助于减少探测次数,提高分割效率。
[0038]
为了便于理解本发明的整体技术方案,此处用一个实施例来展示利用本发明的方法进行的数据分割的整体流程。根据本发明的一个实施例,一种大数据场景下的数据分割方法,包括步骤:
[0039]
a1:获取探测区间,确定待分割的数据集合中属于探测区间内的区内数据条数,转至步骤a2;
[0040]
a2:确定当前的区内数据条数是否处于容忍范围,
[0041]
若是,转至步骤a5;
[0042]
若否,判断是否经过指数型调整,若是,在指数型调整没有导致区内数据条数越过容忍范围时转至步骤a3,在指数型调整导致区内数据条数越过容忍范围时转至步骤a4,若否,转至步骤a3;
[0043]
a3:在区内数据条数不处于容忍范围内时,对探测区间的右端点进行调整,每次调整包括:在探测区间内的区内数据条数小于容忍范围的下界时,每次将指数c增1;或者,在探测区间内的区内数据条数大于容忍范围的上界时,每次将指数c减1;每次调整后转至步骤a1;
[0044]
a4:以当前的探测区间的右端点以及前一个探测区间的右端点构成的区间为查找范围,通过二分查找法确定使得区内数据条数处于容忍范围内的右端点,转至步骤a5;
[0045]
a5:根据探测区间的左端点以及使得区内数据条数处于容忍范围内的右端点确定的分割区间对数据集合进行分割,其中,将数据集合中属于分割区间的数据切分形成数据块,转至步骤a6;
[0046]
a6:确定当前数据集合是否完成分割,若是,结束分割,若否,在对数据集合进行下一次分割前,根据上次的分割区间的长度以及右端点,确定下一次分割对应的探测区间,其中,下一次分割对应的探测区间的左端点为前次的分割区间的右端点加1,下一次分割对应的探测区间的右端点等于前次的分割区间的右端点加1再加前次的分割区间的长度。
[0047]
根据本发明的一个实施例,指数型调整(指数探测)按照以下方式实现:
[0048]
从初始的探测区间[left,right]开始探测,设初始的指数c=0。很明显,min(it)≤left≤right≤max(it)。对于每个探测区间[left,right]:
[0049]
b1:计算探测区间[left,right]内的数据条数count
left,right
(对应于区内数据条数);
[0050]
b2:如果数据条数count
left,right
与n的差距在合理的容忍范围内,(即count
left,right
在真实目标数据块中数据条数范围[n-f,n f]内),则不需要进行继续探测,直接利用探测区间[left,right]对数据集合进行一次分割,得到数据块;否则,转至b3:
[0051]
b3:通过比较数据条数count
left,right
和n确定是放大探测区间,还是缩小探测区间,其中,如果是放大探测区间,则c ;如果是缩小探测区间,则c
‑‑
;然后更新right=left l*2c,c可以为零、正整数或负整数;
[0052]
比较数据条数count
left,right
和n时,发生探测方向反向(比如放大探测区间时放大的程度过大直接越过容忍范围,或者缩小探测区间时缩小的程度过大直接越过容忍范围,对应于指数型调整导致区内数据条数越过容忍范围),则启动线性探测(对应于二分查找法)。线性探测的区间就可以确定为当前right值和上次指数探测(指数型调整)的right

值。
[0053]
根据本发明的一个实施例,线性探测(二分查找法)按照以下方式实现:
[0054]
对于给定的left值和两个right值,有count[left,rights]<n<count[left,rightg],其中,rights=min(right,right

),rightg=max(right,right

),即rights,rightg分别为指数型调整的最后两次探测区间的右端点right的最小值和最大值,如果只进行了一次指数型调整,则rights、rightg分别为初始的探测区间的右端点和进行了一次指数型调整后探测区间的右端点中的最小值和最大值。采用二分查找法,以o(log n)的时间复杂度查找合理的right值。
[0055]
根据本发明的一个实施例,采用二分查找法按照以下方式确定探测区间的右端点:
[0056]
c1:如果rights<rightg,那么
[0057]
c2:如果count[left,mid]与n在合理误差范围(容忍范围)内,则mid即为探测区间的最终的右端点(最终上界),即数据块对应的区间为[left,mid],否则转至c3;
[0058]
c3:如果count[left,mid]与n没在合理误差范围内且count[left,mid]大于n,则rightg=mid-1;如果count[left,mid]与n没在合理误差范围内且count[left,mid]小于n,则rights=mid 1;
[0059]
c4:重复步骤c1~c3,直至找到使得区内数据条数处于容忍范围内的右端点。
[0060]
根据本发明的一个示例,下面用实际的示例进行举例,以便理解本发明的技术方案:
[0061]
例如,假设需要的数据块n=1000,min(it)=1641441330max(it)=1642436930。f为100,假设初始c=0,初始的l=60*60*24,初始的left=min(it)=1641441330,right=left l*20=1641527730。
[0062]
首先,获取初始的探测区间[left,right]的数据条数count
left,right

[0063]
假设count
left,right
=60000;因为n<count
left,right
,所以c
‑‑
,此时c=-1,right=left l*2-1
=1641484530,left不变,right变小,探测区间[left,right]的长度变小,会降低count
left,right
,直到count
left,right
≤n f。
[0064]
如果某个right取值,使得count
left,right
∈[n-f,n f],则数据块分割范围为[left,right]。
[0065]
如果随着c变小,right变小,导致相邻两次count
left,right
由大于n f直接跳到小于n-f,那么需要使用线性探索(二分查找法)优化right的值。假设前后的right分别为rightg=1641444030和rights=1641442680,线性探索的过程如下:
[0066]
d1:线性探索的
[0067]
d2:假设right=mid,获取count
left,right
,若count
left,right
∈[n-f,n f],则数据块分割范围为[left,right];否则,依据count
left,right
<n-f,则令rights=mid 1,重复线性探索,直至找到使得区内数据条数处于容忍范围内的右端点;或者,依据count
left,right
>n f,则令rightg=mid-1,重复线性探索,直至找到使得区内数据条数处于容忍范围内的右端点。
[0068]
为了验证本发明的效果,发明人进行了实验。在百万条数据集合上,对比相同n和f情况下,探测次数的情况来判断寻找切分点的效率(实际应用过程中,n和f可依据实际的数据平均分布估计,本实验中n=10000,f=1000)。
[0069]
本实验首先对比第一个数据块切分效率。如附图2,横坐标为不同的初始长度l,纵坐标为采用该初始长度设置探测区间后切割第一个数据块需要的探测次数。实验结果表明,在多种指定的初始长度l下,本发明的方法均可以更快地定位到初始切割点。由于初始切割点使用的是人工指定的l,所以探测的次数相对较大,后续自适应后,探测的数据次数会较少。
[0070]
实验还对比现有方法2与本发明的方法连续切分数据集合的情况,如图3、4所示,图3是现有方法2连续切分数据集合的情况,图4是本发明的方法连续切分数据集合的情况,横坐标是时间,纵坐标是探测次数。从图3、4中可以看出,本发明的方法,具有较低的平均探测次数,平均效率较高;更能应对数据的波动情况,数据波动对切割探测的影响更小。
[0071]
总的来说,本发明提出了一种大数据场景下的数据分割方法,该方法属于对数据的自适应分割方法,可以结合粗粒度(指数型调整)和细粒度(二分查找法)的探测过程,来快速切分数据集,使得切分出来的数据集逼近数据处理能力n,从而使得数据处理服务的吞吐量逼近理论值。本发明的方法可以在有限次的探测后,在数据的时间属性域上,找到一个数据区间,使得数据集合中属性值符合该区间的数据条数近似等于期望值。基于本发明的方法,可以将原本随机分布的数据近似均匀化,将数据集合快速分割为多个近似均匀的数据块,提交到下游数据处理程序,提升数据处理服务的吞吐量。
[0072]
发明人得到本发明的方法的过程较为不易,在得到本发明的方法前,已经做了很多的尝试。例如,首先尝试了在现有方法2的基础上,增加一个细化调优的过程,来逼近服务处理能力n。因为在探测数据范围内,数据条数时,使用的是折半策略,即:下次探测的查找的范围[a,b]相对当前[a,2b],会成倍数缩小。发明人认为,此过程中查找范围的过快变化,加上变化后,不做适当的调整,是导致数据量急剧变化的主要原因,所以在发生该现象后,
仅需要在[a,x],其中x∈[b,2b]中寻找合适的数据分割点。通过上述细化分割后,可以得到近似数据条数为n的数据块,但是该方法的查找分割点的探测次数过多,导致实际应用效率不理想。
[0073]
发明人在实践过程中还发现有少数情况下,会出现第一次探测时,范围内的数据量已经少于n,且仅仅是以线性扩展探测区间,需要的探测次数较多。
[0074]
经过多次实际的实验和研究,提出了本发明的方法,在出现数据量急剧变化时,以指数级的快速粗粒度探测和线性细粒度探测相结合的自适应分割方法,可以保证在有限次的探测次数内,快速定位到数据块。
[0075]
本发明可以应用到多种领域。例如,在大数据场景下,索引系统中,由于技术方案的选择,检索系统中单条数据删除操作仅做了删除标记,而不是真实删除(大多数检索系统为了保证插入和查询效率,都是此策略实现)。随着时间的积累,在线运行的检索系统中,包含了越来越多的过时数据(例如:任务的昵称信息更新,头像更新等),造成计算和存储资源的浪费,亟待清理。但是检索系统服务于多个在线业务系统,服务不能停止,所以需要实现在线数据迁移。总体目标是以数据分片为单位,迁移有效数据(例如:每个用户最新的昵称,头像),重新reindex数据,然后在线移除过时数据分片。在迁移过程中,为了保证迁移效率,迁移使用了多线程技术,每个线程处理一个数据块(一个数据分片会切割成若干数据块),数据块分割不均匀会造成线程负载不均,导致系统吞吐量无法有效提升。根据本发明的一个实施例,本发明可以应用于一种数据在线迁移的方法,该方法包括:根据处理器的各线程的处理能力以及容忍的偏差,得到容忍范围;获取本发明上述实施例的利用大数据场景下的数据分割方法将待分割的数据集合分割得到多个数据块,其中,每个数据块中包含的数据条数处于容忍范围内;对数据块中的有效数据进行迁移并移除过时的数据。
[0076]
需要说明的是,虽然上文按照特定顺序描述了各个步骤,但是并不意味着必须按照上述特定顺序来执行各个步骤,实际上,这些步骤中的一些可以并发执行,甚至改变顺序,只要能够实现所需要的功能即可。
[0077]
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
[0078]
计算机可读存储介质可以是保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以包括但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。
[0079]
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
再多了解一些

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

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

相关文献