数据存储方法、装置、电子设备和可读存储介质制造方法及图纸

技术编号:36844440 阅读:10 留言:0更新日期:2023-03-15 16:16
本申请提供了一种数据存储方法、装置、电子设备和可读存储介质,涉及数据处理技术领域。该方法包括:获取待存储数据和索引值;基于索引值,从树状索引结构中确定目标叶子节点,目标叶子节点包括存储位置信息,存储位置信息对应的存储位置的数据结构包括存储标记位、有效标记位、第一数据存储位和第二数据存储位;基于存储位置信息,确定待存储数据的存储位置,并将待存储数据存储至第一数据存储位,并将存储标记位设为可用,将有效标记位设为第一数据存储位有效。本申请的方法通过优化数据结构,避免脏数据影响数据存储设备中其他数据的读写,提高了数据存储设备的读写效率,提升用户体验感。户体验感。户体验感。

【技术实现步骤摘要】
数据存储方法、装置、电子设备和可读存储介质


[0001]本申请涉及数据处理
,尤其涉及数据存储方法、装置、电子设备和可读存储介质。

技术介绍

[0002]数据存储设备在存储数据的过程中,数据的存储结构对数据可靠性、读写性能、宕机恢复等方面都具有至关重要的影响。
[0003]在数据存储设备给磁盘存储数据的过程中,经常会面临数据存储设备突然宕机的情形,不好的数据存储结构会导致数据在磁盘中未写入完整,使该数据成为脏数据,导致数据存储设备中其他数据的读写发生错误,降低了数据存储设备的读写效率,降低了用户体验感。

技术实现思路

