CN111125049B - 基于rdma与非易失内存的分布式文件数据块读写方法及系统 - Google Patents

基于rdma与非易失内存的分布式文件数据块读写方法及系统 Download PDF

Info

Publication number
CN111125049B
CN111125049B CN201911348068.8A CN201911348068A CN111125049B CN 111125049 B CN111125049 B CN 111125049B CN 201911348068 A CN201911348068 A CN 201911348068A CN 111125049 B CN111125049 B CN 111125049B
Authority
CN
China
Prior art keywords
node
read
client
write
management
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.)
Active
Application number
CN201911348068.8A
Other languages
English (en)
Other versions
CN111125049A (zh
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.)
Tsinghua University
Shanghai Jiaotong University
Original Assignee
Tsinghua University
Shanghai Jiaotong University
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 Tsinghua University, Shanghai Jiaotong University filed Critical Tsinghua University
Priority to CN201911348068.8A priority Critical patent/CN111125049B/zh
Publication of CN111125049A publication Critical patent/CN111125049A/zh
Application granted granted Critical
Publication of CN111125049B publication Critical patent/CN111125049B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种基于RDMA与非易失内存的分布式文件数据块读写方法及系统,包括:步骤M1:管理层节点对服务层节点数据存储空间所组成的共享内存池进行统一编址与管理;步骤M2:在客户端节点、管理节点及服务节点间建立RDMA连接后,响应客户端读写请求,管理节点间维持元数据一致性;步骤M3:分布式文件数据分块并发读、分布式文件数据分块并发写,服务节点响应客户端请求,将海量数据按块粒度进行切分,客户端节点在备份组平行服务节点间进行单边并发分块读与单边并发分块写操作。本发明能够在分布式系统中为客户端提供高效数据读写服务,本发明能够避免写操作对读操作的阻塞。

Description

