一种分布式存储系统及其缓存层、数据访问方法、设备技术方案

技术编号:30632162 阅读:26 留言:0更新日期:2021-11-04 00:02
本申请公开了一种分布式存储系统及其缓存层,分布式存储系统包括缓存层和用于进行数据持久化存储的后端存储层;缓存层包括多个缓存节点,多个缓存节点上运行多个对象缓存服务OCS,多个OCS构成多个缓存组,每个缓存组独立处理不同的数据。应用本申请实施例所提供的技术方案,因为缓存组之间没有数据交叉,所以只需要维护同一个缓存组中OCS之间的数据一致性,降低了对于数据缓存一致性的维护成本,使得缓存数据同步的过程更为简单,在一定程度上提升了系统性能,而且,通过各缓存组可以低延迟、高并发地进行数据访问,提供高性能存储服务。本申请还公开了应用于该分布式存储系统的数据访问方法、设备及计算机存储介质,具有相应技术效果。应技术效果。应技术效果。

【技术实现步骤摘要】
一种分布式存储系统及其缓存层、数据访问方法、设备


[0001]本申请涉及信息
,特别是涉及一种分布式存储系统及其缓存层、数据访问方法、设备。

技术介绍

[0002]随着计算机技术的快速发展,分布式存储系统在各领域的应用越来越广泛。客户端可以访问分布式存储系统中后端存储层中的数据。为提高访问性能,多会在分布式存储系统中的后端存储层之前添加一层使用高速存储介质的缓存层,用于部分数据的缓存。
[0003]在相关技术中,分布式存储系统中缓存层的各缓存节点具有全局统一性,需要维护各缓存节点之间缓存数据的一致性。然而,对于缓存数据一致性的维护成本较高,而且缓存数据同步的过程也在一定程度上降低了系统性能。

技术实现思路

