数据写入方法、系统和存储介质技术方案

技术编号:27935345 阅读:21 留言:0更新日期:2021-04-02 14:15
本发明专利技术提供了一种数据写入方法、系统和存储介质。所述方法包括:接收用户发送的待写入数据;确定每个待写入数据对应的连接对象,连接对象基于待写入数据对应的节点确定;将待写入数据存储至连接对象对应的列表;在列表中的待写入数据的数量大于或等于预设数值的情况下,将列表中的所有待写入数据发送至待写入数据对应的节点。本发明专利技术中,将所述待写入数据存储至对应的列表,在列表中存储的待写入数据的数量大于或等于预设数值的情况下,才将列表中的待写入数据发送至对应的节点。只需与节点进行一次交互,即可将多个待写入数据写入节点,以此减少了与节点进行交互的次数,进而提高了数据写入效率。

【技术实现步骤摘要】
数据写入方法、系统和存储介质
本专利技术涉及中间件
,特别是涉及数据写入方法、系统和存储介质。
技术介绍
远程字典服务(RemoteDictionaryServer,Redis)是一种数据缓存中间件,在涉及数据量较大的业务场景中,通常将数据写入Redis。客户端将同一批次的数据写入Redis的过程为,客户端将一条数据写入Redis,在接收Redis针对该数据反馈的信号之后,客户端才能将下一条数据写入Redis,即客户端每写入一条数据,与Redis进行一次交互。这种情况下,客户端与Redis需要进行大量的交互,才能将同一批次的数据写入Redis,导致数据写入效率较低。
技术实现思路
本专利技术实施例提供一种数据写入方法、系统和存储介质,旨在解决数据写入效率较低的技术问题。为了解决上述技术问题,本申请是这样实现的:第一方面,本申请实施例提供了一种数据写入方法,包括:接收用户发送的待写入数据;确定每个所述待写入数据对应的连接对象,所述连接对象基于所述待写入数据对应的节点确定;将所述待写入数据存储至所述连接对象对应的列表;在所述列表中的待写入数据的数量大于或等于预设数值的情况下,将所述列表中的所有待写入数据发送至所述待写入数据对应的节点。第二方面,本申请实施例提供了一种数据写入系统,包括:第一接收模块,用于接收用户发送的待写入数据;确定模块,用于确定每个所述待写入数据对应的连接对象,所述连接对象基于所述待写入数据对应的节点确定;存储模块,用于将所述待写入数据存储至所述连接对象对应的列表;第一发送模块,用于在所述列表中的待写入数据的数量大于或等于预设数值的情况下,将所述列表中的所有待写入数据发送至所述待写入数据对应的节点。第三方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。本专利技术实施例中,将所述待写入数据存储至对应的列表,在列表中存储的待写入数据的数量大于或等于预设数值的情况下,才将列表中的待写入数据发送至对应的节点。只需与节点进行一次交互,即可将多个待写入数据写入节点,以此减少了与节点进行交互的次数,进而提高了数据写入效率。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对本专利技术实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获取其他的附图。图1是本专利技术实施例中数据写入方法的流程示意图;图2是本专利技术实施例中数据写入方法的一应用场景示意图;图3是本专利技术实施例中数据写入方法的另一应用场景示意图;图4是本专利技术实施例中数据写入系统的模块示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获取的所有其他实施例,都属于本专利技术保护的范围。本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的数据写入方法进行详细地说明。参见图1,图1是本专利技术实施例中数据写入方法的流程示意图。本实施例提供的数据写入方法包括以下步骤:S101,接收用户发送的待写入数据。本步骤中,一种可选的实施方式为,用户可以在与Redis集群通信的终端上输入待写入数据,终端将待写入数据传输至Redis集群。S102,确定所述待写入数据对应的连接对象。需要说明的是,Redis集群包括有多个节点,每个节点对应一个连接对象,应理解,上述连接对象是基于待写入数据对应的节点确定的。还需要说明的是,Redis集群采用虚拟槽分配待写入数据,一种可选的实施方式为,可以将虚拟槽的数量设置为16384;Redis集群中的每个节点与部分虚拟槽匹配,且各个节点匹配的虚拟槽都不相同。示例性的,Redis集群包括A、B和C三个节点,Redis集群包括16384个虚拟槽。这种情况下,可以设定节点A与第1个到第5461个虚拟槽对应;节点B与第5462个至第10923个虚拟槽对应;节点C与第10924个至第16384个虚拟槽对应。本步骤中,在得到该待写入数据对应的虚拟槽后,可以确定该虚拟槽对应的节点,进而基于该节点确定待写入数据对应的连接对象。具体的如何确定待写入数据对应的连接对象的技术方案,请参阅后续实施例。S103,将所述待写入数据存储至所述连接对象对应的列表。本步骤中,Redis集群中的每个连接对象对应有一个列表,该列表用于存储待写入数据。在确定待写入数据对应的连接对象后,将待写入数据存储至该连接对象对应的列表。应理解,在一些实施例中,该列表可以表征为具有N行M列的列表,N和M均为正整数。一种可选的实施方式为,将首次存储至列表中的待写入数据存储至列表的起始位置,该起始位置可以是列表的第一行第一列。另一种可选的实施方式为,将首次存储至列表中的待写入数据存储至列表的终止位置,该终止位置可以是列表的最后一行最后一列。还有一种可选的实施方式为,将首次存储至列表中的待写入数据存储至列表的任一位置,即可以是列表中任意一行任意一列。S104,在所述列表中的待写入数据的数量大于或等于预设数值的情况下,将所述列表中的所有待写入数据发送至所述待写入数据对应的节点。本步骤中,在列表中存储有待写入数据的情况下,统计列表中待写入数据的数量,在列表中的待写入数据的数量等于预设数值的情况下,将列表中的所有待写入数据发送至待写入数据对应的节点。一种可能存在的情况为,用户一次发送多个待写入数据,列表一次性存入数据的数量大于预设数值,在这种情况下,将列表中的所有待写入数据发送至待写入数据对应的节点。一种实施方式为,与Redis集群中的节点进行一次交互,将一条待写入数据写入节点,如需将大量待写入数据写入节点,需要与节点进行多次交互,这降低了数据写入效率。请参阅图2,图2是本专利技术实施例中数据写入方法的一应用场景示意图。如图所示,在一应用场景中,用户可以输入待写入数据至客户端,图中的输入数据可以理解为待写入数据;客户端确定各个待写入数据对应的节点,图中的Redis-1至Redis-n可以理解为n个节点,将待写入数据发送至对应的连接对象处。在连接对象对应的列表中的待写入数本文档来自技高网...

