CN114844846A - 一种基于可编程交换机的多级缓存分布式键值存储*** - Google Patents

一种基于可编程交换机的多级缓存分布式键值存储*** Download PDF

Info

Publication number
CN114844846A
CN114844846A CN202210389088.5A CN202210389088A CN114844846A CN 114844846 A CN114844846 A CN 114844846A CN 202210389088 A CN202210389088 A CN 202210389088A CN 114844846 A CN114844846 A CN 114844846A
Authority
CN
China
Prior art keywords
server
request
programmable switch
client
key value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210389088.5A
Other languages
English (en)
Inventor
郑嘉琦
王力
陈贵海
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University
Original Assignee
Nanjing University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University filed Critical Nanjing University
Priority to CN202210389088.5A priority Critical patent/CN114844846A/zh
Publication of CN114844846A publication Critical patent/CN114844846A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种基于可编程交换机的多级缓存分布式键值存储***,包括客户端、服务器,可编程交换机和控制器;所述客户端、服务器和控制器均连接所述可编程交换机。本发明提出将可编程交换机和服务器结合形成多级缓存的分布式键值存储***,使得数据存储空间从可编程交换机的片上内存扩展到了服务器内存,充分地利用了交换机和服务器各自的优势,极大的提高***的吞吐量和可用性。在交换机数据平面存储任意大小的键值项并处理数据包,利用分片的思想将数据分散存储在寄存器的不同位置,并利用可编程交换机的镜像和循环功能处理数据,提高网络内缓存的有效性,可编程交换机可存储更复杂的对象。

Description