[0004]本申请的目的是提供一种分布式存储系统及其缓存层、数据访问方法、设备,以减少对于缓存数据一致性的维护成本,提高系统性能。
[0005]为解决上述技术问题,本申请提供如下技术方案:
[0006]一种分布式存储系统,包括:
[0007]缓存层和用于进行数据持久化存储的后端存储层;
[0008]所述缓存层包括多个缓存节点,所述多个缓存节点上运行多个对象缓存服务OCS,所述多个OCS构成多个缓存组,每个缓存组独立处理不同的数据。
[0009]因为缓存组之间没有数据交叉,所以只需要维护同一个缓存组中OCS之间的数据一致性,而不需要进行缓存组之间的数据一致性的维护,降低了对于数据缓存一致性的维护成本,使得缓存数据同步的过程更为简单,在一定程度上提升了系统性能,而且,通过各缓存组可以低延迟、高并发地进行数据访问,提供高性能存储服务。
[0010]在本申请的一种具体实施方式中,每个缓存组包括主OCS和从OCS。
[0011]每个缓存组的OCS设置,采用多副本冗余方式进行,可以保证数据存储的可靠性。
[0012]在本申请的一种具体实施方式中,每个缓存组由主OCS对外提供数据访问服务。
[0013]易于维护数据读写一致性,可以有效避免同一缓存组的多个OCS同时对外提供数据访问服务容易导致的数据读写不一致的情况的发生。
[0014]一种数据访问方法,应用于上述的分布式存储系统,所述方法包括:
[0015]根据针对目标数据的写入请求确定用于处理所述写入请求的目标OCS,所述目标OCS为根据所述多个缓存组中每个缓存组的负载状态确定;
[0016]基于所述写入请求对所述目标数据进行写入处理。
[0017]在分布式存储系统中进行数据访问,分布式存储系统的缓存层的每个缓存组独立处理不同的数据,因为缓存组之间没有数据交叉,所以只需要维护同一个缓存组中OCS之间的数据一致性,而不需要进行缓存组之间的数据一致性的维护,降低了对于数据缓存一致
性的维护成本,使得缓存数据同步的过程更为简单,在一定程度上提升了系统性能,而且,通过各缓存组可以低延迟、高并发地进行数据访问,提供高性能存储服务。
[0018]在本申请的一种具体实施方式中,所述根据针对目标数据的写入请求确定用于处理所述写入请求的目标OCS,包括:
[0019]将所述分布式存储系统的第一缓存节点确定为目标缓存节点,所述第一缓存节点为第一OCS所在的节点,所述第一OCS为接收针对目标数据的写入请求的OCS;
[0020]基于所述分布式存储系统中每个缓存组的负载状态,确定所述目标缓存节点上是否存在目标缓存组集合,所述目标缓存组集合中每个缓存组的负载状态均为非过载状态;
[0021]如果存在所述目标缓存组集合,则在所述目标缓存组集合中确定用于处理所述写入请求的目标OCS。
[0022]优先在当前访问的第一缓存节点中选择用于处理写入请求的目标OCS,可以减少请求转发次数,缩短了I/O路径,可以提高访问速度,而且在进行目标OCS的选择中,考虑到了负载状态,兼顾了缓存节点之间、缓存组之间的负载均衡。
[0023]在本申请的一种具体实施方式中,还包括:
[0024]如果所述目标缓存节点上不存在所述目标缓存组集合,则按照负载从低到高的顺序依次将所述缓存层中除所述第一缓存节点外的每个缓存节点确定为目标缓存节点,重复执行所述确定所述目标缓存节点上是否存在目标缓存组集合的步骤。
[0025]增强了各缓存节点的负载均衡。
[0026]在本申请的一种具体实施方式中,还包括:
[0027]如果所述缓存层的所有缓存节点中均不存在所述目标缓存组集合,则在负载最低的缓存组的OCS中确定用于处理所述写入请求的目标OCS。
[0028]进一步增强了各缓存节点的负载均衡。
[0029]在本申请的一种具体实施方式中,所述在所述目标缓存组集合中确定用于处理所述写入请求的目标OCS,包括:
[0030]确定所述目标缓存组集合中是否存在处于空闲状态的缓存组;
[0031]如果存在,则在处于空闲状态的缓存组中选择一个缓存组,在选择出的缓存组的OCS中确定用于处理所述写入请求的目标OCS;
[0032]如果不存在,则在所述目标缓存组集合的处于负载中等状态的缓存组中选择一个缓存组,在选择出的缓存组的OCS中确定用于处理所述写入请求的目标OCS。
[0033]增强了缓存组的负载均衡。
[0034]在本申请的一种具体实施方式中,所述在所述目标缓存组集合的处于负载中等状态的缓存组中选择一个缓存组,包括:
[0035]在所述目标缓存组集合的处于负载中等状态的缓存组中,选择负载最低的一个缓存组。
[0036]进一步增强了缓存组的负载均衡。
[0037]在本申请的一种具体实施方式中,所述基于所述写入请求对所述目标数据进行写入处理,包括:
[0038]判断所述目标数据是否符合预设的缓存条件;
[0039]如果符合,则将所述目标数据写入到所述目标OCS所在的缓存组对应的缓存节点
中;
[0040]如果不符合,则将所述目标数据写入到所述分布式存储系统的后端存储层中。
[0041]将符合缓存条件的数据写入到缓存节点中,可以减轻缓存节点的存储压力。
[0042]一种数据访问方法,应用于上述的分布式存储系统,所述方法包括:
[0043]根据针对目标数据的读取请求获得所述目标数据的路由信息;
[0044]根据所述路由信息,确定用于处理所述读取请求的目标OCS;
[0045]基于所述读取请求对所述目标数据进行读取处理。
[0046]在分布式存储系统中进行数据访问,分布式存储系统的缓存层的每个缓存组独立处理不同的数据,因为缓存组之间没有数据交叉,所以只需要维护同一个缓存组中OCS之间的数据一致性,而不需要进行缓存组之间的数据一致性的维护,降低了对于数据缓存一致性的维护成本,使得缓存数据同步的过程更为简单,在一定程度上提升了系统性能,而且,通过各缓存组可以低延迟、高并发地进行数据访问,提供高性能存储服务。
[0047]一种本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分布式存储系统,其特征在于,包括:缓存层和用于进行数据持久化存储的后端存储层;所述缓存层包括多个缓存节点,所述多个缓存节点上运行多个对象缓存服务OCS,所述多个OCS构成多个缓存组,每个缓存组独立处理不同的数据。2.根据权利要求1所述的系统,其特征在于,每个缓存组包括主OCS和从OCS。3.根据权利要求2所述的系统,其特征在于,每个缓存组由主OCS对外提供数据访问服务。4.一种数据访问方法,其特征在于,应用于权利要求1至3任一项所述的分布式存储系统,所述方法包括:根据针对目标数据的写入请求确定用于处理所述写入请求的目标OCS,所述目标OCS为根据所述多个缓存组中每个缓存组的负载状态确定;基于所述写入请求对所述目标数据进行写入处理。5.根据权利要求4所述的方法,其特征在于,所述根据针对目标数据的写入请求确定用于处理所述写入请求的目标OCS,包括:将所述分布式存储系统的第一缓存节点确定为目标缓存节点,所述第一缓存节点为第一OCS所在的节点,所述第一OCS为接收针对目标数据的写入请求的OCS;基于所述分布式存储系统中每个缓存组的负载状态,确定所述目标缓存节点上是否存在目标缓存组集合,所述目标缓存组集合中每个缓存组的负载状态均为非过载状态;如果存在所述目标缓存组集合,则在所述目标缓存组集合中确定用于处理所述写入请求的目标OCS。6.根据权利要求5所述的方法,其特征在于,还包括:如果所述目标缓存节点上不存在所述目标缓存组集合,则按照负载从低到高的顺序依次将所述缓存层中除所述第一缓存节点外的每个缓存节点确定为目标缓存节点,重复执行所述确定所述目标缓存节点上是否存在目标缓存组集合的步骤。7.根据权利要求6所述的方法,其特征在于,还包括:如果所述缓存层的所有缓存节点中均不存在所述目标缓存组集合,则在负载最低的缓存组的OCS中确定用于处理所述写入请求的目标OCS。8.根据权利要求5所述的方法,其特征在于,所述在所述目标缓存组集合中确定用于处理所述写入请求的目标OCS,包括:确定所述目标缓存组集合中是否存在处于空闲状态的缓存组;如果存在,则在处于空闲状态的缓存组中选择一个缓存组,在选择出的缓存组的OCS中确定用于处理所述写入请求的目标OCS;如果不存在,则在所述目标缓存组集合的处于负载中等状态的缓存组中选择一个缓存组,在选择出的缓存组的OCS中确定...

【专利技术属性】
技术研发人员:雍帅周炜陈岩
申请(专利权)人:深信服科技股份有限公司
类型:发明
国别省市:

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

1