数据写入方法、装置、存储介质及电子设备与流程

    技术2024-12-03  13


    本技术实施例涉及存储器领域,具体而言,涉及一种数据写入方法、装置、存储介质及电子设备。


    背景技术:

    1、目前,基于nand闪存的固态硬盘由多个块组成,每个块由相同数量的物理页组成,固态硬盘的读写单位是页,而擦除单位是块,即如果一个物理页被写入数据,那么在该物理页所属的块被擦除之前不能覆盖写入,而服务器主机通常以扇区为单位向存储器发送数据写入请求,所以很容易出现大量数据写入请求所请求写入的数据大小与物理页的数据存储大小不一致的情况,进而导致物理页的利用率较低,并且每次对物理页上的数据进行修改时都需要先从原物理页读取旧数据,修改后再写入新的物理页,而频繁的读取数据会导致数据写入请求阻塞,降低数据写入效率。

    2、因此,相关技术中,存在如何提高存储器的数据写入效率的问题。

    3、针对相关技术中,如何提高存储器的数据写入效率的问题,尚未提出有效的解决方案。


    技术实现思路

    1、本技术实施例提供了一种数据写入方法、装置、存储介质及电子设备,以至少解决相关技术中如何提高存储器的数据写入效率的问题。

    2、根据本技术的一个实施例,一种数据写入方法,应用于存储器,所述存储器与服务器主机连接,包括:接收所述服务器主机发送的第一数据写入请求,将所述第一数据写入请求保存至缓存队列,其中,所述第一数据写入请求至少包括:第一逻辑页,第一数据量,所述第一数据写入请求用于请求向所述第一逻辑页写入第一数据量的数据;根据所述第一逻辑页,所述第一数据量从所述缓存队列中的已保存的多个数据写入请求中确定出待执行的目标数据写入请求,其中,所述目标数据写入请求包括:目标逻辑页,目标数据量;执行所述目标数据写入请求之后,对关系映射表进行更新,所述关系映射表保存有逻辑页,物理页,以及所述逻辑页与所述物理页之间的对应关系,一个逻辑页对应至少一个物理页,所述逻辑页表示虚拟内存中的存储地址,所述物理页表示物理内存中的存储地址。

    3、在一个示例性实施例中,根据所述第一逻辑页,所述第一数据量从所述缓存队列中的已保存的多个数据写入请求中确定出待执行的目标数据写入请求,包括:遍历所述缓存队列中的已保存的所述多个数据写入请求;在所述缓存队列中存在第二数据写入请求的情况下,将所述第一数据写入请求与所述第二数据写入请求进行合并,得到第三数据写入请求,其中,所述第二数据写入请求包括:第二逻辑页,第二数据量,所述第二逻辑页与所述第一逻辑页相同,所述第三数据写入请求在所述缓存队列中的序号与所述第二数据写入请求在所述缓存队列的序号相同;在确定所述存储器处于工作状态的情况下,将第四数据写入请求确定为所述目标数据写入请求,其中,所述第四数据写入请求表示所述缓存队列中序号最小的完整页数据写入请求,所述完整页数据写入请求表示请求写入的数据量等于所述物理页的最大存储数据量的数据写入请求;在确定所述存储器处于空闲状态的情况下,将第五数据写入请求确定为所述目标数据写入请求,其中,所述第五数据写入请求表示所述缓存队列中序号最小的部分页写入请求,所述部分页写入请求表示请求写入的数据量小于所述物理页的最大存储数据量的数据写入请求。

    4、在一个示例性实施例中,执行所述目标数据写入请求之后,对关系映射表进行更新,包括:在所述目标数据量小于预设值的情况下,判断所述关系映射表中是否存在所述目标逻辑页;在确定所述关系映射表中存在所述目标逻辑页的情况下,确定与所述目标逻辑页对应的目标物理页,从所述目标物理页中读取属于所述目标逻辑页的第一数据,使用第二数据对所述第一数据进行修改以得到第三数据,所述第二数据表示所述目标数据写入请求所请求写入的数据;将所述第三数据写入第一物理页,从所述关系映射表中删除所述目标逻辑页与所述目标物理页的对应关系,将所述目标逻辑页与所述第一物理页的对应关系保存至所述关系映射表,所述第一物理页表示任意一个未写入有效数据的空物理页。

    5、在一个示例性实施例中,执行所述目标数据写入请求之后,对关系映射表进行更新,还包括:在确定所述目标数据量大于预设值,且所述目标数据量小于所述物理页的最大存储数据量的情况下,将第四数据写入第二物理页,将所述目标逻辑页与所述第二物理页的对应关系保存至所述关系映射表,其中,所述第四数据表示所述目标数据写入请求所请求写入的数据,所述第二物理页表示任意一个未写入有效数据的空物理页;在确定所述目标数据量等于所述物理页的最大存储数据量的情况下,将第五数据写入第三物理页,从所述关系映射表中删除所有的所述目标逻辑页以及与所述目标逻辑页存在对应关系的物理页,并将所述目标逻辑页与所述第三物理页的对应关系保存至所述关系映射表,其中,所述第五数据表示所述目标数据写入请求所请求写入的数据,所述第三物理页表示任意一个未写入有效数据的空物理页。

    6、在一个示例性实施例中,所述方法还包括:在确定所述存储器处于空闲状态的情况下,根据所述关系映射表确定第三逻辑页,其中,所述第三逻辑页与多个物理页存在对应关系;分别从所述多个物理页中读取属于所述第三逻辑页的第五数据,得到多个第五数据;将所述多个第五数据合并为第六数据,将所述第六数据写入第四物理页,从所述关系映射表中删除所有的所述第三逻辑页以及与所述第三逻辑页存在对应关系的物理页,并将所述第三逻辑页与所述第四物理页的对应关系保存至所述关系映射表,其中,所述第四物理页表示任意一个未写入有效数据的空物理页。

    7、在一个示例性实施例中,所述方法还包括:遍历所述缓存队列中的已保存的所述多个数据写入请求;从所述缓存队列中确定出第六数据写入请求,对于多个第六数据写入请求,将所述多个第六数据写入请求所请求的写入数据写入第五物理页,其中,所述多个第六数据写入请求中的每一个数据写入请求的逻辑页均不相同,所述多个第六数据写入请求所请求写入的总数据量小于或等于所述物理页的最大存储数据量,所述第五物理页表示任意一个未写入有效数据的空物理页。

    8、在一个示例性实施例中,所述方法还包括:接收所述服务器主机发送的第一数据读取请求,所述第一数据读取请求包括第四逻辑页;从所述关系映射表中查找最新添加的所述第四逻辑页,确定与所述最新添加的所述第四逻辑页对应的第六物理页;从所述第六物理页中读取属于所述第四逻辑页的第七数据;对所述第七数据进行校验,在所述第七数据满足所述服务器主机的数据使用需求的情况下,将所述第七数据发送至所述服务器主机。

    9、根据本技术的另一个实施例,提供了一种数据写入装置,包括:接收模块,用于接收所述服务器主机发送的第一数据写入请求,将所述第一数据写入请求保存至缓存队列,其中,所述第一数据写入请求至少包括:第一逻辑页,第一数据量,所述第一数据写入请求用于请求向所述第一逻辑页写入第一数据量的数据;确定模块,用于根据所述第一逻辑页,所述第一数据量从所述缓存队列中的已保存的多个数据写入请求中确定出待执行的目标数据写入请求,其中,所述目标数据写入请求包括:目标逻辑页,目标数据量;执行模块,用于执行所述目标数据写入请求之后,对关系映射表进行更新,所述关系映射表保存有逻辑页,物理页,以及所述逻辑页与所述物理页之间的对应关系,一个逻辑页对应至少一个物理页,所述逻辑页表示虚拟内存中的存储地址,所述物理页表示物理内存中的存储地址。

    10、根据本技术的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

    11、根据本技术的又一个实施例,还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。

    12、根据本技术的又一个实施例,还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述方法实施例中的步骤。

    13、通过本技术,可以在接收服务器主机发送的数据写入请求并保存至缓存队列中,再根据数据写入请求所请求写入的逻辑页和数据量,从缓存队列中保存的多个数据写入请求中确定目标数据写入请求,在执行所述目标数据写入请求之后,在关系映射表中更新逻辑页与物理页的对应关系。因此,可以解决相关技术中,如何提高存储器的数据写入效率问题。


    技术特征:

    1.一种数据写入方法,其特征在于,应用于存储器,所述存储器与服务器主机连接,包括:

    2.根据权利要求1所述的方法,其特征在于,根据所述第一逻辑页,所述第一数据量从所述缓存队列中的已保存的多个数据写入请求中确定出待执行的目标数据写入请求,包括:

    3.根据权利要求1所述的方法,其特征在于,执行所述目标数据写入请求之后,对关系映射表进行更新,包括:

    4.根据权利要求1所述的方法,其特征在于,执行所述目标数据写入请求之后,对关系映射表进行更新,还包括:

    5.根据权利要求1所述的方法,其特征在于,所述方法还包括:

    6.根据权利要求1所述的方法,其特征在于,所述方法还包括:

    7.根据权利要求1所述的方法,其特征在于,所述方法还包括:

    8.一种数据写入装置,其特征在于,包括:

    9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至7任一项中所述的方法的步骤。

    10.一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述权利要求1至7任一项中所述的方法的步骤。


    技术总结
    本申请实施例提供了一种数据写入方法、装置、存储介质及电子设备,应用于存储器,存储器与服务器主机连接,包括:接收服务器主机发送的第一数据写入请求,将第一数据写入请求保存至缓存队列,其中,第一数据写入请求至少包括:第一逻辑页,第一数据量,第一数据写入请求用于请求向第一逻辑页写入第一数据量的数据;根据第一逻辑页,第一数据量从缓存队列中的已保存的多个数据写入请求中确定出待执行的目标数据写入请求,其中,目标数据写入请求包括:目标逻辑页,目标数据量;执行目标数据写入请求之后,对关系映射表进行更新,关系映射表保存有逻辑页,物理页,以及逻辑页与物理页之间的对应关系。解决了如何提高存储器的数据写入效率问题。

    技术研发人员:王晓琦,杨勇军,王陈园,赵梓伸
    受保护的技术使用者:山东云海国创云计算装备产业创新中心有限公司
    技术研发日:
    技术公布日:2024/10/24
    转载请注明原文地址:https://symbian.8miu.com/read-22944.html

    最新回复(0)