一种基于可编程交换机的多级缓存分布式键值存储***
技术领域
本发明属于分布式存储技术领域,尤其涉及一种基于可编程交换机的多级缓存分布式键值存储***。
背景技术
分布式键值存储(Key-Value Storage KVS)***是现代互联网服务的重要基础,如社交网络、电子商务等。KVS***将频繁访问的数据缓存在内存中,以满足数十亿次请求所带来的高吞吐量和低延迟需求。分布式KVS***的一个关键挑战是在时间范围内平衡倾斜的和动态的工作负载。在一个固定的时间间隔内,只有少量的被称为热点项的条目被频繁访问。例如,大约50%到90%的访问请求都来自于1%的键值项。如果没有精心的设计,这种负载失衡可能会过度利用少数服务器,服务器的CPU成为瓶颈,导致吞吐量下降和延迟增加。虽然副本复制技术可以缓解这个问题,但它会导致高存储开销和潜在的数据不一致性。
随着可编程交换机的出现,热点项,即一个时间周期内访问次数最多的NlogN个键值对,其中N为***中服务器的数量,可以有选择地存储到交换机的片上内存中以响应查询,并在服务器之间平衡负载。目前只在可编程交换机中缓存较小的热点项,交换机可以直接处理查询请求而不涉及服务器,这在一定程度上提高了服务器的峰值处理能力。然而,在像Tofino这样的可编程开关中,为单个项目分配的内存空间通常小于128字节,而且由于硬件限制,要存储的项目大小受到严格限制。另外,根据实际工作负载的分析,只有25%的热点项小于100字节,大多数无法被***的缓存到交换机中,这意味着在实际工作中无法充分发挥它的优势。为了解决上述问题,在可编程交换机中存储固定大小的目录和元数据,而将任意大小的项目存储在服务器的内存中。虽然提供了有效的负载平衡,但可编程交换机的处理能力尚未得到充分的开发和利用,在高度倾斜的数据下该***的性能会降低许多,且不适用具有多个交换机和服务器机架的生产数据中心。
发明内容
本发明针对现有技术中的不足,提供一种基于可编程交换机的多级缓存分布式键值存储***。
本发明提供一种基于可编程交换机的多级缓存分布式键值存储***,包括客户端、服务器,可编程交换机和控制器;所述客户端、服务器和控制器均连接所述可编程交换机;所述客户端用于将将客户的请求封装为***数据包格式、转发和解封数据包;所述服务器用于处理键值项的读写请求;所述可编程交换机用于处理缓存请求和网络路由;所述控制器用于周期性的调整可编程交换机和服务器中的缓存项;
客户端发送一个请求,当请求为读请求时,对于非热点项,请求将被直接转发到服务器获取数据,然后服务器回复客户端;对于热点项,如果请求被缓存在可编程交换机中,请求直接由可编程交换机处理,然后返回至客户端;如果请求的值缓存在服务器中,可编程交换机根据缓存目录选择一个服务器发送请求,服务器处理后回复客户端;
当请求为写请求时,对于非热点项,请求被转发到服务器来写数据,然后服务器将生成写回复通知客户端;对于热点项,请求将先从可编程交换机获得用于一致性保证的版本号,并转发到服务器;服务器生成一个带有ID的回复,并发送至可编程交换机来存储热点项的元数据,然后可编程交换机将应答报文发送至客户端;控制器收集时间段内的统计信息并进行筛选,动态更新热点项并决定热点项缓存在可编辑交换机或服务器中。
进一步地,所述可编程交换机的片上内存作为多个寄存器存储键值项;每个寄存器的同一个索引中存放同一个键值项的分片数据;如果当前的分片数据包有多段数据,多次循环流水线访问不同的索引读取数据,同时需要匹配表来记录每个键值对的索引情况,可编程交换机将分片数据包依次回复至客户端。
进一步地,所述可编程交换机将所有热点项及热点项的存储位置存入匹配表;当可编程交换机接收到客户端发送的请求时,可编程交换机判断请求是否为热点项;如果是,请求直接由可编程交换机处理;如果否,请求直接转发至服务器处理。
进一步地,如果当前请求为读请求且缓存有效,那么可编程交换机将直接读取数据后返回给客户端;如果当前请求对应的键值项缓存无效,那么请求将被转发至服务器,服务器处理后返回至客户端,同时将可编程交换机之间发起缓存同步,将当前请求对应的键值项缓存到可编程交换机上,当缓存完成时,可编程交换机标记缓存有效;如果当前请求是写请求,那么可编程交换机先将缓存标记为无效,再将请求转发给服务器处理,服务器处理完成后回复客户端。
进一步地,如果当前请求是读请求,那么可编程交换机将在当前请求对应的副本集合里选取一个服务器并转发,当前请求由被选中的服务器进行处理;如果当前请求是写请求,可编程交换机向包头放入一个全局版本号并将请求转发给服务器,服务器在处理后发送写回复包至可编程交换机,当包头中的版本号大于可编程交换机内所记录的本地版本号时,可编程交换机将副本集合重置,记录下当前服务器的信息并更新键值项所对应的版本号;当包头中的版本号等于本地版本号时,可编程交换机向副本集合中加入当前服务器,并把副本集合大小加1;当包头版本号小于本地版本号时,可编程交换机忽略此次回复请求。
进一步地,所述可编程交换机统计请求中每个键值项的访问次数,所述控制器通过周期性的读取可编程交换机统计请求中每个键值项的访问次数,筛选出当前时段内的新的热点项并将热点项按照访问频率,将前目标数量个新的热点项更新到可编程交换机的缓存中,剩余新的热点项更新到服务器和服务器缓存目录中,替换掉可编程交换机和服务器中旧的缓存项,同时更新可编程交换机中的匹配表。
本发明提供一种基于可编程交换机的多级缓存分布式键值存储***,包括客户端、服务器,可编程交换机和控制器;所述客户端、服务器和控制器均连接所述可编程交换机;所述客户端用于将将客户的请求封装为***数据包格式、转发和解封数据包;所述服务器用于处理键值项的读写请求;所述可编程交换机用于处理缓存请求和网络路由;所述控制器用于周期性的调整可编程交换机和服务器中的缓存项。本发明提出将可编程交换机和服务器结合形成多级缓存的分布式键值存储***,使得数据存储空间从可编程交换机的片上内存扩展到了服务器内存,充分地利用了交换机和服务器各自的优势,极大的提高***的吞吐量和可用性。在交换机数据平面存储任意大小的键值项并处理数据包,利用分片的思想将数据分散存储在寄存器的不同位置,并利用可编程交换机的镜像和循环功能处理数据,提高网络内缓存的有效性,可编程交换机可存储更复杂的对象。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于可编程交换机的多级缓存分布式键值存储***的结构示意图;
图2为本发明实施例提供的自定义包头结构示意图;
图3为本发明实施例提供的可编程交换机数据平面键值项存储结构示意图;
图4为本发明实施例提供的可编程交换机缓存处理流程结构示意图;
图5为本发明实施例提供的可编程交换机数据平面元数据目录结构示意图;
图6为本发明实施例提供的服务器缓存处理流程结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例部分提供一种基于可编程交换机的多级缓存分布式键值存储***,包括客户端、服务器,可编程交换机和控制器;所述客户端、服务器和控制器均连接所述可编程交换机;所述客户端用于将将客户的请求封装为***数据包格式、转发和解封数据包,即客户端将请求封装为本***自定义的固定数据包格式并根据数据映射发送给相应的服务器,只有具有该固定格式的数据包才会被可编程交换机和服务器处理;当客户端收到回复后,将请求的数据从自定义的数据包格式中剥离并呈递给客户;所述服务器用于处理键值项的读写请求;所述可编程交换机用于处理缓存请求和网络路由;所述控制器用于周期性的调整可编程交换机和服务器中的缓存项。
客户端发送一个请求,当请求为读请求时,对于非热点项,请求将被直接转发到服务器获取数据,然后服务器回复客户端;对于热点项,如果请求被缓存在可编程交换机中,请求直接由可编程交换机处理,然后返回至客户端;如果请求的值缓存在服务器中,可编程交换机根据缓存目录选择一个服务器发送请求,服务器处理后回复客户端。
当请求为写请求时,对于非热点项,请求被转发到服务器来写数据,然后服务器将生成写回复通知客户端;对于热点项,请求将先从可编程交换机获得用于一致性保证的版本号,并转发到服务器;服务器生成一个带有ID的回复,并发送至可编程交换机来存储热点项的元数据,然后可编程交换机将应答报文发送至客户端;控制器收集时间段内的统计信息并进行筛选,动态更新热点项并决定热点项缓存在可编辑交换机或服务器中。
可选的,在可编程交换机的数据平面中实现了一个键值缓存***,利用有状态寄存器和交换机的镜像、循环等特性来分片地存储任意大小的键值项作为第一级缓存;利用匹配表等构建元数据目录为第二级缓存的数据进行快速的路由转发和负载均衡;利用服务器内存作为第二级缓存层,为所有的热点项复制一个或多个副本,以实现负载均衡;而服务器的硬盘则用于所有数据的持久化存储,并进行冗余备份。服务器内存中使用unorderedmap缓存数据,并定期的将所有数据写入服务器的硬盘当中。服务器还将根据接收数据包的速度来计算自身的负载,并判断是否需要将数据复制到其它服务器以均衡负载压力。
如图5所示,本发明通过两个寄存器数组来构建复制目录。一个用于记录每个复制集的大小,另一个用于记录每个复制集中的特定服务器。在更新期间,控制器设置了副本的最大大小,每个副本集的位置是固定的。例如,一个热项的索引是1,最大副本大小是4,那么该热点项的副本在寄存器数组中的范围是从4到7。此外,还需要使用全局版本寄存器和版本号寄存器数组来保证一致性。基于版本号的一致性方法是在可编程交换机中维护了一个单调递增的全局版本号,每一次热点项的写操作都会被赋予一个版本号,同时在可编程交换机的数据平面和服务器的内存中都维护了每个键值项的当前版本号,只有拥有最新版本号的请求才会被执行。
可选的,所述可编程交换机的片上内存作为多个寄存器存储键值项;每个寄存器的同一个索引中存放同一个键值项的分片数据;如果当前的分片数据包有多段数据,多次循环流水线访问不同的索引读取数据,同时需要匹配表来记录每个键值对的索引情况,可编程交换机将分片数据包依次回复至客户端。
如图3所示,首先将32个不同的寄存器连接起来构成一个逻辑上的大寄存器,每个寄存器的同一个索引中只会存放同一个键值项的分片数据。如果当前的分片数据包有多段数据,只需要多次循环流水线访问不同的索引读取数据即可。此外,还需要一个匹配表来记录每个键值对的索引情况。例如,当客户端请求Key B的数据时,交换机首先从匹配表中读取第一个索引2中的数据,然后通过分片和循环读取索引4中的数据,至此B的所有数据都已经读取完成,然后交换机会将分片数据包依次回复给客户端。
使用多个不同的寄存器数组并连接来组成一个逻辑上的大寄存器来存储键值项。受限于可编程交换机的硬件限制,每个数据包在流水线中只能访问同一个寄存器一次,导致了单次所处理的数据大小非常有限,因此利用交换机的再循环机制,使数据包在管道中多次循环,从而扩展了数据大小。此外,由于交换机对解析的数据包头部长度有限制,导致无法把较大的数据放到一个包头中处理。因此,利用可编程交换机的镜像操作实现了一个分片机制,将大的数据填充到多个数据包中转发。对于第二级缓存的元数据,使用匹配表和寄存器记录每个键值对副本所在的服务器集合,用于快速转发和负载均衡。
如图2所示,包头基于UDP,由指定的UDP目的端口标识。OP表示操作类型,包括READ,WRITE,READ_REPLY,WRITE_REPLY,UPDATE,ACK和COPY。前四个操作符用于基本数据查询,UPDATE和ACK用于在交换机和服务器之间缓存传输,COPY用于数据复制。KEY是固定长度项目的唯一标识符。VER是交换机分配的数据版本号。STATE表示该键值项所缓存的位置。SID和LOAD由服务器填充。前者是网络管理员预先分配的每个服务器的唯一ID。后者是当前服务器的负载。FNUM和OFF分别记录当前报文的分片总数和偏移量。VALUE是用于存储当前请求的值。没有***包头的数据包将使用标准的L2/L3协议。
可编程交换机可多次访问同一个寄存器,将数据分片放入同一个寄存器当中,扩大了存储空间,实现了理论上任意大小的键值项存储。当可编程交换机收到第一级缓存中的键值项的读请求后,会直接处理后返回给客户端,不需要经由服务器处理。
可编程交换机根据交换机数据平面的动作匹配表、有状态寄存器记录了第二级缓存中缓存项所在的服务器集合以及集合的大小。当可编程交换机收到第二级缓存中的键值项的请求后,从其对应的服务器集合中选择一个目标服务器,然后将请求转发至目标服务器进行处理,以实现服务器的负载均衡。
可编程交换机根据交换机数据平面的计数器和可编程交换机的CPU实现了一个键值对的频率计数。首先对于所有缓存在多级缓存中的热点项,都用一个专门的计数器来计数,即每来一个请求,对应的计数器就会加1;对于所有没有被缓存的非热点项请求数据包,将会对其进行概率性采样后将数据包中的键复制给CPU,CPU在内存中维护了一个完整的计数表对所有非热点项进行计数。
可选的,所述可编程交换机将所有热点项及热点项的存储位置存入匹配表;当可编程交换机接收到客户端发送的请求时,可编程交换机判断请求是否为热点项;如果是,请求直接由可编程交换机处理;如果否,请求直接转发至服务器处理。
可选的,如图4所示,如果当前请求为读请求且缓存有效,那么可编程交换机将直接读取数据后返回给客户端;如果当前请求对应的键值项缓存无效,那么请求将被转发至服务器,服务器处理后返回至客户端,同时将可编程交换机之间发起缓存同步,将当前请求对应的键值项缓存到可编程交换机上,当缓存完成时,可编程交换机标记缓存有效;如果当前请求是写请求,那么可编程交换机先将缓存标记为无效,再将请求转发给服务器处理,服务器处理完成后回复客户端。
可选的,如图6所示,如果当前请求是读请求,那么可编程交换机将在当前请求对应的副本集合里选取一个服务器并转发,当前请求由被选中的服务器进行处理;如果当前请求是写请求,可编程交换机向包头放入一个全局版本号并将请求转发给服务器,服务器在处理后发送写回复包至可编程交换机,当包头中的版本号大于可编程交换机内所记录的本地版本号时,可编程交换机将副本集合重置,记录下当前服务器的信息并更新键值项所对应的版本号;当包头中的版本号等于本地版本号时,可编程交换机向副本集合中加入当前服务器,并把副本集合大小加1;当包头版本号小于本地版本号时,可编程交换机忽略此次回复请求。
可选的,所述可编程交换机统计请求中每个键值项的访问次数,所述控制器通过周期性的读取可编程交换机统计请求中每个键值项的访问次数,筛选出当前时段内的新的热点项并将热点项按照访问频率,将前目标数量个新的热点项更新到可编程交换机的缓存中,其中目标数量由可编程交换机片上内存大小而定,一般为8至32个。剩余新的热点项更新到服务器和服务器缓存目录中,替换掉可编程交换机和服务器中旧的缓存项,同时更新可编程交换机中的匹配表。
本发明将可编程交换机和服务器结合形成多级缓存的分布式键值存储***,使得数据存储空间不再局限于可编程交换机中少量的片上内存,扩展到了服务器内存,提高了***的可用性。同时,本发明在交换机数据平面存储任意大小的键值项,提高网络内缓存的有效性。此外,本发明可以和现有的网络协议共存,易于部署到各种拓扑,具有极强的可扩展能力。
以上结合具体实施方式和范例性实例对本发明进行了详细说明,不过这些说明并不能理解为对本发明的限制。本领域技术人员理解,在不偏离本发明精神和范围的情况下,可以对本发明技术方案及其实施方式进行多种等价替换、修饰或改进,这些均落入本发明的范围内。本发明的保护范围以所附权利要求为准。

