[发明专利]存储方法及存储装置在审
申请号: | 201210403994.2 | 申请日: | 2012-10-22 |
公开(公告)号: | CN103778025A | 公开(公告)日: | 2014-05-07 |
发明(设计)人: | 朱建平;许剑峰;时冰川 | 申请(专利权)人: | 深圳市腾讯计算机系统有限公司 |
主分类号: | G06F11/00 | 分类号: | G06F11/00;G06F17/30 |
代理公司: | 深圳翼盛智成知识产权事务所(普通合伙) 44300 | 代理人: | 欧阳启明 |
地址: | 518057 广东省深圳市南*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 存储 方法 装置 | ||
【技术领域】
本发明涉及计算机数据容错存储领域,特别涉及一种存储方法及存储装置。
【背景技术】
随着互联网的普及与快速发展,流通的负载也越来越大,因此存储架构需具有稳定的特性,让使用者在读取或写入数据时不会发生问题。
请参考图1,其为现有技术的存储架构方块图。存储架构包括应用单元10、存储群12以及两个存储器14、16,应用单元10例如是使用者端,存储群12用于管理两个存储器14、16。所述存储架构中,两个存储器14、16存储相同的数据,当两个存储器14、16的其中一个发生故障时,还有另外一个有安全且正确的数据以供应用单元10读取,这种使用备份方式防止数据不见的作法称为数据容灾。
当两个存储器14、16的其中一个发生故障时,另外一个相对应的数据不可以写入,藉此保持数据的一致性,此时称为只读,当存储群12发生只读时,应用单元10只能从存储群12管理的存储器14、16读取数据而不能将数据写入存储器14、16,此种情况称为访问故障,会影响使用者端(也就是应用单元10),例如使用者端不能通过即时通信(Instant Message;IM)软件QQ发表说说,亦即不能将发表的说说写入存储器14、16中。
若是故障的存储器确定无法再提供服务,可以用人工方式将另一个存储器从只读改为可写,此时对应的数据只有一份可供使用,必须迁移到其它可以存储两份的存储群中。
请参考图2,其为现有技术的数据组织示意图。图2是以非关系型顺序查询语言(Not only Sequential Query Language;NoSQL)中的键值对(Key/Value pair)数据库为例,在现有技术的存储架构中,是将一个键(以下称为key)对应一个值(以下称为value),其中key例如是QQ号,value可以视为列表且包括多个数据(图中以数据1至数据8表示),每个数据例如是QQ的说说、动态的一条记录。
现有技术的存储架构中,添加数据的步骤如下:读取value、解码出数据列表、添加数据、编码成数据列表、存储到图1的存储器14、16;更新数据的步骤如下:读取value、解码出数据列表、找到对应的数据后更新、编码成数据列表、存储到图1的存储器14、16;删除数据的步骤如下:读取value、解码出数据列表、找到对应的数据后删除、编码成数据列表、存储到图1的存储器14、16。由于一个key对应一个value,亦即对应一个数据列表,因此不论是添加、更新或删除数据列表中的某个数据,都必须读取整个数据列表后再写入整个数据列表,浪费容错存储时间而降低存储架构的效率。
故,有必要提出一种新的技术方案,以解决上述存储群12发生只读时,应用单元10不能将数据写入的技术问题,以及添加、更新或删除数据都必须读取整个数据列表后再写入整个数据列表,导致存储架构效率不佳的技术问题。
【发明内容】
本发明的一个目的在于提供一种存储方法及存储装置,不仅具有较高的数据容灾及访问容灾的效果,同时实现较优选的负载均衡,提高存储架构中各节点设备的灵活性和可用性。
为达到上述目的,本发明提供了一种存储方法,用于存储架构,所述存储架构包括应用单元以及至少两个存储群,所述存储方法包括:
接收所述应用单元传来的数据;
将同一数据索引对应的数据分拆成至少两个数据项;
为每个数据项加上时间戳;以及
根据所述至少两个存储群的可写状态,将所述至少两个数据项存储到所述两个存储群的至少其中之一。
在上述存储方法中,根据所述至少两个存储群的可写状态,将所述至少两个数据项存储到所述两个存储群的至少其中之一的步骤中包括:
若要写入的存储群为只读,则将所述数据项写入所述至少两个存储群的另外一个。
在上述存储方法中,根据所述至少两个存储群的可写状态,将所述至少两个数据项存储到所述两个存储群的至少其中之一的步骤中包括:
若所述至少两个存储群均为可写,则根据所述至少两个存储群的负载情况,将所述数据项写入所述至少两个存储群的至少其中之一。
在上述存储方法中,还包括:
读取所述至少两个存储群中对应的数据项,将所述数据项更新后,加上时间戳,
若原数据项对应的存储群可写,则更新后写回原存储群;
若原数据项对应的存储群只读,则更新后将该数据项写入其它可写存储群至少其中之一。
在上述存储方法中,还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市腾讯计算机系统有限公司,未经深圳市腾讯计算机系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210403994.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:近接感测方法及装置
- 下一篇:一种数据传输方法及装置