【技术保护点】
1.一种数据写入方法,其特征在于,包括:/n接收用户发送的待写入数据;/n确定所述待写入数据对应的连接对象,所述连接对象基于所述待写入数据对应的节点确定;/n将所述待写入数据存储至所述连接对象对应的列表;/n在所述列表中的待写入数据的数量大于或等于预设数值的情况下,将所述列表中的所有待写入数据发送至所述待写入数据对应的节点。/n

【技术特征摘要】
1.一种数据写入方法,其特征在于,包括:
接收用户发送的待写入数据;
确定所述待写入数据对应的连接对象,所述连接对象基于所述待写入数据对应的节点确定;
将所述待写入数据存储至所述连接对象对应的列表;
在所述列表中的待写入数据的数量大于或等于预设数值的情况下,将所述列表中的所有待写入数据发送至所述待写入数据对应的节点。


2.根据权利要求1所述的方法,其特征在于,所述待写入数据包括键值参数,所述确定所述待写入数据对应的连接对象包括:
获取所述待写入数据中的键值参数;
使用哈希算法对所述键值参数进行计算,得到所述待写入数据对应的节点槽值;
基于预设的映射信息和所述节点槽值,确定所述待写入数据对应的节点,所述映射信息用于表征节点与节点槽值的映射关系;
根据所述待写入数据对应的节点,确定所述节点对应的连接对象。


3.根据权利要求1所述的方法,其特征在于,所述将所述待写入数据存储至所述连接对象对应的列表之后,所述方法还包括:
记录所述列表存储所述待写入数据的最后操作时间;
在目标时间,将所述列表中的所有待写入数据发送至所述待写入数据对应的节点,所述目标时间与所述最后操作时间的差值为第一预设时长。


4.根据权利要求1所述的方法,其特征在于,所述将所述待写入数据存储至所述连接对象对应的列表之后,所述方法还包括:
在所述连接对象对应的列表中存在目标待写入数据的情况下,启动预设的定时线程,所述目标待写入数据为首次存储至所述列表的待写入数据,所述定时线程用于记录所述目标待写入数据在所述列表的存储时长;
获取所述定时线程记录的存储时长;
在所述存储时长等于第二预设时长的情况下,将所述列表中的所有待写入数据发送至所述待写入数据对应的节点。


5.根据权利要求1所述的方法,其特征在于,所述将所述列表中的所有待写入数据发送至所述待写入数据对应的节点之后,所述方法还包括:
接收所述节点基于所述待写入数据反馈的第一写入信息,所述第一写入信息用于表征所述待写入数据已写入对应节点...

【专利技术属性】
技术研发人员:程赓刘建波汪文超
申请(专利权)人:中国铁塔股份有限公司
类型:发明
国别省市:北京;11

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

1