Claims (6)

1.一种基于可编程交换机的多级缓存分布式键值存储***,其特征在于,包括客户端、服务器,可编程交换机和控制器;所述客户端、服务器和控制器均连接所述可编程交换机;所述客户端用于将将客户的请求封装为***数据包格式、转发和解封数据包;所述服务器用于处理键值项的读写请求;所述可编程交换机用于处理缓存请求和网络路由;所述控制器用于周期性的调整可编程交换机和服务器中的缓存项;
客户端发送一个请求,当请求为读请求时,对于非热点项,请求将被直接转发到服务器获取数据,然后服务器回复客户端;对于热点项,如果请求被缓存在可编程交换机中,请求直接由可编程交换机处理,然后返回至客户端;如果请求的值缓存在服务器中,可编程交换机根据缓存目录选择一个服务器发送请求,服务器处理后回复客户端;
当请求为写请求时,对于非热点项,请求被转发到服务器来写数据,然后服务器将生成写回复通知客户端;对于热点项,请求将先从可编程交换机获得用于一致性保证的版本号,并转发到服务器;服务器生成一个带有ID的回复,并发送至可编程交换机来存储热点项的元数据,然后可编程交换机将应答报文发送至客户端;控制器收集时间段内的统计信息并进行筛选,动态更新热点项并决定热点项缓存在可编辑交换机或服务器中。
2.根据权利要求1所述的多级缓存分布式键值存储***,其特征在于,所述可编程交换机的片上内存作为多个寄存器存储键值项;每个寄存器的同一个索引中存放同一个键值项的分片数据;如果当前的分片数据包有多段数据,多次循环流水线访问不同的索引读取数据,同时需要匹配表来记录每个键值对的索引情况,可编程交换机将分片数据包依次回复至客户端。
3.根据权利要求1所述的多级缓存分布式键值存储***,其特征在于,所述可编程交换机将所有热点项及热点项的存储位置存入匹配表;当可编程交换机接收到客户端发送的请求时,可编程交换机判断请求是否为热点项;如果是,请求直接由可编程交换机处理;如果否,请求直接转发至服务器处理。
4.根据权利要求1所述的多级缓存分布式键值存储***,其特征在于,如果当前请求为读请求且缓存有效,那么可编程交换机将直接读取数据后返回给客户端;如果当前请求对应的键值项缓存无效,那么请求将被转发至服务器,服务器处理后返回至客户端,同时将可编程交换机之间发起缓存同步,将当前请求对应的键值项缓存到可编程交换机上,当缓存完成时,可编程交换机标记缓存有效;如果当前请求是写请求,那么可编程交换机先将缓存标记为无效,再将请求转发给服务器处理,服务器处理完成后回复客户端。
5.根据权利要求1所述的多级缓存分布式键值存储***,其特征在于,如果当前请求是读请求,那么可编程交换机将在当前请求对应的副本集合里选取一个服务器并转发,当前请求由被选中的服务器进行处理;如果当前请求是写请求,可编程交换机向包头放入一个全局版本号并将请求转发给服务器,服务器在处理后发送写回复包至可编程交换机,当包头中的版本号大于可编程交换机内所记录的本地版本号时,可编程交换机将副本集合重置,记录下当前服务器的信息并更新键值项所对应的版本号;当包头中的版本号等于本地版本号时,可编程交换机向副本集合中加入当前服务器,并把副本集合大小加1;当包头版本号小于本地版本号时,可编程交换机忽略此次回复请求。
6.根据权利要求1所述的多级缓存分布式键值存储***,其特征在于,所述可编程交换机统计请求中每个键值项的访问次数,所述控制器通过周期性的读取可编程交换机统计请求中每个键值项的访问次数,筛选出当前时段内的新的热点项并将热点项按照访问频率,将前目标数量个新的热点项更新到可编程交换机的缓存中,剩余新的热点项更新到服务器和服务器缓存目录中,替换掉可编程交换机和服务器中旧的缓存项,同时更新可编程交换机中的匹配表。
CN202210389088.5A 2022-04-14 2022-04-14 一种基于可编程交换机的多级缓存分布式键值存储*** Pending CN114844846A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210389088.5A CN114844846A (zh) 2022-04-14 2022-04-14 一种基于可编程交换机的多级缓存分布式键值存储***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210389088.5A CN114844846A (zh) 2022-04-14 2022-04-14 一种基于可编程交换机的多级缓存分布式键值存储***

