CN115640238A - 针对持久化内存的可靠内存映射i/o实现方法及系统 - Google Patents

针对持久化内存的可靠内存映射i/o实现方法及系统 Download PDF

Info

Publication number
CN115640238A
CN115640238A CN202211295019.4A CN202211295019A CN115640238A CN 115640238 A CN115640238 A CN 115640238A CN 202211295019 A CN202211295019 A CN 202211295019A CN 115640238 A CN115640238 A CN 115640238A
Authority
CN
China
Prior art keywords
data
memory
persistent
buffer layer
mapping
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
CN202211295019.4A
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.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
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 Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN202211295019.4A priority Critical patent/CN115640238A/zh
Publication of CN115640238A publication Critical patent/CN115640238A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种针对持久化内存的可靠内存映射I/O实现方法及系统,属于数据存储技术领域,包括:在持久化内存中分配物理内存,并以内存映射的方式映射到用户空间,以构建持久化缓冲层,用于缓存热数据;在持久化内存中分配空间,并建立内存文件系统,用于存储冷数据;持久化缓冲层利用双层缓存结构保证数据一致性,并维护快照列表作为数据冗余保证数据的完整性,另利用地址表加速持久化缓冲层中数据的查询,基于持久化缓冲层,为用户进程提供符合POSIX标准的高速I/O接口。本发明能够在保证持久内存数据可靠性的基础上,提升持久内存系统的数据处理能力。

Description

针对持久化内存的可靠内存映射I/O实现方法及系统
技术领域
本发明属于数据存储技术领域,更具体地,涉及针对持久化内存的可靠内存映射I/O实现方法及系统。
背景技术
基于非易失内存技术的持久化内存设备具有高存储密度、低访问延迟、高吞吐量等特点,实现了内存级别的数据持久存储。为了充分利用持久化内存的优异存储性能,现有系统将持久内存以内存映射的方式直接暴露给用户空间的进程,通过load/store指令访问持久内存数据。
上述内存映射I/O实现方式在最大程度上缩减访问持久内存的软件开销,但这种访问持久内存的方式在提高访问性能的同时,也降低了持久化内存中数据的可靠性。数据的可靠性分为数据的一致性和完整性两点:(1)数据的一致性,指写入持久化内存的数据与用户I/O输入的数据一致,I/O操作完整执行,未发生部分更新;(2)数据的完整性,指持久化内存中的数据时刻保持完整,未被软硬件故障引起的错误写入操作篡改,正确数据未缺失。
现有的内存映射I/O实现方法缺少可靠性保障措施,且将持久内存数据完全暴露给用户进程,极大地增加了数据崩坏的风险。
发明内容
针对现有技术的缺陷和改进需求,本发明提供了一种针对持久化内存的可靠内存映射I/O实现方法及系统,其目的在于,在保证持久内存数据可靠性的基础上,提升持久内存系统的数据处理能力。
为实现上述目的,按照本发明的一个方面,提供了一种针对持久化内存的可靠内存映射I/O实现方法,包括:
在持久化内存中分配物理内存,并以内存映射的方式映射到用户进程的地址空间,以构建持久化缓冲层;持久化缓冲层用于缓存热数据;
在持久化内存中分配空间,并建立内存文件系统;内存文件系统用于对冷数据进行静态存储,并禁止用户I/O直接访问;
在接收到用户显式调用的同步操作时,将持久化缓冲层中的数据作为冷数据写回内存文件系统中。
进一步地,持久化缓冲层以页面为粒度组织数据,并且,持久化缓冲层中维护有映射表、逻辑时间戳和全局时间戳;映射表中的每一个映射条目用于索引同一个页面的两个版本的数据,数据的版本通过逻辑时间戳标识;全局时间戳的值在每次数据写入完成后增加1,任意时刻,版本小于等于全局时间戳的数据为已经完成写入的数据;
若用户I/O为对持久化缓冲层的写入更新操作,则其执行包括如下步骤:
(W1)获取当前的逻辑时间戳,利用原子操作将当前逻辑时间戳加1后获取一个新的逻辑时间戳,用于表示待写入数据的版本;
(W2)从映射表中查找待写入数据对应的目标映射条目,利用待写入数据对目标映射条目索引的较旧版本的数据进行覆盖,若写入完成,则转入步骤(W3);否则,利用目标映射条目索引的较新版本的数据覆盖此次未完全写入的数据,以撤销写入更新操作,写入更新结束;
(W3)利用原子操作将全局时间戳的值加1;
其中,逻辑时间戳和全局时间戳所占用的字节数,不超过原子操作所支持的最大字节数。
进一步地,持久化缓冲层中还维护有快照列表,用于索引所生成的增量式快照;增量式快照的生成包括:
确定当前时刻持久化缓冲层中相对于上一个版本的增量式快照ST-1所缓冲的新数据,利用这些数据构成当前时刻的增量式快照ST,并将当前时刻的映射表的指针附加到快照列表的尾部,之后初始化新的映射表。
进一步地,持久化缓冲层中还维护有地址表,用于记录每个页面的最新版本的数据地址;
并且,若用户I/O为对持久化缓冲层的写入更新操作,则步骤(W2)还包括:利用待写入数据对目标映射条目索引的较旧版本的数据进行覆盖之后,更新地址表;
并且,若用户I/O为对持久化缓冲层的读取操作,则其执行包括:查找地址表,以确定所读取页面的最新版本的数据地址,并从该地址读取数据。
进一步地,构建持久化缓冲时,在持久化内存中分配物理内存的方式包括如下步骤:
(A1)在持久化内存中创建内存池,并将内存池划分为固定大小的页面;
(A2)以页面为粒度,进行物理内存分配。
进一步地,本发明提供的针对持久化内存的可靠内存映射I/O实现方法,还包括:
在当前的内存池容量消耗达到预设阈值时,重新执行步骤(A1)~(A2),以对持久化缓冲层进行扩容。
进一步地,持久化缓冲层提供符合POSIX标准的操作接口与应用进行交互。
按照本发明的另一个方面,提供了一种针对持久化内存的内存控制器,包括:计算机可读存储介质和处理器;
计算机可读存储介质中存储有计算机程序;
处理器用于读取计算机可读存储介质中存储的计算机程序,执行本发明提供的上述针对持久化内存的可靠内存映射I/O实现方法。
按照本发明的又一个方面,提供了一种持久化内存系统,包括:持久化内存,以及本发明提供的上述针对持久化内存的内存控制器。
总体而言,通过本发明所构思的以上技术方案,能够取得以下有益效果:
(1)本发明在持久化内存的空间中分别建立持久化缓冲层和内存文件系统,分别用于缓存热数据和冷数据,实现了冷热数据分离,并且,仅持久化缓冲层的空间通过地址映射的方式映射到了用户进程的地址空间,而内存文件系统则禁止用户I/O直接访问,由此使得持久化内存中,仅用户I/O频繁访问的数据的备份和写入的更新数据会作为热数据映射到用户空间,相比于将所有持久内存数据完全映射到用户空间,本发明能够有效提高持久化内存中数据的可靠性,并且用户I/O通过内存映射的方式访问热数据,能够有效提高持久内存系统的数据处理能力。
(2)在本发明的优选方案中,所建立的映射表中,每一个映射条目同时索引同一页面的两个版本的数据,实现了双层缓存结构,并且在写入更新时,选取较旧版本的数据进行覆盖,较新版本的数据则被保留用于写入中断时的撤销操作,由此能够避免在系统突然崩溃时发生部分更新而破坏数据一致性;同时,利用全局时间戳标识完整写入的数据,能够保证任意长度的数据以原子的方式写入,进一步确保数据的一致性。
(3)在本发明的优选方案中,通过建立增量式快照的方式,可以在双层缓存结构的基础上,进一步提高内存数据的一致性和完整性,具体来说,通过建立增量式快照,可以在持久化内存中记录页面的更多版本的数据,从而确保系统在数据崩坏时,可以恢复到一个正确的历史版本,并且,由于每一个增量式快照所记录的都是相对于其之前所建立的快照的更新,能够降低快照引入的额外软件开销并提高持久化内存的空间利用率。
(4)在本发明的优选方案中,通过建立地址表,记录每一个页面的最新版本数据的地址,从而在读取持久化缓冲层中的数据时,仅查询地址表即可获得所读取数据所在的位置,无需遍历整个持久化缓冲层,读取操作的时间复杂度仅为O(1),I/O处理性能得到了大幅提升。
(5)在本发明的优选方案中,通过按需、动态地建立内存池,并以内存页面为粒度为持久化缓冲层分配空间,持久化内存池的空间可以适应用户I/O动态扩充,从而避免了频繁地在持久化缓冲层和内存文件系统之间拷贝数据,提升I/O处理性能。
附图说明
图1为本发明实施例提供的针对持久化内存的可靠内存映射I/O实现方法示意图;
图2为本发明实施例提供的冷热数据分离示意图;
图3为本发明实施例提供的双层缓存结构示意图;
图4为本发明实施例提供的增量式快照生成示意图;
图5为本发明实施例提供的地址表示意图;
图6为本发明实施例提供的持久化内存分配示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
在本发明中,本发明及附图中的术语“第一”、“第二”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
实施例1:
一种针对持久化内存的可靠内存映射I/O实现方法,如图1、图2所示,包括:
在持久化内存中分配物理内存,并以内存映射的方式映射到用户进程的地址空间,以构建持久化缓冲层;持久化缓冲层用于缓存热数据;
在持久化内存中分配空间,并建立内存文件系统;内存文件系统用于对冷数据进行静态存储,并禁止用户I/O直接访问;
容易理解的是,热数据,即用户I/O频繁访问的数据的备份和写入的更新数据,通常可根据指定时间段的数据访访问或更新频率来识别;相对而言,未被识别为热数据的数据,其被用户I/O访问或更新的频率较低,被作为冷数据;本实施例中,在持久化内存中分别建立持久化缓冲层和内存文件系统,分别用于缓存热数据和冷数据,实现了冷热数据分离;由于仅持久化缓冲层的空间通过地址映射的方式映射到了用户进程的地址空间,而内存文件系统则禁止用户I/O直接访问,因此,持久化内存中,仅用户I/O频繁访问的数据的备份和写入的更新数据会作为热数据映射到用户空间,相比于将所有持久内存数据完全映射到用户空间,本发明能够有效提高持久化内存中数据的可靠性,并且用户I/O通过内存映射的方式访问热数据,能够有效提高持久内存系统的数据处理能力;
为了避免对用户I/O的执行造成影响,确保系统的高数据处理能力,本实施例中,仅在接收到用户显式调用的同步操作时,会将持久化缓冲层中的数据作为冷数据写回内存文件系统中。
本实施例中,持久化缓冲层以页面为粒度组织数据,本发明发现,设置页面大小为4KB时,持久化内存可获得较好的性能,故本实施例中,页面大小设置为4KB。由于持久化缓冲层中的数据暴露给用户,为了保障持久化内存中数据的可靠性,本实施例在持久化缓冲层中维护了映射表、逻辑时间戳和全局时间戳;映射表中的每一个映射条目用于索引同一个页面的两个版本的数据,由此实现了一种双层缓存结构,如图3所示,数据的版本通过逻辑时间戳标识;全局时间戳的值在每次数据写入完成后增加1,用于标识完整写入的数据,任意时刻,版本小于等于全局时间戳的数据为已经完成写入的数据;
若用户I/O为对持久化缓冲层的写入更新操作,以图3所示的更新8KB数据到第4、5个页面为例,该写入更新操作包括如下步骤:
(W1)获取当前的逻辑时间戳,利用原子操作将当前逻辑时间戳加1后获取一个新的逻辑时间戳,用于表示待写入数据的版本;
如图3所示,所获取的逻辑时间戳加1后为12,该逻辑时间戳将作为待写入的8KB数据的版本;
(W2)从映射表中查找待写入数据对应的目标映射条目,利用待写入数据对目标映射条目索引的较旧版本的数据进行覆盖,若写入完成,则转入步骤(W3);否则,利用目标映射条目索引的较新版本的数据覆盖此次未完全写入的数据,以撤销写入更新操作,写入更新结束;
如图3所示,双层缓存结构中,第4个页面对应的较旧版本为8,该数据将被覆盖,并被标记新的版本号12;第5个页面对应的较旧版本为6,该数据将被覆盖,并被标记为新的版本号12;
基于所涉及的双层缓存结构,在写入更新时选取同一个页面对应的较旧版本的数据进行覆盖,较新版本的数据则被保留用于写入中断时的撤销操作,由此能够避免在系统突然崩溃时发生部分更新而破坏数据一致性;
(W3)利用原子操作将全局时间戳的值加1;
其中,逻辑时间戳和全局时间戳所占用的字节数,不超过原子操作所支持的最大字节数,可选地,本实施例中,在持久内存中支持的原子操作为8字节,相应地,逻辑时间戳和全局时间戳均为整形变量;本实施例中,逻辑时间戳仅在每次执行写入更新之前进行加1,全局时间戳则在每次写入更新完成之后进行加1,本实施例利用逻辑时间戳对数据版本进行标识,则可以基于数据版本与全局时间戳之间的关系大小关系标识出完整写入的数据,即版本小于等于全局时间戳的数据才是完整写入的数据;通过这种方式标识完整写入的数据,本发明能够保证任意长度的数据以原子的方式写入,进一步确保数据的一致性。
考虑到在特殊情况下,双层缓存结构中,在同一页面对应的较旧版本的数据在被更新的过程中,较新版本的数据也可能被软硬件故障引起的错误写入操作篡改,此时若写入更新被中断,则无法利用较新版本的数据执行撤销操作,数据完整性也将得不到保证,故本实施例在双层缓存结构的基础上,进一步在持久化缓冲层中维护了快照列表,用于索引所生成的增量式快照,如图4所示;增量式快照的生成包括:
确定当前时刻持久化缓冲层中相对于上一个版本的增量式快照ST-1所缓冲的新数据,利用这些数据构成当前时刻的增量式快照ST,并将当前时刻的映射表的指针附加到快照列表的尾部,之后初始化新的映射表。
本实施例通过建立增量式快照的方式,可以在持久化内存中记录页面的更多版本的数据,从而确保系统在数据崩坏时,可以恢复到一个正确的历史版本,并且,由于每一个增量式快照所记录的都是相对于其之前所建立的快照的更新,能够有效降低快照引入的额外软件开销并提高持久化内存的空间利用率;由于每个增量式快照均由当前的持久化缓存转换而成,快照生成过程中不进行任何的数据拷贝,因此,也不会产生额外的读写开销。
由于双层缓存结构和增量式快照会在持久化内存中维护同一个页面的多个版本的数据,为了进一步提高系统的数据处理能力,本实施例进一步在持久化缓冲层中维护了地址表,用于记录每个页面的最新版本的数据地址,如图5所示,增量式快照的生成过程不更新地址表;
并且,若用户I/O为对持久化缓冲层的写入更新操作,则步骤(W2)还包括:利用待写入数据对目标映射条目索引的较旧版本的数据进行覆盖之后,更新地址表;
并且,若用户I/O为对持久化缓冲层的读取操作,则其执行包括:查找地址表,以确定所读取页面的最新版本的数据地址,并从该地址读取数据;基于地址表,读取操作的时间复杂度仅为O(1),I/O处理性能得到了大幅提升。
由于本实施例为了确保I/O处理能力,仅在接收到用户显式调用的同步操作时,会将持久化缓冲层中的数据作为冷数据写回内存文件系统中,因此,持久化缓冲层的空间需要适应用户I/O的密集性动态变化,基于这一考虑,本实施例采用内存池完成持久化缓冲层空间的动态分配,具体地,如图6所示,构建持久化缓冲时,在持久化内存中分配物理内存的方式包括如下步骤:
(A1)在持久化内存中创建内存池,并将内存池划分为固定大小的页面;页面大小与持久化缓冲层中的页面大小一致,为4KB;
(A2)以页面为粒度,进行物理内存分配;为了便于分配,本实施例会建立一个分配器队列,内存池中各页面的起始地址会被记录到分配器队列中;可选地,本实施例采用LIFO(last-in,first-out)策略进行对分配器队列中页面的分配,分配器队列通过移出队列头部的一个地址项实现一个页面的分配;在持久化缓冲层中的数据作为冷数据写回内存文件系统后,持久化缓冲层中的页面将被回收,通过向队列头部存入页面的地址项即可实现该页面的回收;应当说明的是,LIFO策略仅为一种可选的实施方式,不应理解为对本发明的唯一限定,FIFO等其他分配策略也可用于本发明。
本实施例还支持持久化缓冲层的动态扩容,具体地,在当前的内存池容量消耗达到预设阈值时,重新执行步骤(A1)~(A2),以对持久化缓冲层进行扩容;该预设阈值的设定需保证内存池可在不影响用户I/O处理的前提下及时扩容,可选地,本实施例中,该阈值为70%。
为了与现有的应用兼容,本实施例中,在持久化缓冲层的基础上实现了一组符合POSIX标准的操作接口与应用进行交互,如图1所示,包括:符合POSIX标准的write()写入接口、符合POSIX标准的read()读取接口,符合POSIX标准的open()/close()文件打开/写入接口,以及符合POSIX标准的fsync()同步接口。此外,还为快照功能新增了snapshot()快照拍摄接口。
实施例2:
一种针对持久化内存的内存控制器,包括:计算机可读存储介质和处理器;
计算机可读存储介质中存储有计算机程序;
处理器用于读取计算机可读存储介质中存储的计算机程序,执行上述实施例1提供的针对持久化内存的可靠内存映射I/O实现方法。
实施例3:
一种持久化内存系统,包括:持久化内存,以及上述实施例2提供的针对持久化内存的内存控制器。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种针对持久化内存的可靠内存映射I/O实现方法,其特征在于,包括:
在所述持久化内存中分配物理内存,并以内存映射的方式映射到用户进程的地址空间,以构建持久化缓冲层;所述持久化缓冲层用于缓存热数据;
在所述持久化内存中分配空间,并建立内存文件系统;所述内存文件系统用于对冷数据进行静态存储,并禁止用户I/O直接访问;
在接收到用户显式调用的同步操作时,将所述持久化缓冲层中的数据作为冷数据写回所述内存文件系统中。
2.如权利要求1所述的针对持久化内存的可靠内存映射I/O实现方法,其特征在于,所述持久化缓冲层以页面为粒度组织数据,并且,所述持久化缓冲层中维护有映射表、逻辑时间戳和全局时间戳;所述映射表中的每一个映射条目用于索引同一个页面的两个版本的数据,数据的版本通过逻辑时间戳标识;所述全局时间戳的值在每次数据写入完成后增加1,任意时刻,版本小于等于全局时间戳的数据为已经完成写入的数据;
若用户I/O为对所述持久化缓冲层的写入更新操作,则其执行包括如下步骤:
(W1)获取当前的逻辑时间戳,利用原子操作将当前逻辑时间戳加1后获取一个新的逻辑时间戳,用于表示待写入数据的版本;
(W2)从映射表中查找待写入数据对应的目标映射条目,利用待写入数据对目标映射条目索引的较旧版本的数据进行覆盖,若写入完成,则转入步骤(W3);否则,利用目标映射条目索引的较新版本的数据覆盖此次未完全写入的数据,以撤销写入更新操作,写入更新结束;
(W3)利用原子操作将所述全局时间戳的值加1;
其中,逻辑时间戳和全局时间戳所占用的字节数,不超过原子操作所支持的最大字节数。
3.如权利要求2所述的针对持久化内存的可靠内存映射I/O实现方法,其特征在于,所述持久化缓冲层中还维护有快照列表,用于索引所生成的增量式快照;所述增量式快照的生成包括:
确定当前时刻持久化缓冲层中相对于上一个版本的增量式快照ST-1所缓冲的新数据,利用这些数据构成当前时刻的增量式快照ST,并将当前时刻的映射表的指针附加到所述快照列表的尾部,之后初始化新的映射表。
4.如权利要求3所述的针对持久化内存的可靠内存映射I/O实现方法,其特征在于,所述持久化缓冲层中还维护有地址表,用于记录每个页面的最新版本的数据地址;
并且,若用户I/O为对所述持久化缓冲层的写入更新操作,则步骤(W2)还包括:利用待写入数据对所述目标映射条目索引的较旧版本的数据进行覆盖之后,更新所述地址表;
并且,若用户I/O为对所述持久化缓冲层的读取操作,则其执行包括:查找所述地址表,以确定所读取页面的最新版本的数据地址,并从该地址读取数据。
5.如权利要求1~4任一项所述的针对持久化内存的可靠内存映射I/O实现方法,其特征在于,构建持久化缓冲时,在所述持久化内存中分配物理内存的方式包括如下步骤:
(A1)在所述持久化内存中创建内存池,并将所述内存池划分为固定大小的页面;
(A2)以页面为粒度,进行物理内存分配。
6.如权利要求5所述的针对持久化内存的可靠内存映射I/O实现方法,其特征在于,还包括:
在当前的内存池容量消耗达到预设阈值时,重新执行步骤(A1)~(A2),以对所述持久化缓冲层进行扩容。
7.如权利要求1~4任一项所述的针对持久化内存的可靠内存映射I/O实现方法,其特征在于,所述持久化缓冲层提供符合POSIX标准的操作接口与应用进行交互。
8.一种针对持久化内存的内存控制器,其特征在于,包括:计算机可读存储介质和处理器;
所述计算机可读存储介质中存储有计算机程序;
所述处理器用于读取所述计算机可读存储介质中存储的计算机程序,执行权利要求1~7任一项所述的针对持久化内存的可靠内存映射I/O实现方法。
9.一种持久化内存系统,其特征在于,包括:持久化内存,以及权利要求8所述的针对持久化内存的内存控制器。
CN202211295019.4A 2022-10-21 2022-10-21 针对持久化内存的可靠内存映射i/o实现方法及系统 Pending CN115640238A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211295019.4A CN115640238A (zh) 2022-10-21 2022-10-21 针对持久化内存的可靠内存映射i/o实现方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211295019.4A CN115640238A (zh) 2022-10-21 2022-10-21 针对持久化内存的可靠内存映射i/o实现方法及系统