基于RDMA与非易失内存的分布式文件数据块读写方法及系统
技术领域
本发明涉及计算机分布式文件系统领域,具体地,涉及一种基于RDMA与非易失内存的分布式文件数据块读写方法及系统。
背景技术
在大数据时代背景下对分布式系统的可靠性和I/O性能提出了更高的要求,需要保证数据的可靠存储性并且支持数据的快速读写传输,随着数据量的增大,读写大数据块的应用场景也在不断增加。当前新一代内存技术持久内存拥有高密度存储,数据持久化,细粒度寻址等特点,在分布式环境中结合RDMA新型内存访问技术,可以高效的在节点间进行数据传输,其传输特点决定其对小块数据的传输延迟比大块数据高,如何有效的减少传输延迟,降低系统瓶颈节点的压力。
远程直接内存访问(Remote Direct Memory Access,RDMA)是一种新型内存访问技术,使计一个节点可以直接存取其他节点的内存,而不需要经过远端节点处理器的处理。降低完成相同读写操作在集群中的吐量总量,提升系统性能。另外RDMA单次传输小粒度数据的效率优于单次传输大数据量的效率。
在RDMA中有四种基础的操作类型:
RDMA发送:ib_post_send(),向远端节点发送信息,远端节点需有RDMA接受操作,发送信息才会被接受。
RDMA接收:ib_post_recv(),接收远端节点发来的信息,远端节点需有RDMA发送操作,接受请求才会接受到信息。
RDMA读取:ib_post_read(),单边操作,在已知读取地址及rkey信息后可主动读取,不需要远端CPU的参与。
RDMA写入:ib_post_write(),单边操作,在已知远端写入地址及rkey信息后可主动将本地信息写到远端节点,无需要远端CPU参与。
单边操作只需要本端节点明确信息的源和目的地址,远端不必感知此次通信。RDMA单边读延迟低于RDMA单边写延迟。
非易失性内存:拥有数据持久化、纳秒级访问延迟、字节寻址等传统优点,同时又具有读写性能不对称性、有限耐久性等特点。基于非易失内存的文件系统能以接近于DRAM(动态随机存取存储器)内存的速度提供数据的持久存储和访问,这大幅提升了对文件数据实时处理的性能。STTRAM,PCM,RRAM以及3D Xpoint都属于非易失内存,非易失内存写耗费时间大概是其读耗费时间的4到10倍。
平衡多路查找树(Balance-tree,B-树),为计算机学科中存储结构,左子树与右子树的阶数差不大于1,父节点可有多个子节点。使用B-tree结构可以显著减少索引数据时所经历的中间过程,从而加快存取速度。
专利文献CN109977079A公开了种基于分布式文件系统的数据处理方法及装置,通过对分布式文件系统的读写方法进行优化,在客户端调用文件创建系统类的创建命令,调用写命令进行写文件操作,得到文件;文件系统输出数据流向主节点申请数据块,返回一个本地数据块对象;根据返回的所述本地数据块对象,与相应的数据节点进行通信,建立数据流,将所述客户端的文件内容切割成一个一个块,写入到所述数据流中;获得数据节点返回的写入成功信息后,向所述客户端返回写文件成功信息。该专利在对同一数据块的读写操作同时进行,避免写操作对读操作的阻塞上仍然有待提升的空间。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种基于RDMA与非易失内存的分布式文件数据块读写方法及系统。
如图1-图4所示,根据本发明提供的一种基于RDMA与非易失内存的分布式文件数据块读写方法,包括:步骤M1:管理层节点对服务层节点数据存储空间所组成的共享内存池进行统一编址与管理;步骤M2:在客户端节点、管理节点及服务节点间建立RDMA连接后,管理节点响应客户端读写请求;步骤M3:分布式文件数据分块并发读、分布式文件数据分块并发写,服务节点响应客户端请求,将海量数据按块粒度进行切分,客户端节点在备份组平行服务节点间进行单边并发分块读或单边并发分块写操作,消除读写操作间阻塞现象,提升系统读写效率与读写并行度;所述步骤M2包括:步骤M2.1:客户端通过RDMA网络发送读写请求到管理节点;步骤M2.2:管理层节点利用非易失内存细粒度访问特性执行问询排队机制,申请获取客户端所需操作地址的读/写控制权;步骤M2.3:进行读操作:根据系统有无对同一地址空间的写请求操作,进行备份组读保留节点内读操作或备份组平行服务节点内分块并发读操作;步骤M2.4:进行写操作:客户端节点与备份组平行服务节点间进行并发分块写操作。
优选地,所述步骤M2.3包括:步骤M2.3.1:预操作地址空间的操作请求链表中仅有读操作请求时,按照分块并发读机制,客户端节点使用分块并发的读方式将数据读回节点;步骤M2.3.2:预操作地址空间正在被写请求占用时,客户端从备份组中的读保留节点读取数据。
优选地,步骤M2.4包括:步骤M2.4.1:客户端节点与管理节点进行RDMA通信,定位写操作地址对应备份组及备份组内读保留节点;步骤M2.4.2:管理节点将客户端节点的写请求数据地址分块,发送给备份组内除读保留节点外的服务节点;步骤M2.4.3:备份组内各服务节点按管理节点发送的客户端节点地址信息,从客户端节点内进行分块读操作;步骤M2.4.4:在备份组内服务节点间部进行分块数据互换;步骤M2.4.5:服务节点向管理节点申请更新读保留节点;步骤M2.4.6:服务节点与原读保留节点利用RDMA进行数据交换,更新读保留节点内数据为最新数据;步骤M2.4.7:服务节点向客户端节点进行写完成反馈。
优选地,步骤M2.1包括:步骤M2.1.1:管理层内各节点为平行关系,管理层各节点维护相同的元数据信息;步骤M2.1.2:客户端节点从服务层选择任意节点请求提供读写服务操作。
优选地,所述步骤M2.2包括:步骤M2.2.1:在每个管理节点内构建一棵B树结构,用于记录系统读写地址;步骤M2.2.2:B树节点中存储权限标识和索引所需信息:操作地址空间的粒度、当前地址读/写操作权标识信息以及链表指针,指向等待获得该地址操作权的任务链表;
任务链表的每一个单元中的信息包括以下任一种或者任多种信息:-申请操作权限的管理节点ID;-ID节点申请该权限时的节点内时间戳;-起始地址信息;-结束地址信息;-读/写操作标志位和申请状态位;步骤2.2.3:利用非易失内存细粒度特性,可以锁定大于8bit粒度大小的数据,B树中记录正在被操作的任意大小地址。
步骤M2.2问询排队机制维持管理节点一致性,根据客户端节点权限申请,可分为:-客户端节点进行读操作,管理节点申请获取读权限;-客户端节点进行写操作,管理节点申请获取写权限;
步骤M2.2.1中,管理节点间利用RDMA进行通信,管理节点向其他管理节点申请该地址空间的读权限。
步骤M2.2.2包括以下情况:-其他管理节点未占用该地址权限,管理节点通过该写请求申请;-其他管理节点正在占用该地址写权限,管理节点等待获取该写权限。
步骤M2.2.2.2具有以下特点:-多个管理节点同时申请该地址写权限,通过管理节点内权限投票的方式判定该写权限的权限分配。-其他管理节点已占用该写权限,排队等待获取写权限。
根据本发明提供的一种基于RDMA与非易失内存的分布式文件数据块读写系统,包括:模块M1:管理层节点对服务层节点数据存储空间所组成的共享内存池进行统一编址与管理;模块M2:在客户端节点、管理节点及服务节点间建立RDMA连接后,响应客户端读写请求;模块M3:分布式文件数据分块并发读、分布式文件数据分块并发写,服务节点响应客户端请求,将海量数据按块粒度进行切分,客户端节点在备份组平行服务节点间进行单边并发分块读与单边并发分块写操作,消除读写操作间阻塞现象,提升系统读写效率与读写并行度;所述模块M2包括:模块M2.1:客户端通过RDMA网络发送读写请求到管理节点;模块M2.2:管理层节点利用非易失内存细粒度访问特性执行问询排队机制,申请获取客户端所需操作地址的读/写控制权;模块M2.3:进行读操作:根据系统内有无对同一地址空间的写请求操作,进行备份组读保留节点内读操作与备份组平行服务节点内分块并发读操作;模块M2.4:进行写操作:客户端节点与备份组平行服务节点间进行并发分块写操作。
优选地,所述模块M2.3包括:模块M2.3.1:预操作地址空间的操作请求链表中仅有读操作请求时,按照分块并发读机制,客户端节点使用分块并发的读方式将数据读回节点;模块M2.3.2:预操作地址空间正在被写请求占用时,客户端从备份组中的读保留节点读取数据。
优选地,模块M2.4包括:模块M2.4.1:客户端节点与管理节点进行RDMA通信,定位写操作地址对应备份组及备份组内都保留节点;模块M2.4.2:管理节点将客户端节点的写请求数据地址分块,发送给备份组内除读保留节点外的服务节点;模块M2.4.3:备份组内各服务节点按管理节点发送的客户端节点地址信息,从客户端节点内进行分块读操作;模块M2.4.4:在备份组内服务节点间部进行分块数据互换;模块M2.4.5:服务节点向管理节点申请更新读保留节点;模块M2.4.6:服务节点与原读保留节点利用RDMA进行数据交换,更新读保留节点内数据为最新数据;模块M2.4.7:服务节点向客户端节点进行写完成反馈。
优选地,模块M2.1包括:模块M2.1.1:管理层内各节点为平行关系,管理层各节点维护相同的元数据信息;模块M2.1.2:客户端节点从服务层选择任意节点请求提供读写服务操作。
优选地,所述模块M2.2包括:模块M2.2.1:在每个管理节点内构建一棵B树结构,用于记录系统读写地址;模块M2.2.2:B树节点中存储权限标识和索引所需信息:操作地址空间的粒度、当前地址读/写操作权标识信息以及链表指针,指向等待获得该地址操作权的任务链表;
任务链表的每一个单元中的信息包括以下任一种或者任多种信息:-申请操作权限的管理节点ID;-ID节点申请该权限时的节点内时间戳;-起始地址信息;-结束地址信息;-读/写操作标志位和申请状态位;模块2.2.3:利用非易失内存细粒度特性,可以锁定大于8bit粒度大小的数据,B树中记录正在被操作的任意大小地址。
模块M2.2问询排队机制维持管理节点一致性,根据客户端节点权限申请,可分为:-客户端节点进行读操作,管理节点申请获取读权限;-客户端节点进行写操作,管理节点申请获取写权限;
模块M2.2.1中,管理节点间利用RDMA进行通信,管理节点向其他管理节点申请该地址空间的读权限。
模块M2.2.2包括以下情况:-其他管理节点未占用该地址权限,管理节点通过该写请求申请;-其他管理节点正在占用该地址写权限,管理节点等待获取该写权限。
模块M2.2.2.2具有以下特点:-多个管理节点同时申请该地址写权限,通过管理节点内权限投票的方式判定该写权限的权限分配。-其他管理节点已占用该写权限,排队等待获取写权限。
与现有技术相比,本发明具有如下的有益效果:
本发明能够在分布式系统中为客户端提供高效数据读写服务。在大数据环境中提供分布式可靠数据存储,结合RDMA特点和分块读写机制提升系统读写效率,设计备份组和服务层平行架构提升系统容灾性,设计备份组读保留节点,使对同一数据块的读写操作同时进行,避免写操作对读操作的阻塞。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1是本发明实施例中系统三层模型架构示意图。
图2是本发明实施例中各层节点功能示意图。
图3是管理节点构建当前共享内存操作地址索引B树示意图。
图4是并从客户端并发分块写及备份组内数据交换示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
根据本发明提供的一种基于RDMA与非易失内存的分布式文件数据块读写方法,包括:步骤M1:管理层节点对服务层节点数据存储空间所组成的共享内存池进行统一编址与管理;步骤M2:在客户端节点、管理节点及服务节点间建立RDMA连接后,响应客户端读写请求;步骤M3:分布式文件数据分块并发读、分布式文件数据分块并发写,服务节点响应客户端请求,将海量数据按块粒度进行切分,客户端节点在备份组平行服务节点间进行单边并发分块读与单边并发分块写操作,消除读写操作间阻塞现象,提升系统读写效率与读写并行度;所述步骤M2包括:步骤M2.1:客户端通过RDMA网络发送读写请求到管理节点;步骤M2.2:管理层节点利用非易失内存细粒度访问特性执行问询排队机制,申请获取客户端所需操作地址的读/写控制权;步骤M2.3:进行读操作:根据系统内有无对同一地址空间的写请求操作,进行备份组读保留节点内读操作与备份组平行服务节点内分块并发读操作;步骤M2.4:进行写操作:客户端节点与备份组平行服务节点间进行并发分块写操作。
优选地,所述步骤M2.3包括:步骤M2.3.1:预操作地址空间的操作请求链表中仅有读操作请求时,按照分块并发读机制,客户端节点使用分块并发的读方式将数据读回节点;步骤M2.3.2:预操作地址空间正在被写请求占用时,客户端从备份组中的读保留节点读取数据。
优选地,步骤M2.4包括:步骤M2.4.1:客户端节点与管理节点进行RDMA通信,定位写操作地址对应备份组及备份组内都保留节点;步骤M2.4.2:管理节点将客户端节点的写请求数据地址分块,发送给备份组内除读保留节点外的服务节点;步骤M2.4.3:备份组内各服务节点按管理节点发送的客户端节点地址信息,从客户端节点内进行分块读操作;步骤M2.4.4:在备份组内服务节点间部进行分块数据互换;步骤M2.4.5:服务节点向管理节点申请更新读保留节点;步骤M2.4.6:服务节点与原读保留节点利用RDMA进行数据交换,更新读保留节点内数据为最新数据;步骤M2.4.7:服务节点向客户端节点进行写完成反馈。
优选地,步骤M2.1包括:步骤M2.1.1:管理层内各节点为平行关系,管理层各节点维护相同的元数据信息;步骤M2.1.2:客户端节点从服务层选择任意节点请求提供读写服务操作。
优选地,所述步骤M2.2包括:步骤M2.2.1:在每个管理节点内构建一棵B树结构,用于记录系统读写地址;步骤M2.2.2:B树节点中存储权限标识和索引所需信息:操作地址空间的粒度、当前地址读/写操作权标识信息以及链表指针,指向等待获得该地址操作权的任务链表;
任务链表的每一个单元中的信息包括以下任一种或者任多种信息:-申请操作权限的管理节点ID;-ID节点申请该权限时的节点内时间戳;-起始地址信息;-结束地址信息;-读/写操作标志位和申请状态位;步骤2.2.3:利用非易失内存细粒度特性,可以锁定大于8bit粒度大小的数据,B树中记录正在被操作的任意大小地址。
步骤M2.2问询排队机制维持管理节点一致性,根据客户端节点权限申请,可分为:-客户端节点进行读操作,管理节点申请获取读权限;-客户端节点进行写操作,管理节点申请获取写权限;
步骤M2.2.1中,管理节点间利用RDMA进行通信,管理节点向其他管理节点申请该地址空间的读权限。
步骤M2.2.2包括以下情况:-其他管理节点未占用该地址权限,管理节点通过该写请求申请;-其他管理节点正在占用该地址写权限,管理节点等待获取该写权限。
步骤M2.2.2.2具有以下特点:-多个管理节点同时申请该地址写权限,通过管理节点内权限投票的方式判定该写权限的权限分配。-其他管理节点已占用该写权限,排队等待获取写权限。
具体地,在一个实施例中,一种基于RDMA与非易失内存的分布式文件数据块读写方法如
系统管理层节点对系统内服务层节点数据存储空间所组成的共享内存池进行统一编址与管理。下面介绍系统写入与读取过程。
系统响应客户端写请求过程:
S1:客户端通过RDMA网络ib_post_send()原语发送写请求到管理节点。信息包括:客户端ID、目录哈希值、客户端内数据地址、数据大小、读/写标志位。
客户端ID:客户端集群内各节点都有一个ID,用于标识发送请求的客户端节点。
写目录哈希值:客户端写目录的哈希值,用于在管理节点确定文件目录位置,定位服务层备份组及该服务节点内存储的地址。
客户端内数据地址:用户申请写入系统的数据在客户端内存中的存储地址。
写入数据大小:用户申请写入系统的数据大小。
写标志位有效:标识用户向分布式系统申请写入操作。
S2:利用非易失内存细粒度访问特性,在管理节点间执行问询排队机制,管理节点在接收到客户端写请求后,问询其他管理节点该地址是否正被操作。
接收客户端请求的管理节点向其他管理节点发送问询信息:管理节点ID、ID节点内时间戳、起始地址、数据大小、读/写标志位和申请状态。
管理节点ID:管理节点集群内各节点都有一个ID,用于标识管理节点。
ID节点内时间戳:发送请求的管理节点问询其他管理节点申请写权限时的时间戳,用于在节点内标识问询请求。
起始地址:管理节点根据客户端发送来的写目录哈希值定位该目录在服务节点中的写入地址。
数据大小:管理节点接收到的客户端请求写入系统数据的大小。
写标识位有效:接收客户端请求的管理节点向其他管理节点申请操作地址的权限为写权限。
申请状态:申请状态分为该申请为等待状态和执行状态,申请等待状态时该位置0,申请执行状态时该位置1。
管理节点内构建B树结构,用于记录系统共享内存地址空间的当前操作情况,在B树节点中的链表指针中记录管理节点申请获取读写权限的等待情况。
利用非易失内存细粒度特性,B树中可以锁定大于8bit粒度大小的数据。
B树节点的关键字为该操作对应共享内存的起始地址,并在B树每个节点中存储权限标识和索引所需信息。这些信息包括:内存池地址,数据大小、链表指针,该指针指向等待获得该地址操作权的任务链表。
任务链表的每一个单元中的信息包括:申请操作权限的管理节点ID、该ID节点申请该权限时的节点内时间戳、起始地址信息、数据大小、读/写操作标志位和申请状态位。
当管理节点接收到客户端请求后发送问询信息给其他管理节点,向其他该管理节点问询该地址写权限是否被占用。
S3:其他管理节接到问询信息后,在B树中检查该请求地址空间是否存在:
A:若该地址区间未添加在B树中,则其他管理节点接受该管理节点请求,在B树中插入该地址对应的节点,将该管理节点发送的信息作为B树中该节点的信息,将该信息加入该地址对应的B树节点链表,将申请状态位置0,并返回ack=1信息到申请该权限的管理节点。
B:若该地址区间已存在于B树中,管理节点则将接收到的信息加入该地址对应的B树节点链表尾端,将申请状态位置0,并返回ack=0信息到申请该权限的管理节点。
S4:发起问询请求的管理节点在接收到其他管理节点发来的ack信息后进行判断:
a:在本节点B树中不存在该地址空间节点,且接收到其他管理节点的回复信息且皆为ack=1,则利用RDMA中ib_post_send()原语向其他管理节点发送占用声明,在本节点内为该地址空间创建B树节点插入B树中,并将申请状态位置1。
b:在本节点B树中不存在该地址空间节点,且接收到其他管理节点的回复信息中存在ack=0。
(1)若接收到半数及以上管理节点回复的ack=1消息,则利用RDMA中ib_post_send()原语向其他管理节点发送占用声明。在本节点内为该地址空间创建B树节点插入B树中,并将申请状态位置1。
(2)若未接收到半数及以上管理节点回复的ack=1消息,则不发送全局声明,在本节点内为该地址空间创建B树节点插入B树中,并将申请状态位置0。
c:在本节点B树中存在该地址空间节点,且接收到ack=0,则将问询信息加入该地址对应的B树节点链表尾端,并将申请状态位置0。
S5:管理节点在接收到占用声明时将B树该地址链表中对应节点的申请状态位置1。占用声明信息包括:管理节点ID、ID节点内时间戳、起始地址、声明标志位。
此处起始地址用于定位管理节点B树中该地址对应节点的位置,管理节点ID用于索引与ID节点内时间戳用于在B树节点链表中定位所要声明的成员,将该成员的声明标志位置1。
S6:在管理节点获得权限后,管理节点将数据分为备份组内除读保留节点外其他服务节点数量的块,将各块的起始地址发送给服务节点,其中管理节点发来的分块信息包括:所分块数、客户端起始地址、分块信息校验和。
所分块数:管理节点根据备份组内除读保留节点外的节点数进行分块。
客户端起始地址:管理节点将客户端请求时的写入数据的起始地址发送给服务节点。
分块信息校验和:管理节点计算出所分块数以及客户端起始地址的校验信息,服务节点在接收到分块信息后根据校验信息验证信息的准确性。
S7:备份组内各服务节点都有唯一标识的ID,在备份组收到管理节点请求后,各服务节点根据分块信息校验和校验数据接收到分块信息的正确性,除保留节点外的管理节点按照起始地址和分块块数计算出各块起始地址,结合自身节点ID计算出从读取块的编号,从客户端节点对应地址使用ib_rdma_read()操作原语读回数据。
S8:备份组内除读保留节点外的服务节点读到块内数据后,将所读到块数据通过ib_rdma_write()操作原语写入除读保留节点外的服务节点,进行备份组内的数据块交换。
S9:交换完成后服务节点通过ib_rdma_send()操作原语将读保留节点更新请求发送给读备份节点。更新请求信息为:新读备份节点ID、更新数据地址、数据大小。
新读备份节点ID:数据分块写与节点间数据交换过程完成后,存有完整新写入数据的节点ID。
更新数据地址:在写入完整数据的服务节点内,新写入数据的起始地址,用于读保留节点从该地址读取数据。
数据大小:新写入数据的大小,用于读保留节点确定读取数据的大小。
S10:读保留点接收到读保留节点更新请求后,向所有管理节点发送读保留节点更换消息,消息内包含新读保留节点ID。管理节点收到读保留节点更换消息后根据是否正在读该地址区间数据,回复读保留节点:
A:管理节点未在读该区间数据,则发送ack=1信息到读保留节点,将读保留节点修改为消息中新读保留节点。
B:管理节点中正在读该区间数据,则将读保留节点更新为消息中新读保留节点,待当前正在进行的读操作完成后,发送ack=1信息到读保留节点。
S11:读保留节点收到所有管理节点的ack=1回复后,通过ib_post_read()原语从其他服务节点读取更新数据,备份组数据。
完成所有服务节点的数据写入操作。
系统响应客户端读请求过程:
S1:客户端通过RDMA网络ib_post_send()原语发送读请求到管理节点。信息包括:客户端ID、目录哈希值、客户端读入数据存储地址、读入数据大小、读/写标志位。
客户端ID:客户端集群内各节点都有一个ID,用于标识发送请求的客户端节点。
读目录哈希值:客户端读目录的哈希值,用于在管理节点确定文件目录位置,定位服务层备份组及该服务节点内存储的地址。
客户端读入数据存储地址:用户所读取系统内数据在客户端中的存储地址。
读入数据大小:用户申请读回客户端的数据大小。
读标志位有效:标识用户向分布式系统申请读操作。
S2:管理节点在接收到客户端读请求后,在管理节点内构建的B树结构对应节点的链表中插入该条读记录,链表中读单元的信息包括:申请读权限节点ID、该ID节点申请该权限时的节点内时间戳、读起始地址信息、读数据大小、读/写操作标志位和申请状态位。
S3:管理节点根据B树中读取地址区间对应单元链表内是否有写请求,发送读反馈消息到发起读请求的客户端节点,读反馈信息成员包括:备份组编号、读保留节点ID、服务节点内数据地址、数据大小、读取方式、校验信息。
备份组编号:管理节点通知客户端节点所读信息所在的备份组编号。
读保留节点ID:在备份组内读保留节点的ID。
数据地址:客户端申请读取的数据在管理节点内的起始地址。
数据大小:客户端申请读取数据的大小。
读取方式:用于标识采用分块读取方式或从备份组读保留节点读取;a.若该位为1,则采用分块读取的方式,客户端将数据按大小分为备份组内节点数量的块,使用并发的ib_post_read()操作原语从备份组内所有服务节点中读取数据。b.若该位为0,则使用ib_post_read()操作原语从备份组读保留节点读取数据。
若管理节点B树该地址节点的链表内有写请求,则读反馈信息中的读取方式位置0,反馈给客户端采用分块读取方式读取数据;若管理节点B树该地址节点的链表内无写请求,则将读反馈信息中的读取方式位置1,反馈给客户端从备份组读保留节点读取数据。
S4:客户端接收到来自管理节点的读反馈信息,根据校验和检测读反馈信息的准确性,根据信息中的读取方式从备份组中读取数据。
S5:客户端使用ib_post_send()原语发送读完成反馈到管理节点,完成读取操作。
S6:管理节点收到读完成反馈后将链表中的读请求删除。
以上分布式系统充分利用RDMA单边读性能优于单边写性能与小数据读写优于大数据读写的特点,有针对性的设计客户端与服务端的主动读方式,提升系统数据传输效率,减少数据复制,提升系统整体读写性能;以上系统根据系统内该地址的写情况,设计分块读取与保留节点读取两种方式,避免读阻塞现象,优化系统读取性能;上述系统中管理层平行架构避免响应瓶颈提供系统并发响应效率,另外平行架构与服务层备份组机制共同提升系统容灾性;管理节点权限问询排队机制降低系统延迟,减少系统写请求等待。以上设计与优化相互结合,系统性能显著提升。
本领域技术人员可以将本发明提供的基于RDMA与非易失内存的分布式文件数据块读写方法,理解为本发明提供的基于RDMA与非易失内存的分布式文件数据块读写系统的一个实施例。即,所述基于RDMA与非易失内存的分布式文件数据块读写系统可以通过执行所述基于RDMA与非易失内存的分布式文件数据块读写方法的步骤流程实现。
根据本发明提供的一种基于RDMA与非易失内存的分布式文件数据块读写系统,包括:模块M1:管理层节点对服务层节点数据存储空间所组成的共享内存池进行统一编址与管理;模块M2:在客户端节点、管理节点及服务节点间建立RDMA连接后,响应客户端读写请求;模块M3:分布式文件数据分块并发读、分布式文件数据分块并发写,服务节点响应客户端请求,将海量数据按块粒度进行切分,客户端节点在备份组平行服务节点间进行单边并发分块读与单边并发分块写操作,消除读写操作间阻塞现象,提升系统读写效率与读写并行度;所述模块M2包括:模块M2.1:客户端通过RDMA网络发送读写请求到管理节点;模块M2.2:管理层节点利用非易失内存细粒度访问特性执行问询排队机制,申请获取客户端所需操作地址的读/写控制权;模块M2.3:进行读操作:根据系统内有无对同一地址空间的写请求操作,进行备份组读保留节点内读操作与备份组平行服务节点内分块并发读操作;模块M2.4:进行写操作:客户端节点与备份组平行服务节点间进行并发分块写操作。
优选地,所述模块M2.3包括:模块M2.3.1:预操作地址空间的操作请求链表中仅有读操作请求时,按照分块并发读机制,客户端节点使用分块并发的读方式将数据读回节点;模块M2.3.2:预操作地址空间正在被写请求占用时,客户端从备份组中的读保留节点读取数据。
优选地,模块M2.4包括:模块M2.4.1:客户端节点与管理节点进行RDMA通信,定位写操作地址对应备份组及备份组内都保留节点;模块M2.4.2:管理节点将客户端节点的写请求数据地址分块,发送给备份组内除读保留节点外的服务节点;模块M2.4.3:备份组内各服务节点按管理节点发送的客户端节点地址信息,从客户端节点内进行分块读操作;模块M2.4.4:在备份组内服务节点间部进行分块数据互换;模块M2.4.5:服务节点向管理节点申请更新读保留节点;模块M2.4.6:服务节点与原读保留节点利用RDMA进行数据交换,更新读保留节点内数据为最新数据;模块M2.4.7:服务节点向客户端节点进行写完成反馈。
优选地,模块M2.1包括:模块M2.1.1:管理层内各节点为平行关系,管理层各节点维护相同的元数据信息;模块M2.1.2:客户端节点从服务层选择任意节点请求提供读写服务操作。
优选地,所述模块M2.2包括:模块M2.2.1:在每个管理节点内构建一棵B树结构,用于记录系统读写地址;模块M2.2.2:B树节点中存储权限标识和索引所需信息:操作地址空间的粒度、当前地址读/写操作权标识信息以及链表指针,指向等待获得该地址操作权的任务链表;
任务链表的每一个单元中的信息包括以下任一种或者任多种信息:-申请操作权限的管理节点ID;-ID节点申请该权限时的节点内时间戳;-起始地址信息;-结束地址信息;-读/写操作标志位和申请状态位;模块2.2.3:利用非易失内存细粒度特性,可以锁定大于8bit粒度大小的数据,B树中记录正在被操作的任意大小地址。
模块M2.2问询排队机制维持管理节点一致性,根据客户端节点权限申请,可分为:-客户端节点进行读操作,管理节点申请获取读权限;-客户端节点进行写操作,管理节点申请获取写权限;
模块M2.2.1中,管理节点间利用RDMA进行通信,管理节点向其他管理节点申请该地址空间的读权限。
模块M2.2.2包括以下情况:-其他管理节点未占用该地址权限,管理节点通过该写请求申请;-其他管理节点正在占用该地址写权限,管理节点等待获取该写权限。
模块M2.2.2.2具有以下特点:-多个管理节点同时申请该地址写权限,通过管理节点内权限投票的方式判定该写权限的权限分配。-其他管理节点已占用该写权限,排队等待获取写权限。
本发明能够在分布式系统中为客户端提供高效数据读写服务。在大数据环境中提供分布式可靠数据存储,结合RDMA特点和分块读写机制提升系统读写效率,设计备份组和服务层平行架构提升系统容灾性,设计备份组读保留节点,使对同一数据块的读写操作同时进行,避免写操作对读操作的阻塞。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
在本申请的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