Publications (1)

Publication Number Publication Date
CN114844846A true CN114844846A (zh) 2022-08-02

Family

ID=82563120

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210389088.5A Pending CN114844846A (zh) 2022-04-14 2022-04-14 一种基于可编程交换机的多级缓存分布式键值存储***

Country Status (1)

Country Link
CN (1) CN114844846A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115858181A (zh) * 2023-02-27 2023-03-28 中用科技有限公司 基于可编程交换机的分布式存储倾斜工作负载平衡方法
CN116418734A (zh) * 2023-06-09 2023-07-11 湖北微源卓越科技有限公司 一种低时延的小包发送方法及装置
CN117614956A (zh) * 2024-01-24 2024-02-27 合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室) 一种分布式存储的网内缓存方法、***以及储存介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2867585A1 (en) * 2013-10-15 2015-04-15 Coho Data Inc. Methods, devices and systems for coordinating network-based communication in distributed server systems with sdn switching
US20160246735A1 (en) * 2015-02-25 2016-08-25 Microsoft Technology Licensing, Llc Automatic recovery of application cache warmth
CN108183947A (zh) * 2017-12-27 2018-06-19 深圳天源迪科信息技术股份有限公司 分布式缓存方法及***
CN111797341A (zh) * 2020-06-22 2020-10-20 电子科技大学 一种基于可编程交换机的网内缓存方法
CN112689163A (zh) * 2020-12-02 2021-04-20 中国民航机场建设集团有限公司 一种基于sdn和网内缓存的视频服务传输***和方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2867585A1 (en) * 2013-10-15 2015-04-15 Coho Data Inc. Methods, devices and systems for coordinating network-based communication in distributed server systems with sdn switching
US20160246735A1 (en) * 2015-02-25 2016-08-25 Microsoft Technology Licensing, Llc Automatic recovery of application cache warmth
CN108183947A (zh) * 2017-12-27 2018-06-19 深圳天源迪科信息技术股份有限公司 分布式缓存方法及***
CN111797341A (zh) * 2020-06-22 2020-10-20 电子科技大学 一种基于可编程交换机的网内缓存方法
CN112689163A (zh) * 2020-12-02 2021-04-20 中国民航机场建设集团有限公司 一种基于sdn和网内缓存的视频服务传输***和方法

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
JIAQI ZHENG ET AL.: "Buffer-assisted network updates in timed SDN", IEEE *
SIKDER HUQ ET AL: "Distributed load balancing in key-value networked caches", IEEEE *
XIN JIN ET AL.: "NetCache:balancing key-value stores with fast in network caching", PROCEEDINGS OF THE 26TH SYMPOSIUM ON OPERATING SYSTEMS PRINCIPLES *
XIN JIN ET AL.: "NetCache:Balancing Key-Value Stores with Fast In-Network Caching", PROCEEDINGS OF THE 26TH SYMPOSIUMON OPERATING SYSTEMS PRINCIPLES, pages 3 - 4 *
XIN JIN等: "Pegasus: Tolerating Skewed Workloads in Distributed Storage with In-Network Coherence Directories", 《OSDI’20》, 30 November 2020 (2020-11-30), pages 3 - 5 *
佚名: "serveral papers about KVS", Retrieved from the Internet <URL:https://nan01ab.github.io/2019/02/KVS.html> *
佚名: "如何保障缓存和数据库强一致性", Retrieved from the Internet <URL:zhuanlan.zhihu.com/p/363949900> *
郑嘉琦: "数据中心网络数据平面更新策略研究", 《中国优秀硕士学位论文全文数据库》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115858181A (zh) * 2023-02-27 2023-03-28 中用科技有限公司 基于可编程交换机的分布式存储倾斜工作负载平衡方法
CN115858181B (zh) * 2023-02-27 2023-06-06 中用科技有限公司 基于可编程交换机的分布式存储倾斜工作负载平衡方法
CN116418734A (zh) * 2023-06-09 2023-07-11 湖北微源卓越科技有限公司 一种低时延的小包发送方法及装置
CN116418734B (zh) * 2023-06-09 2023-08-18 湖北微源卓越科技有限公司 一种低时延的小包发送方法及装置
CN117614956A (zh) * 2024-01-24 2024-02-27 合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室) 一种分布式存储的网内缓存方法、***以及储存介质
CN117614956B (zh) * 2024-01-24 2024-03-29 合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室) 一种分布式存储的网内缓存方法、***以及储存介质

