多集群系统和控制多集群系统的数据存储的方法_3

文档序号:8546199阅读:来源:国知局
储的数据可以以表和/或表分区为单位进行管理和计算,确定数据的活跃程度时,也可以以表和/或表分区为单位进行。确定数据的活跃程度时,可以对主存储集群和次存储集群区别对待,具体地,对于主存储集群111-1、111-2、…、111-N,可以对存储的所有的表和/或表分区的数据进行活跃程度的计算,对于次存储集群112-1、
112-2、…、112-M,可以只对其中预定时间内进行过读写的表和/或表分区的数据进行活跃程度的计算。
[0048]本申请还提供了一种多集群系统。
[0049]可以参考图5所示,图5示出了根据本申请实施例的多集群系统500的结构示意图。如图5所示,系统500至少可以包括:主存储集群511-1、511-2、…、511-N和次存储集群512-1、512-2、…、512-M、计算集群520和控制集群530。
[0050]主存储集群511-1、511-2、…、511-N可以用于存储活跃数据,次存储集群512_1、512-2、…、512-M可以用于存储沉默数据,其中,N和M可以相同,也可以不同。
[0051]计算集群520,可以用于对所述主存储集群511-1、511-2、…、511-N和次存储集群512-1、512-2、…、512-M中存储的数据执行计算。
[0052]控制集群530,可以用于根据所述主存储集群511-1、511_2、…、511-N以及次存储集群512-1、512-2、…、512-M中存储的数据的活跃程度对所述主存储集群511-1、
511-2、…、511-N以及次存储集群512-1、512-2、…、512-M中存储的数据进行数据迁移。
[0053]根据本申请的一个实施例,主存储集群、次存储集群、计算集群和控制集群是根据功能不同进行划分的,它们可以部署在同一台虚拟机或者物理主机上。优选地,多集群系统400可以包含一个计算集群520、一个控制集群530、一个或多个主存储集群511-1、
511-2、…、511-N以及一个或多个次存储集群512-1、512-2、…、512-M (N和M可以相同,也可以不同),主存储集群与次存储集群可以采用不同的主机硬件配置、文件管理机制与文件压缩策略,其中,主存储集群511-1、511-2、…、511-N可以用于存储活跃数据,因此可以由性能、主机硬件配置相对较好的大集群组成,压缩算法可以采用性能优先、压缩率较低的存储策略,次存储集群512-1、512-2、…、512-M可以用于存储沉默数据,因此可以采用性能、主机硬件配置相对略差的大集群或中集群组成,压缩算法可以采用压缩率比较高的存储策略。
[0054]活跃数据和沉默数据可以是由控制集群530根据数据的活跃程度进行划分的,活跃数据的活跃程度可能会随着时间推移降低,因而可能会变成沉默数据,而沉默数据可能因为一些外在因素,如用户重视度的变化,活跃程度升高而变为活跃数据,因此,控制集群530可以周期性地识别主存储集群511-1、511-2、…、511-N中由活跃数据转变成的沉默数据以及次存储集群512-1、512-2、…、512-M中由沉默数据转变成的活跃数据,当主存储集群511-1、511-2、…、511-N中存储的活跃数据变为沉默数据则将该沉默数据迁移至次存储集群512-1、512-2、…、512-M中存储,当次存储集群512_1、512_2、…、512-M中存储的数据变为活跃数据,则将该活跃数据迁移至主存储集群511-1、511-2、…、511-N中存储。
[0055]计算集群520在拓补上可以覆盖所有存储集群的节点,也就是说,计算集群520可以对所述主存储集群511-1、511-2、…、511-N以及次存储集群512_1、512_2、…、512-M中任意的集群的数据进行计算。因此,能够实现多个存储集群之间的跨集群数据读写。例如,可以读取一个或者多个不同存储集群中存储的数据,并且可以将结果写入另外的存储集群中存储。并且,在用户层面不会感知到数据读写的集群的位置。
[0056]控制集群530可以包括:元数据管理模块531、活跃程度确定模块532、识别模块533和迁移模块534。
[0057]其中,元数据管理模块531可以用于收集主存储集群511-1、511_2、…、511-N和次存储集群512-1、512-2、…、512-M中存储的数据的元数据。每个数据的元数据中记录了该数据的存储集群(cluster)、创建时间(create time)、上一次访问时间(lastvisit time)、访问数(access count)、上一次修改时间(last modify time)、存放路径(DataPath)、数据的层级等信息,元数据管理模块531可以主存储集群511-1、511-2、…、
511-N和次存储集群512-1、512-2、…、512-M中存储的数据的元数据进行管理,以便对主存储集群511-1、511-2、…、511-N和次存储集群512_1、512_2、…、512-M中存储的数据进行访问。
[0058]活跃程度确定模块532可以用于根据所述主存储集群511-1、511_2、…、511-N和次存储集群512-1、512-2、…、512-M中存储的数据的元数据确定主存储集群511-1、511-2、…、511-N和次存储集群512-1、512-2、…、512-M中存储的数据的活跃程度。
[0059]识别模块533可以用于根据主存储集群511-1、511_2、…、511-N和次存储集群
512-1、512-2、…、512-M中存储的数据的活跃程度识别所述主存储集群511_1、511_2、…、
511-N中存储的沉默数据以及所述次存储集群512-1、512-2、…、512-M中存储的活跃数据。
[0060]迁移模块534可以用于将任意次存储集群512中存储的活跃数据迁移至任意主存储集群511中存储以及将任意主存储集群511中存储的沉默数据迁移至任意次存储集群512中存储。
[0061 ] 数据的活跃程度可以根据数据的访问情况确定,数据的访问情况可以通过数据的元数据体现,每个数据的元数据中记录了该数据的创建时间(create time)、上一次访问时间(last visit time)、访问数(access count)、上一次修改时间(last modify time)、数据的层级等。根据主存储集群511-1、511-2、…、511-N及次存储集群512-1、512-2、…、
512-M中存储的数据的元数据可以确定所述数据的活跃程度。从元数据中获取的数据的访问情况可以包括数据的创建时间、上一次访问时间、上一次修改时间、数据的层级等,根据每个数据的元数据可以统计并获取该数据的读写频率。数据的读写频率可以作为确定数据的活跃程度的基本参数,还可以综合考虑其他的任意一项或多项参数,上述参数都可以从数据的元数据中获取。
[0062]根据本申请的一个实施例,活跃程度确定模块532可以包括第一获取子模块和第一确定子模块。
[0063]第一获取子模块可以用于从所述元数据中获取所述主存储集群511-1、511_2、…、
511-N以及次存储集群512-1、512-2、…、512-M中存储的数据的读写频率。
[0064]第一确定子模块可以用于根据主存储集群511-1、511_2、…、511-N和次存储集群
512-1、512-2、…、512-M中存储的数据的读写频率确定主存储集群511_1、511_2、…、511-N和次存储集群512-1、512-2、…、512-M中存储的数据的活跃程度。例如,可以根据数据的读写频率,对数据的活跃程度进行打分,读写频率越高的数据、活跃分值越高。
[0065]根据本申请的另一个实施例,活跃程度确定模块532可以包括第二获取子模块和第二确定子模块。
[0066]第二获取子模块可以用于从所述主存储集群511-1、511_2、…、511-N和次存储集群512-1、512-2、…、512-M中存储的数据的元数据中获取所述主存储集群511-1、
511-2、…、511-N和次存储集群512-1、512-2、…、512-M中存储的数据的创建时间、上一次访问时间、上一次修改时间、数据的层级中的任意一项或多项以及读写频率。
[0067]第二确定子模块可以用于根据主存储集群511-1、511_2、…、511-N以及次存储集群512-1、512-2、…、512-M中存储的数据的创建时间、上一次访问时间、上一次修改时间、数据的层级属性中的任意一项或多项以及读写频率确定主存储集群511-1、511-2、…、
511-N以及次存储集群512-1、512-2、…、512-M中存储的数据的活跃程度。例如,可以选取上述的参数中的任意一项或多项并分别设置权重,进而通过与数据的读写频率做加权运算,作为该数据的活跃程度分值。
[0068]根据本申请的一个实施例,所述识别模块533可以进一步用于:将次存储集群中
512-1、512-2、…、512-M存储的活跃程度超过活跃阈值的数据确定为活跃数据,以及将主存储集群511-1、511-2、…、511-N中存储的活跃程度未超过活跃阈值的数据确定为沉默数据。其中,活跃阈值可以是根据主存储集群511-1、511-2、…、511-N的存储情况而确定的,也就是说,活跃阈值可以是一个动态的、变化的值,当主存储集群511-1、511-2、…、511-N的存储资源比较空闲时,活跃阈值可以设置得相对较低,当主存储集群511-1、511-2、…、511-N的存储资源紧张时,可以适当调高活跃阈值,以便将更多数据从主存储集群511-1、
511-2、…、511-N中迁移至次存储集群512-1、512-2、…、512-M中,缓解主存储集群的压力。
[0069]根据本申请的实施例,所述迁移模块534可以进一步包括:复制模块和删除模块。
[0070]其中,复制模块可以用于将次存储集群512-1、512_2、…、512-M中的任意次存储集群512中存储的活跃数据复制到主存储集群511-1、511-2、…、511-N中的任意主存储集群中存储。删除模块可以用于当所述复制成功后,从原来存储所述活跃数据的次存储集
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1