Claims (6)

1.一种基于RDMA与非易失内存的分布式文件数据块读写方法,其特征在于,包括:
步骤M1:管理层节点对服务层节点数据存储空间所组成的共享内存池进行统一编址与管理;
步骤M2:在客户端节点、管理节点及服务节点间建立RDMA连接后,响应客户端读写请求;
步骤M3:分布式文件数据分块并发读、分布式文件数据分块并发写,服务节点响应客户端请求,将海量数据按块粒度进行切分,客户端节点在备份组平行服务节点间进行单边并发分块读与单边并发分块写操作;
所述步骤M2包括:
步骤M2.1:客户端通过RDMA网络发送读写请求到管理节点;
步骤M2.2:管理层节点利用非易失内存细粒度访问特性执行问询排队机制,申请获取客户端所需操作地址的读/写控制权;
步骤M2.3:进行读操作:根据系统内有无对同一地址空间的写请求操作,进行备份组读保留节点内读操作或备份组平行服务节点内分块并发读操作;
步骤M2.4:进行写操作:客户端节点与备份组平行服务节点间进行并发分块写操作;
步骤M2.4包括:
步骤M2.4.1:客户端节点与管理节点进行RDMA通信,定位写操作地址对应备份组及备份组内读保留节点;
步骤M2.4.2:管理节点将客户端节点的写请求数据地址分块,发送给备份组内除读保留节点外的服务节点;
步骤M2.4.3:备份组内各服务节点按管理节点发送的客户端节点地址信息,从客户端节点内进行分块读操作;
步骤M2.4.4:在备份组服务节内部进行分块数据互换;
步骤M2.4.5:服务节点向管理节点申请更新读保留节点;
步骤M2.4.6:服务节点与原读保留节点利用RDMA进行数据交换,更新读保留节点内数据为最新数据;
步骤M2.4.7:服务节点向客户端节点进行写完成反馈;
所述步骤M2.2包括:
步骤M2.2.1:在每个管理节点内构建一棵B树结构,用于记录系统读写地址;
步骤M2.2.2:B树节点存储权限标识和索引所需信息,包括:操作地址空间粒度、当前地址读/写操作权标识信息以及链表指针,指向等待获得该地址操作权的任务链表;
任务链表的每一个单元中的信息包括以下任一种或者任多种信息:
-申请操作权限的管理节点ID;
-ID节点申请该权限时的节点内时间戳;
-起始地址信息;
-结束地址信息;
-读/写操作标志位和申请状态位;
步骤2.2.3:锁定大于8bit粒度大小的数据,B树中记录正在被操作的任意大小地址。
2.根据权利要求1所述的基于RDMA与非易失内存的分布式文件数据块读写方法,其特征在于,所述步骤M2.3包括:
步骤M2.3.1:预操作地址空间的操作请求链表中仅有读操作请求时,按照分块并发读机制,客户端节点使用分块并发的读方式将数据读回节点;
步骤M2.3.2:预操作地址空间正在被写请求占用时,客户端从备份组中的读保留节点读取数据。
3.根据权利要求1所述的基于RDMA与非易失内存的分布式文件数据块读写方法,其特征在于,步骤M2.1包括:
步骤M2.1.1:管理层各节点维护相同的元数据信息;
步骤M2.1.2:客户端节点从服务层选择任意节点请求提供读写服务操作。
4.一种基于RDMA与非易失内存的分布式文件数据块读写系统,其特征在于,包括:
模块M1:管理层节点对服务层节点数据存储空间所组成的共享内存池进行统一编址与管理;
模块M2:在客户端节点、管理节点及服务节点间建立RDMA连接后,响应客户端读写请求;
模块M3:分布式文件数据分块并发读、分布式文件数据分块并发写,服务节点响应客户端请求,将海量数据按块粒度进行切分,客户端节点在备份组平行服务节点间进行单边并发分块读与单边并发分块写操作;
所述模块M2包括:
模块M2.1:客户端通过RDMA网络发送读写请求到管理节点;
模块M2.2:管理层节点利用非易失内存细粒度访问特性执行问询排队机制,申请获取客户端所需操作地址的读/写控制权;
模块M2.3:进行读操作:根据系统内有无对同一地址空间的写请求操作,进行备份组读保留节点内读操作或备份组平行服务节点内分块并发读操作;
模块M2.4:进行写操作:客户端节点与备份组平行服务节点间进行并发分块写操作;
模块M2.4包括:
模块M2.4.1:客户端节点与管理节点进行RDMA通信,定位写操作地址对应备份组及备份组内读保留节点;
模块M2.4.2:管理节点将客户端节点的写请求数据地址分块,发送给备份组内除读保留节点外的服务节点;
模块M2.4.3:备份组内各服务节点按管理节点发送的客户端节点地址信息,从客户端节点内进行分块读操作;
模块M2.4.4:在备份组服务节内部进行分块数据互换;
模块M2.4.5:服务节点向管理节点申请更新读保留节点;
模块M2.4.6:服务节点与原读保留节点利用RDMA进行数据交换,更新读保留节点内数据为最新数据;
模块M2.4.7:服务节点向客户端节点进行写完成反馈;
所述模块M2.2包括:
模块M2.2.1:在每个管理节点内构建一棵B树结构,用于记录系统读写地址;
模块M2.2.2:B树节点存储权限标识和索引所需信息,包括:操作地址空间粒度、当前地址读/写操作权标识信息以及链表指针,指向等待获得该地址操作权的任务链表;
任务链表的每一个单元中的信息包括以下任一种或者任多种信息:
-申请操作权限的管理节点ID;
-ID节点申请该权限时的节点内时间戳;
-起始地址信息;
-结束地址信息;
-读/写操作标志位和申请状态位;
模块2.2.3:锁定大于8bit粒度大小的数据,B树中记录正在被操作的任意大小地址。
5.根据权利要求4所述的基于RDMA与非易失内存的分布式文件数据块读写系统,其特征在于,所述模块M2.3包括:
模块M2.3.1:预操作地址空间的操作请求链表中仅有读操作请求时,按照分块并发读机制,客户端节点使用分块并发的读方式将数据读回节点;
模块M2.3.2:预操作地址空间正在被写请求占用时,客户端从备份组中的读保留节点读取数据。
6.根据权利要求4所述的基于RDMA与非易失内存的分布式文件数据块读写系统,其特征在于,模块M2.1包括:
模块M2.1.1:管理层各节点维护相同的元数据信息;
模块M2.1.2:客户端节点从服务层选择任意节点请求提供读写服务操作。
CN201911348068.8A 2019-12-24 2019-12-24 基于rdma与非易失内存的分布式文件数据块读写方法及系统 Active CN111125049B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911348068.8A CN111125049B (zh) 2019-12-24 2019-12-24 基于rdma与非易失内存的分布式文件数据块读写方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911348068.8A CN111125049B (zh) 2019-12-24 2019-12-24 基于rdma与非易失内存的分布式文件数据块读写方法及系统

