分布式缓存方法及系统技术方案

技术编号:8532791 阅读:175 留言:0更新日期:2013-04-04 15:47
本发明专利技术实施例提供一种分布式缓存方法及系统。该方法包括:根据元数据的主键值确定第一缓存节点,并根据所述元数据的次键值确定第二缓存节点;在所述第一缓存节点中存储中心存储节点下发的所述元数据,在所述第二缓存节点中存储所述元数据的位置索引,所述元数据的位置索引用于指示所述第一缓存节点的地址。因此,可以通过元数据的位置索引来访问元数据,避免了在多个缓存节点中均存储相同的元数据,从而避免了元数据的冗余存储,节省存储空间,并保证了数据访问的一致性。

【技术实现步骤摘要】

本专利技术实施例涉及通信
,并且更具体地,涉及分布式缓存方法及系统
技术介绍
现代应用系统处理的数据迅速增长,大量集中式数据处理向分布式处理方式演进。在分布式系统中,将数据分散保存到多个节点上,通过节点的增加来扩展存储和计算能力。但是,数据的多节点存储,需要解决各个节点上数据的一致性问题,一致性问题就是要解决多个副本之间的同步。例如,对多个副本节点均需要进行读写操作的系统,则需要分布式锁或全局锁来实现数据更新一致性,大大影响系统实时性与性能,并增加了系统复杂度。在分布式存储模式中,设立了多个缓存节点,在每个缓存节点上保存着若干个数据单元(定义为元数据),元数据是很小的数据集合,作为分布式缓存的基础,是不能分割的整体,如一个订单信息或一个用户信息等。元数据关联着键(Key)值,客户可以根据键值访问到该元数据信息。在一个元数据具有多个键值的情况下,分布式系统按照不同的键值,在对应的散列的缓存节点上建立相同的副本。因此,在多个缓存节点上冗余存储。当在不同的键值上建立运算进行写操作时,需要维护多个缓存节点保存的元数据信息的一致性,虽然可以采用现有技术的全局锁来实现,但是增加了系统复本文档来自技高网...

【技术保护点】
一种分布式缓存方法,其特征在于,包括:根据元数据的主键值确定第一缓存节点,并根据所述元数据的次键值确定第二缓存节点;在所述第一缓存节点中存储中心存储节点下发的所述元数据,在所述第二缓存节点中存储所述元数据的位置索引,所述元数据的位置索引用于指示所述第一缓存节点的地址。

【技术特征摘要】
1.一种分布式缓存方法,其特征在于,包括 根据元数据的主键值确定第一缓存节点,并根据所述元数据的次键值确定第二缓存节点 在所述第一缓存节点中存储中心存储节点下发的所述元数据,在所述第二缓存节点中存储所述元数据的位置索引,所述元数据的位置索引用于指示所述第一缓存节点的地址。2.如权利要求1所述的方法,其特征在于,所述方法还包括 接收业务处理节点发送的所述元数据的第一查询请求,所述第一查询请求携带查询键值; 根据所述查询键值查找所述元数据。3.如权利要求2所述的方法,其特征在于,所述根据所述查询键值查找所述元数据,包括 根据所述查询键值确定目标缓存节点; 如果所述目标缓存节点为所述第一缓存节点,在所述目标缓存节点中查找到所述元数据,则将所述元数据发送给所述业务处理节点; 如果在所述目标缓存节点中查找到目标位置索引,则向所述业务处理节点发送重定向消息,所述重定向消息携带所述目标位置索引,以便所述业务处理节点根据所述重定向消息判断重定向次数; 如果在所述目标缓存节点中未查找到所述元数据和任一元数据的位置索引,则向所述中心存储节点发送所述元数据的第一查询请求。4.如权利要求3所述的方法,其特征在于,当所述业务处理节点判断重定向次数小于重定向查询阈值时,所述方法还包括 接收所述业务处理节点根据所述重定向消息发送的所述元数据的第二查询请求; 根据所述第二查询请求在与所述目标位置索引对应的缓存节点中查找所述元数据。5.如权利要求4所述的方法,其特征在于,所述根据所述第二查询请求在与所述目标位置索引对应的缓存节点中查找所述元数据,包括 所述目标位置索引为所述元数据的位置索引,将在所述第一缓存节点中查找到的所述元数据发送给所述业务处理节点。6.如权利要求1-5任一项所述的方法,其特征在于,所述方法还包括 当所述元数据的存储地址改变时,对所述第二缓存节点中存储的所述元数据的位置索引进行维护,所述元数据的位置索引用于指示改变后的所述元数据的存储地址。7.如权利要求1-6任一项所述的方法,其特征在于,所述根据元数据的主键值确定第一缓存节点,并根据所述元数据的次键值确定第二缓存节点, 包括 根据所述元数据的主键值进行Hash散列得到第一 Hash值,并根据所述元数据的次键值进行Hash散列得到第二 Hash值,所述第一 Hash值与所述第一缓存节点相对应,所述第二 Hash值与所述第二缓存节点相对应。8.—种分布式缓存...

【专利技术属性】
技术研发人员:姚成松
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1