用于管理数据的方法以及设备的制造方法_3

文档序号:8398649阅读:来源:国知局
0。
[0060]相反,在所示示例中,如果可用空间度量中的至少一个小于对应的阈值,那么可以确定针对所选择的数据存储装置需要使数据退役,并且所述方法前进到步骤430,在430标识由所选择的数据存储装置内存储的数据对象表示的数据对象组。
[0061]如上所述,数据存储装置120内在储的每个数据对象例如通过分配和存储组件160被指定给一个特定的数据对象组。数据对象可以基于数据的一个或多个退役优先组特性被指定给数据对象组,例如数据的一个或多个特性可以用于定义优先级以在其他类型的数据之前保留这那类型的数据。这样的退役优先级特性的示例在无线通信网络数据的情况下可谬包括以下各项中的一项或多项:
-空中接口技术;
-数据类型(例如简略通话数据,完整通话数据等);
-通话类型(例如,语音、视频数据等)
-用户类别(例如企业用户、私人用户、VIP用户、在某个号码中有IMSI结尾使得能够以伪随机用户选择为目标的用户等);
-地理位置;
-用户设备的装置类型(型号)或制造商;
-等等。
[0062]由所选择的数据存储装置内存储的数据对象表示的数据对象组可以按任何适当的方式标识。例如,在图3中所示的示例中,所选择的数据存储装置内存储的数据对象表示的数据对象组的指示可以包括在存储装置信息310内。
[0063]接着,在步骤435,针对每个标识的数据对象组确定退役优先级值。所标识的组的退役优先级值可以至少部分地基于对应组的最小保留时长值来计算。例如,针对每个数据对象组,可以在配置数据315内定义对应的组内用数据对象待保留的最小时间段(乙最小)。针对数据对象组的最小时间段(T_最小)可以定义在那个组内应当保留的数据对象的最小时长。相对于其他数据对象组,最小时间段(Τ_最小)可以反映单独数据对象组之间的所希望的时间关系目标;例如,哪个具有更高的退役优先级以及一个组的优先级比任何其他组高出多少。以此方式,相对退役优先级可以通过数据应该保持的最小时间段(Τ_最小)来调控。
[0064]所标识伯组的退役优先级值可以至少部分地基于对应组内的数据对象存储的时间段来进一步计算。例如,数据存储装置内存储的数据对象的时间戳信息可以包括在存储装置信息310内。这样的时间戳信息可以按任何适合的方式实现。例如:作为细粒度对象的数据本身的一部分(例如,表格行、数组列表(ArrayList)内的对象);作为粗粒度单元(分区、文件)的元数据;或其甚至可以结合到所使用的命名惯例中。
[0065]在本发明的某些示例中,考虑了数据对象组的退役优先级值可以至少部分地基于以下比率来计算:
退役优先级=(TSJ日-丁5_新)/乙最小。 [方程式I]
其中TS_旧是所选择的数据存储装置内的对就的数据对象组的最旧数据的时间戳,并且TS_新是在所选择的数据存储装置内的对应的数据对象组的最近数据的时间戳。因此,对于在图3中所示的示例,控制器320可以被安排成用于将对于每个数据对象组的最旧和最新(最近)的时间戳信息TS_旧和TS_新以及最小时间段T_最小提供到优先级值计算器组件340。然后,优先级值计算器组件340可以计算每个数据对象组的退役优先级值并将退役优先级值返回至控制器320。
[0066]返回参照图4,已经确定用于所标识的数据对象组的优先级值之后,所述方法前进到步骤440,在440,在所示的示例中,标识包括最高退役优先级值的数据对象组。然后,来自所标识的数据对象组的包括最高退役优先级值的数据对象在步骤445退役。
[0067]在本发明的某些示例中,针对每个数据对象组,可以在配置数据315内定义退役时期(R_时期)。退役周期(R_时期)表示数据对象组内的(最旧)数据对象可以在单一的数据退役操作中退役的时间跨度长度。这实际上是在数据对象组内退役的数据对象的“分辨率”。例如,更重要的(例如,更高优先级)数据可以在比较不重要的数据更小的退役时期(R_时期)内退役。因此,在步骤445,来自所标识的数据对象组的包括最高退役优先级值的“大片”数据对象可以退役,包括那个组中的所有数据对象,针对其:
TS〈 (TS_旧+R_时期)[方程式2]
其中TS是特定数据对象的时间戳。
[0068]是本发明的某些示例中,数据对象可以仅在如下情况下从包括最高退役优先级值的所标识的数据对象组退役:在这样的退役之后,剩余的(未退役的)数据对象覆盖最小时间段。这样的最小时间段可以等于例如最小时间段(T_最小)。相应地,在步骤445,数据对象可以从包括最高退役优先级值的所标识的数据对象组退役,只要:
TS_新-(TS_旧+R_时期)<T_最小[方程式3]
[0069]在所展示的示例中,来自所标识的数据对象组的包括最高退役优先级值的数据对象从所有数据存储装置(容器)退役,并且不仅是从所选择的数据存储装置。以此方式,来自可能以任何分布模式(即,不必跨所有容器等同地、或以严格的时间顺序)跨多个数据存储装置分散的特定组的数据对象,可以从所有容器移除,以便避免例如某些数据的“孤立”并减少将数据从多个数据存储装置退役所需要的迭代数目。
[0070]因此,针对在图3中所示的示例,控制器320可以按安排成用于将包括最高退役优先级值的数据对象组的最旧和最新(最近)的时间戳信息TS_旧将TS_新以及最小时间段尺_时期和退役时期(R_时期)提供到数据对象退役组件350。数据对象退役组件350然后可以相应地实现数据对象的退役。例如,数据对象退役组件350可以被安排成用于标识待退役的数据对象,并且致使所标识的数据对象从数据存储装置120删除(例如,经由数据访问模块130或经由分配和存储组件160)。替代地,数据对象退役组件350可以简单地将在数据存储装置120内的由待退役的数据对象占据的存储器区域标识为对数据访问模块130和/或分配和存储模块160可用,由此使得新数据能够后续地被写在退役的数据上。
[0071]返回参照图4,已经实现对于所选择的数据存储装置在包括最高退役优先级值的数据对象组内的数据对象的退役之后,所述方法前进到步骤450,在450确定是否在当前循环/迭代中已经选择了所有数据存储装置。如果一个或多个数据存储装置尚未被选择,则所述方法前进到步骤455,在455选择下一个数据存储装置并且所述方法返回到针对新选择的数据存储装置的步骤420。
[0072]如果在当前循环/迭代中已经选择了所有数据存储装置,则所述方法前进到步骤460,在460确定对于所有数据存储装置,对应的数据存储容器内的可用空间量是否超过对应的预先确定的是小量,如在步骤425针对每个数据存储装置所确定的。
[0073]如果确定对应的数据存储容器内的可用空间量超过每个数据存储装置的对相应的预先确定的最小量,那么可以确定所有数据存储装置包括足够的可用空间并且不需要将数据对象退役。相应地,方法跳跃到步骤475并结束。
[0074]相反,如果确定对于一个或多个数据存储装置可用空间的量没有超过相应的预先确定的最小量,那么所述方法前进到步骤465,在465循环计数器增量。接着,在步骤470,确定循环计数器值是否超过一个预定义值N(即循环/迭代的数目是否已经到达最大数目)。在图3中所示的示例中,预定义值N可以在配置数据315中定义。
[0075]如果循环计数值没有超过预定义值N,那么所述方法循环回到415并且重复步骤415到460。相反,如果循环计数器值超过预定义值N,那么为了避免进行所述方法的过度迭代,方法在步骤475结束。
[0076]在图3中所示的示例中,数据退役模块进一步包括计时组件360以使得控制器能够调度管理数据存储装置120内存储的数据的退役的方法的周期性执行,如在图4中所示的方法。以此方式,数据退役模块可以被安排成用于自动周期性地启动管理在数据存储装置120内存储的数据的退役的方法。
[0077]以下是用于实现图4的方法的一个算法的伪代码实现方式的示例:
循环直到或者所有容器具有可用>最小)或者完成N次迭代:
{
针对所有容器:
{
确定容器%可用空间;
如果(容器实际%可用<容器最小%可用):
{
确定由容器中存储的数据对象表示的组;
针对容器中表示的所有组:
确定比率(TS_旧-TS_新)/τ_最小;
针对具有最高比率的组: 跨所有容器将具有如下条件的组数据对象退役:
TS < (TS_ 旧 +R_ 时期);
只要:
TS_新-(TS_旧+R_时期)< T_最小
}
}
}
[0078]有利地,采用此算法来改变在数据存储装置内的可用空间可用)的量,并且可以容易地适应数据存储装置本身的变化。结果是,算法(并且因此图3和4的方法和设备)能够适应存储情形的改变,如向操作系统添加新的存储装置(例如硬盘)、一个或多个存储装置的部分或完全失效,如一个或多个盘上的“坏扇区”的出现,或者存储装置与另一个(独立和/或不相关)系统共享的情况,由此可以使用的可用空间量是不可预测的。
[0079]返回参照图3,将认识到,在所示的示例中展示的配置数据315使得用于数据退役的各参数能够是可配置的。例如,网络运营商或其他用户可以配置各参数,例如,像:
-每个数据对象组的最小时期(Τ_最小);
-对于每个数据对象组的退役时期(R_时期);
-针对每个数据存储装置的最小可用空间阈值(最小%可用);
-图4的方法的迭代(循循)的最大数目N ;
-等等。
[0080]以此方式,网络运营商或其他用户可以灵活地适应数据保留/退役的优先级以及单独数据存储装置内的空间的清空。
[0081]网络运营商或其他用户还可以根据要求配置/更改数据对象的分组,以使得某些类别的数据对象的保留可以设为优先,以方便例如具体故障的检测和诊断等。例如,在图3中所示的示例中,数据退役模块170可以在每次执行上述算法时接收例如存储装置信息310内的所要求的数据对象组信息。以此方式,在算法的多次执行之间的数对象分组的变化可以进行考虑。
[0082]现在将参照图5和6描述根据上述算法(并且等同地在图4中展示的方法)从数据存储装置退役数据的示例。首先参照图5,展示了其内已经了数据对象的多个数据存储装置510、520、530。确切地,图5展示了在调用上述算法时数据存储装置的状态的示例。
[0083]数据存储装置510、520、530已经在其中存储了已经被分组到一起的数据对象。如上所述,数据对象可以基于用于数据对象的一个或多个退役优先级特性被指定给数据对象组。在所展示例中,第一数据存储装置510包括已经被指定给(至少)三个数据对象组541、542,544的数据对象,分别标记为Gl_Obj、G2_Obj和G4_0bj。第二数据存储装置520包括已经被指定给(至少)三个数据对象组543、541、544的数据对象,分别标记为G3_Obj、Gl_Obj和G4_0bj。第三数据存储装置530包括已经被指定给(至少)三个数据对象组545、542,541的数据对象,分别标记为G5_Obj、G2_Obj和Gl_Obj。值得注意的是,指定给数据对象组Gl_Obj 541的数据对象已经存储在所有三个数据存储装置510、520、530中,指定给数据对象组G2_Obj 542的数据对象已经存储在第一和第三数据存储装置510、530中,指定给数据对象组G3_Obj 543的数据对象已经存储在第二数据存储装置520中,指定给数据对象组G4_0bj0bj 544的数据对象已经存储在第一和第二数据存储装置510、520中,并且指定给数据对象组G5_
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1