Publications (2)

Publication Number Publication Date
CN111125049A CN111125049A (zh) 2020-05-08
CN111125049B true CN111125049B (zh) 2023-06-23

Family

ID=70501940

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911348068.8A Active CN111125049B (zh) 2019-12-24 2019-12-24 基于rdma与非易失内存的分布式文件数据块读写方法及系统

Country Status (1)

Country Link
CN (1) CN111125049B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111459418B (zh) * 2020-05-15 2021-07-23 南京大学 一种基于rdma的键值存储系统传输方法
CN112667416B (zh) * 2020-12-25 2024-02-27 华中科技大学 一种基于rdma的非易失内存系统的通信方法及服务器
CN113010477B (zh) * 2021-03-23 2023-09-12 中兴通讯股份有限公司 持久内存文件系统元数据的检索方法和装置、存储结构
CN113534708A (zh) * 2021-07-12 2021-10-22 三一汽车制造有限公司 一种工控机热备份方法、装置及系统
CN114756388B (zh) * 2022-03-28 2024-05-31 北京航空航天大学 一种基于rdma的集群系统节点间按需共享内存的方法
WO2023241676A1 (zh) * 2022-06-16 2023-12-21 华为云计算技术有限公司 一种内存池的操作方法以及装置
CN116069262B (zh) * 2023-03-06 2023-07-14 苏州浪潮智能科技有限公司 一种分布式存储卸载方法、装置、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108268208A (zh) * 2016-12-30 2018-07-10 清华大学 一种基于rdma的分布式内存文件系统
CN108710638A (zh) * 2018-04-13 2018-10-26 上海交通大学 一种基于混合rdma操作的分布式并发控制方法及系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108268208A (zh) * 2016-12-30 2018-07-10 清华大学 一种基于rdma的分布式内存文件系统
CN108710638A (zh) * 2018-04-13 2018-10-26 上海交通大学 一种基于混合rdma操作的分布式并发控制方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Kangping Dong等.Exploiting RDMA for Distributed Low-Latency Key/Value Store on Non-Volatile Main Memory.《2017 IEEE 23rd International Conference on Parallel and Distributed Systems》.2018,第I-VII节. *
崔忠强 ; 左德承 ; 张展 ; .在云间可重构的分布式存储.系统工程理论与实践.2011,(第S2期),全文. *