[0004]本申请提供了一种数据存储方法、装置、电子设备和可读存储介质,通过优化数据结构,避免脏数据影响数据存储设备中其他数据的读写,提高了数据存储设备的读写效率,提升用户体验感。
[0005]第一方面,本申请提供一种数据存储方法,应用于数据存储设备,该方法包括:
[0006]获取待存储数据和索引值;
[0007]基于索引值,从树状索引结构中确定目标叶子节点,目标叶子节点包括存储位置信息,存储位置信息对应的存储位置的数据结构包括存储标记位、有效标记位、第一数据存储位和第二数据存储位,存储标记位用于指示数据结构是否可用,有效标记位用于指示当前有效的数据存储位为第一数据存储位或第二数据存储位,第一数据存储位和第二数据存储位用于存储数据;
[0008]基于存储位置信息,确定待存储数据的存储位置,并将待存储数据存储至第一数据存储位,并将存储标记位设为可用,将有效标记位设为第一数据存储位有效。
[0009]结合第一方面,在第一方面的某些实现方式中,在从树状索引结构中确定目标叶子节点之前,上述方法还包括:
[0010]若树状索引结构中不存在与索引值对应的叶子节点,在树状索引结构中新增叶子节点;
[0011]在新增叶子节点中存储索引值和存储位置信息。
[0012]结合第一方面,在第一方面的某些实现方式中,在将待存储数据存储至第一数据存储位之后,上述方法还包括:
[0013]基于索引值,从树状索引结构中确定目标叶子节点;
[0014]基于目标叶子节点,获取存储位置信息;
[0015]基于存储位置信息,确定待存储数据的存储位置;
[0016]从存储位置中获取数据结构;
[0017]基于数据结构中的存储标记位,判断数据结构是否可用;
[0018]在数据结构可用的情况下,基于数据结构中的有效标记位,判断当前有效的数据存储位为第一数据存储位或第二数据存储位;
[0019]在当前有效的数据存储位为第一数据存储位的情况下,获取第一数据存储位中存储的数据。
[0020]结合第一方面,在第一方面的某些实现方式中,数据结构还包括:写入锁定位和/或数据位长度,写入锁定位用于指示数据结构是否可以修改,数据位长度用于指示第一数据存储位或第二数据存储位所存储的数据的长度。
[0021]结合第一方面,在第一方面的某些实现方式中,上述方法还包括:
[0022]在索引值对应的数据结构中存储的数据需要修改的情况下,基于索引值,确定目标叶子节点;
[0023]基于目标叶子节点,获取存储位置信息;
[0024]基于存储位置信息,确定待存储数据的存储位置;
[0025]从存储位置中获取数据结构;
[0026]基于数据结构中的写入锁定位,判断数据结构是否可以修改;
[0027]在数据结构可以修改的情况下,基于数据结构中的有效标记位,判断当前有效的数据存储位为第一数据存储位或第二数据存储位;
[0028]在当前有效的数据存储位为第一数据存储位的情况下,将修改数据存入第二数据存储位,并将有效标记位设为第二数据存储位有效。
[0029]结合第一方面,在第一方面的某些实现方式中,上述方法还包括:
[0030]在索引值对应的数据结构中存储的数据需要删除的情况下,基于索引值,确定目标叶子节点;
[0031]基于目标叶子节点,获取存储位置信息;
[0032]基于存储位置信息,确定待存储数据的存储位置;
[0033]从存储位置中获取数据结构;
[0034]将数据结构中的存储标记位和有效标记位设为初始状态,将第一数据存储位和第二数据存储位中的数据删除,并从树状索引结构中删除目标叶子节点。
[0035]结合第一方面,在第一方面的某些实现方式中,树状索引结构包括根树索引结构和多个子树索引结构,目标叶子节点位于多个子树索引结构中的一个子树索引结构中,根树索引结构和多个子树索引结构分别存储于数据存储设备的不同磁盘中。
[0036]第二方面,本申请提供另一种数据存储装置,包括:
[0037]获取模块,用于获取待存储数据和索引值;
[0038]处理模块,用于基于索引值,从树状索引结构中确定目标叶子节点,目标叶子节点包括存储位置信息,存储位置信息对应的存储位置的数据结构包括存储标记位、有效标记位、第一数据存储位和第二数据存储位,存储标记位用于指示数据结构是否可用,有效标记位用于指示当前有效的数据存储位为第一数据存储位或第二数据存储位,第一数据存储位和第二数据存储位用于存储数据;以及,基于存储位置信息,确定待存储数据的存储位置,并将待存储数据存储至第一数据存储位,并将存储标记位设为可用,将有效标记位设为第一数据存储位有效。
[0039]结合第二方面,在第二方面的某些实现方式中,处理模块还用于:在从树状索引结构中确定目标叶子节点之前,若树状索引结构中不存在与索引值对应的叶子节点,在树状索引结构中新增叶子节点;在新增叶子节点中存储索引值和存储位置信息。
[0040]结合第二方面,在第二方面的某些实现方式中,处理模块还用于:在将待存储数据存储至第一数据存储位之后,基于索引值,从树状索引结构中确定目标叶子节点;
[0041]获取模块还用于:基于目标叶子节点,获取存储位置信息;
[0042]处理模块还用于:基于存储位置信息,确定待存储数据的存储位置;
[0043]获取模块还用于:从存储位置中获取数据结构;
[0044]处理模块还用于:基于数据结构中的存储标记位,判断数据结构是否可用;在数据结构可用的情况下,基于数据结构中的有效标记位,判断当前有效的数据存储位为第一数据存储位或第二数据存储位;
[0045]获取模块还用于:在当前有效的数据存储位为第一数据存储位的情况下,获取第一数据存储位中存储的数据。
[0046]结合第二方面,在第二方面的某些实现方式中,上述数据结构还包括:写入锁定位和/或数据位长度,写入锁定位用于指示数据结构是否可以修改,数据位长度用于指示第一数据存储位或第二数据存储位所存储的数据的长度。
[0047]结合第二方面,在第二方面的某些实现方式中,处理模块还用于:在索引值对应的数据结构中存储的数据需要修改的情况下,基于索引值,确定目标叶子节点;
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据存储方法,其特征在于,应用于数据存储设备,所述方法包括:获取待存储数据和索引值;基于所述索引值,从树状索引结构中确定目标叶子节点,所述目标叶子节点包括存储位置信息,所述存储位置信息对应的存储位置的数据结构包括存储标记位、有效标记位、第一数据存储位和第二数据存储位,所述存储标记位用于指示所述数据结构是否可用,所述有效标记位用于指示当前有效的数据存储位为所述第一数据存储位或所述第二数据存储位,所述第一数据存储位和所述第二数据存储位用于存储数据;基于所述存储位置信息,确定所述待存储数据的存储位置,并将所述待存储数据存储至所述第一数据存储位,并将所述存储标记位设为可用,将所述有效标记位设为所述第一数据存储位有效。2.根据权利要求1所述的方法,其特征在于,在所述从树状索引结构中确定目标叶子节点之前,所述方法还包括:若所述树状索引结构中不存在与所述索引值对应的叶子节点,在所述树状索引结构中新增叶子节点;在所述新增叶子节点中存储所述索引值和所述存储位置信息。3.根据权利要求1所述的方法,其特征在于,在所述将所述待存储数据存储至所述第一数据存储位之后,所述方法还包括:基于所述索引值,从所述树状索引结构中确定所述目标叶子节点;基于所述目标叶子节点,获取存储位置信息;基于所述存储位置信息,确定所述待存储数据的存储位置;从所述存储位置中获取数据结构;基于所述数据结构中的存储标记位,判断所述数据结构是否可用;在所述数据结构可用的情况下,基于所述数据结构中的有效标记位,判断当前有效的数据存储位为所述第一数据存储位或所述第二数据存储位;在当前有效的数据存储位为所述第一数据存储位的情况下,获取第一数据存储位中存储的数据。4.根据权利要求1所述的方法,其特征在于,所述数据结构还包括:写入锁定位和/或数据位长度,所述写入锁定位用于指示所述数据结构是否可以修改,所述数据位长度用于指示所述第一数据存储位或所述第二数据存储位所存储的数据的长度。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:在所述索引值对应的数据结构中存储的数据需要修改的情况下,基于所述索引值,确定所述目标叶子节点;基于所述目标叶子节点,获取存储位置信息;基于所述存储位置信息,确定所述待存储数据的存储位置;从所述存储位置中获取数据结构;基于所述数据结构中的写入锁定位,判断所述数据结构是否可以修改;在所述数据结构可以修改的情...

【专利技术属性】
技术研发人员:张伟丁厚东杨大龙岂军卢翔董风雷王得民
申请(专利权)人:中国联合网络通信集团有限公司
类型:发明
国别省市:

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

1