一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

启用RDMA的键-值存储库的制作方法

2022-04-16 19:48:45 来源:中国专利 TAG:

技术特征:
1.一种计算机执行的方法,包括:第一过程,通过以下操作执行特定键-值对操作的第一子操作:发送远程直接存储器访问rdma请求以从计算设备的易失性存储器中的散列表中的用于特定键-值对的特定条目获得头部信息,其中头部信息包括标志的集合,所述标志的集合包括以下中的一个或多个:已分配标志,指示特定条目是否被占用,注入标志,指示对特定条目的不完整写入操作是否正在进行中,时间标志,指示特定条目中的数据是否正在迁移,以及围栏标志,指示除第一过程以外的第二过程是否具有将特定键-值对插入散列表的优先权,确定标志的集合中的一个或多个标志被设置;以及基于所述一个或多个标志被设置,第一过程中止所述特定键-值对操作的第二子操作;其中所述方法由一个或多个计算设备执行。2.如权利要求1所述的方法,其中:所述特定键-值对包括特定值;所述特定键-值对操作是从散列表的特定条目中检索所述特定值的查找操作;所述一个或多个设置的标志包括时间标志;以及所述方法还包括,在中止所述特定键-值对操作的第二子操作之后并且在所述确定所述一个或多个标志被设置后的预定时间量之后,第一过程执行第二查找操作以检索所述特定值。3.如权利要求2所述的方法,其中第一过程执行第二查找操作以从散列表中检索所述特定值。4.如权利要求2所述的方法,其中:散列表(a)是第一散列表,并且(b)实现键-值存储库;所述方法还包括确定键-值存储库正从第一散列表迁移到第二散列表;第一过程至少部分地基于所述确定键-值存储库正从第一散列表迁移到第二散列表而执行第二查找操作以在第一散列表和第二散列表上检索所述特定值。5.如权利要求1所述的方法,其中:所述特定键-值对操作是将特定键-值对插入到散列表的特定条目中的插入操作;所述一个或多个设置的标志包括围栏标志;所述方法还包括,在中止所述特定键-值对操作的第二子操作之后,发送第二rdma请求以取消设置特定条目的头部信息中的一个或多个标志位。6.如权利要求1所述的方法,其中:所述特定键-值对包括特定值;所述特定键-值对操作是从散列表的特定条目中检索所述特定值的查找操作;所述一个或多个设置的标志包括注入标志;所述方法还包括,在中止所述特定键-值对操作的第二子操作之后并且在所述确定所述一个或多个标志被设置后的预定时间量之后,第一过程执行第二查找操作以检索所述特定值。
7.如权利要求1所述的方法,其中:rdma请求是比较和交换cas类型rdma请求;cas类型rdma请求将来自特定条目的头部信息与其中一个或多个未设置的标志位与所述一个或多个设置的标志对应的目标头部信息进行比较;所述确定标志的集合中的所述一个或多个标志被设置包括:cas类型rdma请求返回指示来自特定条目的头部信息与目标头部信息不匹配的信息。8.一种用于将键-值存储库的至少一部分从易失性存储器中的第一散列表迁移到易失性存储器中的第二散列表的计算机执行的方法,包括:向一个或多个客户端发送一个或多个消息,所述一个或多个客户端被配置为使用rdma请求访问第一散列表处的键-值存储库,其中所述一个或多个消息包括识别第二散列表的信息;将键-值存储库中的多个键-值对从第一散列表重定位到第二散列表;在将所述多个键-值对从第一散列表重定位到第二散列表的同时,维护第一散列表和第二散列表两者;在维护第一散列表和第二散列表两者的同时,对以下请求进行服务:来自所述一个或多个客户端的对第一散列表的一个或多个第一rdma请求,以及来自所述一个或多个客户端的对第二散列表的一个或多个第二rdma请求;以及在将所述多个键-值对从第一散列表重定位到第二散列表之后,释放第一散列表;其中所述方法由一个或多个计算设备执行。9.如权利要求8所述的方法,其中将所述多个键-值对从第一散列表重定位到第二散列表包括将所述多个键-值对中的特定键-值对通过以下操作从第一散列表的第一条目重定位到第二散列表的第二条目:在用于第一散列表的第一条目的头部信息中设置时间标志;以及在所述设置时间标志之后,将特定键-值对的信息写入第二散列表的第二条目。10.如权利要求8所述的方法,其中,在所述重定位所述多个键-值对期间,至少部分地通过向第一散列表发送第一rdma请求并向第二散列表发送第二rdma请求,所述一个或多个客户端中的特定客户端对来自键-值存储库的所述多个键-值对中的特定键-值对执行查找操作。11.如权利要求8所述的方法,其中,在所述重定位所述多个键-值对期间,至少部分地通过发送将特定键-值对的信息写入第二散列表的rdma请求,所述一个或多个客户端中的特定客户端执行插入操作以将所述多个键-值对中的特定键-值对插入到键-值存储库中。12.一种或多种存储指令的非暂态计算机可读介质,所述指令在由一个或多个处理器执行时使得执行如权利要求1-11中的任一项所述的方法。13.一种系统,包括:一个或多个处理器;以及一个或多个存储指令的非暂态计算机可读介质,所述指令在由所述一个或多个处理器执行时使得执行如权利要求1-11中的任一项所述的方法。14.一种计算系统,包括用于执行如权利要求1-11中的任一项所述的方法的部件。

技术总结
根据一个或多个实施例,允许在冲突补救所需的动作期间继续查找、插入和删除操作。当使用重定位操作来解决冲突时,在存储键-值对的散列表条目的头部部分中编码的信息指示相关联的键-值对何时进行重定位。通过允许访问RKVS的其它过程无故障地处置重定位,这个信息促进在重定位过程期间继续访问RKVS。此外,当需要散列表扩展以便解决冲突时,分配第二个更大的散列表,并继续对旧散列表和新散列表两者进行查找操作。一个或多个实施例还使用标志在RKVS中防止插入、查找和删除失败,这些标志编码在散列表条目的头部信息中,其反映存储库中相应键-值对的状态。值对的状态。值对的状态。


技术研发人员:Z
受保护的技术使用者:甲骨文国际公司
技术研发日:2020.09.04
技术公布日:2022/4/15
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献