Also Published As

Publication number Publication date
CN111125049A (zh) 2020-05-08

Similar Documents

Publication Publication Date Title
CN111125049B (zh) 基于rdma与非易失内存的分布式文件数据块读写方法及系统
CN110113420B (zh) 基于nvm的分布式消息队列管理系统
ES2811106T3 (es) Sistema de gestión de base de datos
US11269772B2 (en) Persistent memory storage engine device based on log structure and control method thereof
CN103312624B (zh) 一种消息队列服务系统和方法
CN106294190B (zh) 一种存储空间管理方法及装置
CN107888657A (zh) 低延迟分布式存储系统
US20080086603A1 (en) Memory management method and system
US9841913B2 (en) System and method for enabling high read rates to data element lists
CN110096221B (zh) 存储器系统及其控制方法
US10055153B2 (en) Implementing hierarchical distributed-linked lists for network devices
CN105612518A (zh) 用于自主存储器搜索的方法及系统
CN102088484A (zh) 一种分布式文件系统的写锁定方法及系统
US20190199794A1 (en) Efficient replication of changes to a byte-addressable persistent memory over a network
CN112162846B (zh) 事务处理方法、设备及计算机可读存储介质
CN109165321B (zh) 一种基于非易失内存的一致性哈希表构建方法和系统
US9785367B2 (en) System and method for enabling high read rates to data element lists
CN103310008A (zh) 一种云控制服务器及其文件索引方法
CN102799659A (zh) 一种基于无中心分布系统的全局重复数据删除系统及方法
CN117520278A (zh) 一种分布式文件系统多客户端高精度目录配额控制方法
US20090132765A1 (en) Dual controller storage apparatus and cache memory mirror method thereof
US10846014B2 (en) Concept for group memory write instructions
US9767014B2 (en) System and method for implementing distributed-linked lists for network devices
CN115712581A (zh) 数据访问方法、存储系统及存储节点
CN112015807B (zh) 数据同步的处理方法、装置、电子设备及计算机存储介质

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
GR01 Patent grant
GR01 Patent grant