Similar Documents

Publication Publication Date Title
US11775392B2 (en) Indirect replication of a dataset
US11847336B1 (en) Efficient replication using metadata
US11803567B1 (en) Restoration of a dataset from a cloud
CN114844846A (zh) 一种基于可编程交换机的多级缓存分布式键值存储***
US10198363B2 (en) Reducing data I/O using in-memory data structures
US8930648B1 (en) Distributed deduplication using global chunk data structure and epochs
JP4278445B2 (ja) ネットワークシステム及びスイッチ
JP4372671B2 (ja) 時間的に近接して記憶システムに書き込まれたデータユニットを示すコンテンツアドレスの生成方法およびその装置
CN106648464B (zh) 基于云存储的多节点混合块缓存数据读写方法及***
WO2012000448A1 (en) System architecture for integrated hierarchical query processing for key/value stores
CN107992270B (zh) 一种多控存储***全局共享缓存的方法及装置
CN114817195A (zh) 一种分布式存储缓存管理的方法、***、存储介质及设备
CN113867627A (zh) 一种存储***性能优化方法及***
Xie et al. Pragh: Locality-preserving graph traversal with split live migration
US9667735B2 (en) Content centric networking
CN115858181B (zh) 基于可编程交换机的分布式存储倾斜工作负载平衡方法
CN117539915B (zh) 一种数据处理方法及相关装置
WO2023093091A1 (zh) 数据存储***、智能网卡及计算节点
JP3570606B2 (ja) データ検索装置および方法
US11537516B1 (en) Multi-tier cache for a distributed storage system
CN114356230B (zh) 一种提高列存储引擎读性能的方法及***
US12032562B1 (en) Data event management for monotonic read consistency in a distributed storage system
US11741078B1 (en) Witness service for ensuring data consistency in a distributed storage system
US11640240B1 (en) Transaction management for monotonic write consistency in a distributed storage system
US11704033B1 (en) Request routing management for a distributed storage system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination