访问请求处理方法、装置及计算机系统制造方法及图纸

技术编号:27508720 阅读:38 留言:0更新日期:2021-03-02 18:37
本申请公开了一种访问请求处理方法、装置及计算机系统。该计算机系统包括处理器和非易失性内存NVM。在该计算机系统中,当接收到写请求时,处理器根据该写请求确定目标缓存页。在确定所述NVM中存储有所述目标缓存页的日志链log chain之后,该处理器在所述目标缓存页的log chain中插入记录有第二log数据片信息的第二数据节点。其中,所述log chain中已包含有记录第一log数据片信息的第一数据节点,该第二log数据片为该写请求待写入的至少一部分数据。进一步的,在确定所述第二log数据片的页内位置与所述第一log数据片的页内位置有重叠之后,该处理器在所述第一数据节点中将所述第一log数据片中与所述第二log数据片重叠的数据设置为无效数据。设置为无效数据。设置为无效数据。

【技术实现步骤摘要】
访问请求处理方法、装置及计算机系统


[0001]本专利技术涉及存储
,尤其涉及一种访问请求处理方法、装置及计算机系统。

技术介绍

[0002]在存储系统中,通常采用写前日志(Write-ahead logging,WAL)的方式来保持数据的一致性。根据这种方式,所有写入存储系统的数据都先写入外存设备(例如,磁盘)的日志文件中,后续再根据日志文件更新旧数据。当系统出现掉电或宕机等故障时,可以根据日志恢复数据,保证数据的一致性。随着下一代非易失性存储器(Non-Volatile Memory,NVM)技术的发展,由于下一代NVM具有读写速度较快,并且能够按字节寻址,因此下一代NVM可以被作为系统的内存使用。这种以NVM为介质的存储级内存(Storage Class Memory,SCM)具有非易失性的特点,为存储系统中的数据一致性保护提供了新的方法。
[0003]在现有技术中的一种基于SCM实现数据一致性的方法中,缓存(cache)和日志(log)共享SCM的存储空间。在这种实现方式中,一个SCM块既可以作为cache块,也可以作为l本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种访问请求处理方法,所述方法由计算机系统执行,其中,所述计算机系统包括处理器和混合内存,所述混合内存包括动态随机存储器DRAM以及非易失性内存NVM,其特征在于,包括:接收用于写入待写入数据的写请求,所述待写入数据用于修改目标文件的文件数据;确定与所述待写入数据对应的目标缓存页,其中,所述目标缓存页是所述DRAM或所述NVM中用于缓存所述目标文件中被所述待写入数据修改的文件数据的内存页;确定所述NVM中存储有所述目标缓存页中的目标缓存页的日志链log chain,所述目标缓存页的log chain中包含有第一数据节点,其中,所述第一数据节点中包含有第一log数据片的信息,所述第一log数据片包括所述目标缓存页在一次修改过程中的修改数据;在所述目标缓存页的log chain中插入第二数据节点,所述第二数据节点中包含有所述目标缓存页的第二log数据片的信息,其中,所述第二log数据片包括至少一部分所述待写入数据,所述第二log数据片的信息包括所述第二log数据片或者所述第二log数据片在所述NVM中的存储地址。2.根据权利要求1所述的方法,其特征在于,还包括:确定所述第二log数据片的页内位置与所述第一log数据片的页内位置有重叠,其中,所述第二log数据片的页内位置为所述第二log数据片在所述目标缓存页中的位置,所述第一log数据片的页内位置为所述第一log数据片在所述目标缓存页中的位置;在所述第一数据节点中将所述第一log数据片中与所述第二log数据片重叠的数据设置为无效数据。3.根据权利要求1所述的方法,其特征在于,所述在所述目标缓存页的log chain中插入第二数据节点包括:在所述目标缓存页的log chain的尾部或头部插入所述第二数据节点,其中,在插入所述第二数据节点后,所述目标缓存页的log chain中包含有根据所述目标缓存页的更新顺序依次链接的至少两个数据节点。4.根据权利要求1-3任意一项所述的方法,其特征在于,还包括:根据所述目标缓存页的log chain中记录的至少一个log数据片的信息将所述log chain中的至少一个log数据片更新到所述目标缓存页中,以获得更新后的目标缓存页;将所述更新后的目标缓存页的数据存储于所述计算机系统的外存设备中。5.根据权利要求2所述的方法,其特征在于,所述在所述第一数据节点中将所述第一log数据片中与所述第二log数据片重叠的数据设置为无效数据包括:当所述第二log数据片的页内位置与所述第一log数据片的页内位置部分重叠时,在所述第一数据节点中,根据第一log数据片与所述第二log数据片重叠的数据的页内位置修改所述第一log数据片的页内位置信息,以将所述第一log数据片中与所述第二log数据片重叠的数据设置为无效数据,其中,所述第一log数据片的页内位置信息包括所述第一log数据片的“页内偏移”和“log数据长度”中的至少一个信息。6.根据权利要求2所述的方法,其特征在于,所述在所述第一数据节点中将所述第一log数据片中与所述第二log数据片重叠的数据设置为无效数据包括:当所述第二log数据片的页内位置包括所述第一log数据片的页内位置时,删除所述第
一数据节点。7.根据权利要求2所述的方法,其特征在于,所述在所述第一数据节点中将所述第一log数据片中与所述第二log数据片重叠的数据设置为无效数据包括:当所述第一log数据片的页内位置包括所述第二log数据片的页内位置时,将所述第一数据节点分裂成第一子数据节点以及第二子数据节点,其中,所述第一子数据节点以及所述第二子数据节点的数据结构与所述第一数据节点的数据结构相同;分别在所述第一子数据节点和所述第二子数据节点中记录所述第一log数据片中未与所述第二log数据片重叠的数据,以将第一log数据片中与所述第二log数据片重叠的数据设置为无效数据。8.根据权利要求4所述的方法,其特征在于,还包括:在将所述更新后的目标缓存页的数据存储于所述计算机系统的外存设备中之后,回收所述目标缓存页的log chain。9.一种访问请求处理装置,其特征在于,所述访问请求处...

【专利技术属性】
技术研发人员:徐君于群陈荔城
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1