Publications (1)

Publication Number Publication Date
CN115640238A true CN115640238A (zh) 2023-01-24

Family

ID=84944111

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211295019.4A Pending CN115640238A (zh) 2022-10-21 2022-10-21 针对持久化内存的可靠内存映射i/o实现方法及系统

Country Status (1)

Country Link
CN (1) CN115640238A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115826881A (zh) * 2023-02-14 2023-03-21 北京大道云行科技有限公司 数据一致性保障方法及系统、存储介质、电子设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115826881A (zh) * 2023-02-14 2023-03-21 北京大道云行科技有限公司 数据一致性保障方法及系统、存储介质、电子设备

Similar Documents

Publication Publication Date Title
US7035881B2 (en) Organization of read-write snapshot copies in a data storage system
US11301379B2 (en) Access request processing method and apparatus, and computer device
US6792518B2 (en) Data storage system having mata bit maps for indicating whether data blocks are invalid in snapshot copies
US5043871A (en) Method and apparatus for database update/recovery
US6957362B2 (en) Instantaneous restoration of a production copy from a snapshot copy in a data storage system
US6934822B2 (en) Organization of multiple snapshot copies in a data storage system
US11030092B2 (en) Access request processing method and apparatus, and computer system
CN107544859B (zh) 在混合内存系统上用来保证数据一致性的检查点方法
US20060277221A1 (en) Transactional file system with client partitioning
CN115640238A (zh) 针对持久化内存的可靠内存映射i/o实现方法及系统
CN115617542A (zh) 内存交换方法、装置、计算机设备及存储介质
WO2022033269A1 (zh) 数据处理的方法、设备及系统
CN113220490A (zh) 异步写回持久化内存的事务持久化方法及系统
CN114780489B (zh) 一种实现分布式块存储底层gc的方法及装置
KR101526110B1 (ko) 증명 가능하고 정확한 오류 복구를 위한 플래시 변환 계층 설계 프레임워크
US11237925B2 (en) Systems and methods for implementing persistent data structures on an asymmetric non-volatile memory architecture
CN111506458B (zh) 一种提升f2fs事务性能的方法、模块及系统
CN113722052A (zh) 一种基于数据双版本的非易失内存更新方法
JP2006351040A (ja) ノード間共用ファイル制御方法
CN110737547B (zh) 使用非易失性存储器nvm恢复内存数据库的方法和设备
JP7512519B2 (ja) 管理装置、データベースシステム、管理方法およびプログラム
KR101881038B1 (ko) 비휘발성 메모리에 저장된 메모리 매핑 파일의 원자적 업데이트 방법 및 제어 장치
KR101881039B1 (ko) 비휘발성 메모리에 저장된 메모리 매핑 파일의 비동기식 원자적 업데이트 방법 및 제어 장치
JP2000163294A (ja) データベース管理方法及びその装置並びにプログラムを記録した機械読み取り可能な記録媒体
CN115525668A (zh) Kvs的数据处理方法、装置和存储介质

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