一种自动分层的存储系统的制作方法_2

文档序号:9489115阅读:来源:国知局
数据,另一方面来自于Tierl中对象被垃圾收集(GC,Garbage Collect1n)清除后向调度器发送的回调请求;
[0049]CLEAN操作,用来清除系统中数据,根据统一资源定位符(URL,Uniform ResoureLocator)指定清除的范围。
[0050]根据四个REST API可以看出,TierO仅用来优化读操作性能,而与写操作无关。系统的数据完全来源于调度器向Tierl发送PUSH请求。
[0051]代理节点在请求一个对象的数据之前,首先询问一个对象的所有副本,选择一个可读的副本后才进行数据传输,如果TierO中的副本可用,则会被首先选择,如果TierO中不存在被请求对象的数据,则代理节点会读取Tierl中的副本。由于TierO只被用来优化读操作,所以不需要保存任何元数据,也不存在元数据一致性维护的复杂操作。
[0052]由于对存取行为追踪统计分析与数据迀移作业,都会消耗一定的计算资源。为了使系统的监测和调度不影响系统的正常访问,将监视器和调度器放置在单独的节点中,部署时可以使监视器与存储的监控系统进行对接,如采取共享监控系统的数据库等方式。存储系统本身在实现时留有监测接口,使用statsd实现,在系统运行的关键点,例如对象进行超文本传输协议(HTTP,Hyper Text Transfer Protocol)请求时,插入粧函数,通过用户数据报协议(UDP,User Datagram Protocol)将监测数据送入监控系统或者监视器,采用UDP协议可使监测的网络开销很小。对于调度器会通过REST API对TierO和Tierl进行访问,这部分REST API属于控制类型的访问,其负载对业务访问的影响非常小。
[0053]调度器和监视器在实现时采用单机模式,并保存了状态,故需要进行高可用(HA,High Available)保护,一旦调度器中的状态发生丢失,只需定位到无法保证数据正确性的最小范围,发送CLEAN命令清空TierO中相应部分的数据。由基于内容寻址存储系统的性质可知TierO中数据几乎没有一致性维护的问题,数据的丢失也仅会引起一定读性能上损失,而不会影响数据的正确性。如果监视器和调度器所在的节点宕机,TierO中仅会存留部分历史数据,以及无法获取最新访问数据,存储系统本身还是可用的。
[0054]本发明中的自动分层的存储系统与传统的Cache管理相比,至少具有下面的几点优势:
[0055]第一,传统的Cache系统是“尽最大努力交付的”,故数据访问与高速存储设备中数据的更新是“同步”的;而自动存储分层中数据访问并不直接影响高速存储设备中数据的放置,而是经过对数据访问统计和计算后决定需要放入高速存储设备的数据,故这个过程是“异步”的。
[0056]第二,自动存储分层更加关注于从全局层面对访问进行优化,完成热点数据的识别后,以“推送”的方式写入高速的存储设备,这种方式与传统Cache系统中在cache miss后对数据进行“拉取”的方式相比,一方面使得对访问的优化更加具有针对性,一方面也有利于降低高速存储设备被擦写的频率,延长SSD使用寿命。
[0057]本发明设计了一种自动分层的存储系统,在自动分层存储系统体系结构中,将存储按照性能特征划分层次,并配合监视器、调度器,以及外部服务中PUSH接口,对数据进行全局的分层调度;运行时进行性能采集和数据分层调度,通过监控器收集存储的运行时性能数据和统计对象的访问信息,调度器将频繁访问的对象推送到高性能存储层中;实施动态副本管理,根据运行时的访问信息收集,提高热点数据的副本数,以提高对象的并发读访问性能。
[0058]本发明充分利用数据推送的实时特性,基于运行时数据分析的动态副本调度,以及存储系统性能数据和访问信息的收集方法。这种自动分层的存储系统所具有的上述优点,与传统的Cache系统优化数据访问性能相比,本发明在提高了热点数据访问性能的同时,有效解决了当前存储自动分层系统中实时性不足问题,也在一定程度上降低了 SSD硬盘的无效磨损,本发明系统中提出的方法也同样适用于其他分布式存储系统。故本发明在大规模分布式对象存储系统实践中具有很高的技术价值和实用价值。
[0059]虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
【主权项】
1.一种自动分层的存储系统,其特征在于,包括: 尚性能的存储层TierO,用于设置尚性能的存储副本; 普通性能的存储层Tierl,用于设置普通性能的存储副本; 监视器,用于负责获取存储系统中的数据对象访问信息和系统性能信息; 调度器,用于维护TierO上的数据对象存储;向Tierl发送数据对象,并基于调度策略向Tierl发送推送命令进行Tierl向TierO的数据对象传输; 代理节点,用于提供外部代理服务中推送接口 ; 其中,TierO和Tierl之间存在Tierl指向TierO的单向数据通路,在Tierl收到来自调度器的推送命令后所述单向数据通路打开,进行Tierl向TierO的单向数据对象传输。2.根据权利要求1所述的自动分层的存储系统,其特征在于,所述TierO的存储副本参数包括:最大冗余度M,表示系统中TierO能够容纳的最大副本数;配置冗余度m,表示向TierO中推送的副本数,并且m < M ;副本槽,表示TierO中副本放置的位置; 所述Tierl的存储副本参数包括:冗余度N,表示Tierl的副本数。3.根据权利要求1所述的自动分层的存储系统,其特征在于,所述TierO基于RESTAPI进行操作,包括=CREATE操作,用来创建一个对象;GET操作,用来读取一个数据对象;REMOVE操作,用来删除一个数据对象;CLEAN操作,用来清除存储系统中数据对象,其中, REMOVE操作的调用时机为调度器主动删除TierO中的数据,或者来自于Tierl中数据对象被垃圾收集清除后向调度器发送的回调请求; CLEAN操作根据统一资源定位符指定清除的范围来清除存储系统中数据对象。4.根据权利要求1所述的自动分层的存储系统,其特征在于,所述代理节点查询TierO和Tierl的存储副本中是否存在被请求访问的对象数据,在TierO或Tierl中确定了存储副本后,通过推送接口向监控器发送对象访问信息。5.根据权利要求4所述的自动分层的存储系统,其特征在于,所述在TierO或Tierl中确定存储副本,具体为: 查询TierO中的存储副本是否可用;如果可用,则在TierO中确定存储副本;如果不可用,贝1J在Tierl中确定存储副本。6.根据权利要求1所述的自动分层的存储系统,其特征在于,所述调度策略包括:热点数据识别,数据热度的维护和数据的置换策略。7.根据权利要求6所述的自动分层的存储系统,其特征在于,所述监控器通过代理节点的推送接口获取存储系统中的数据对象访问信息和系统性能信息,调度器将访问次数大于设定值的对象数据推送到TierO中,并根据热点数据识别增加热点数据的存储副本数量。8.根据权利要求1所述的自动分层的存储系统,其特征在于,所述监视器和调度器放置于在存储层和代理节点之外的独立节点中,且采取共享监控系统的数据库实现监视器与存储系统的监控系统对接。9.根据权利要求8所述的自动分层的存储系统,其特征在于,所述采取共享监控系统的数据库实现监视器与存储系统的监控系统对接,具体为: 存储系统具有监测接口,使用statsd实现; 在存储系统运行中,若对象进行超文本传输协议请求,则插入粧函数,通过用户数据报协议将监测数据送入监控系统的监测接口,监视器通过监控系统的数据库获取检测数据。10.根据权利要求9所述的自动分层的存储系统,其特征在于,所述调度器和监视器采用单机模式并进行高可用保护。
【专利摘要】本发明公开了一种自动分层的存储系统,包括:高性能的存储层Tier0,用于设置高性能的存储副本;普通性能的存储层Tier1,用于设置普通性能的存储副本;监视器,用于负责获取存储系统中的数据对象访问信息和系统性能信息;调度器,用于维护Tier0上的数据对象存储;向Tier1发送数据对象,并基于调度策略向Tier1发送推送命令进行Tier1向Tier0的数据对象传输;代理节点,用于提供外部代理服务中推送接口;其中,Tier0和Tier1之间存在Tier1指向Tier0的单向数据通路,在Tier1收到来自调度器的推送命令后所述单向数据通路打开,进行Tier1向Tier0的单向数据对象传输。本发明有效解决了当前存储自动分层系统中实时性不足问题,提高了热点数据的读访问性能,并降低了SSD硬盘的无效磨损。
【IPC分类】G06F3/06
【公开号】CN105242884
【申请号】CN201510696499
【发明人】赵祯龙
【申请人】浪潮(北京)电子信息产业有限公司
【公开日】2016年1月13日
【申请日】2015年10月23日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1