CN111125447A - 一种元数据访问方法、装置、设备及可读存储介质 - Google Patents

一种元数据访问方法、装置、设备及可读存储介质 Download PDF

Info

Publication number
CN111125447A
CN111125447A CN201911332567.8A CN201911332567A CN111125447A CN 111125447 A CN111125447 A CN 111125447A CN 201911332567 A CN201911332567 A CN 201911332567A CN 111125447 A CN111125447 A CN 111125447A
Authority
CN
China
Prior art keywords
target
metadata access
tree
leaf node
logical address
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.)
Withdrawn
Application number
CN201911332567.8A
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.)
Beijing Inspur Data Technology Co Ltd
Original Assignee
Beijing Inspur Data Technology Co Ltd
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 Beijing Inspur Data Technology Co Ltd filed Critical Beijing Inspur Data Technology Co Ltd
Priority to CN201911332567.8A priority Critical patent/CN111125447A/zh
Publication of CN111125447A publication Critical patent/CN111125447A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0615Address space extension
    • G06F12/0623Address space extension for memory modules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees

Landscapes

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

Abstract

本申请公开了一种元数据访问方法、装置、设备及可读存储介质。本申请公开的方法包括:若接收到元数据访问请求,则从元数据访问请求中提取逻辑地址;确定逻辑地址对应的目标B+树;在目标B+树中查询逻辑地址对应的目标叶子节点;若元数据访问请求为写请求,则根据元数据访问请求修改目标叶子节点中的逻辑地址对应的键值对,并将修改后的目标叶子节点写入磁盘。本申请可以缓解写放大问题,降低磁盘损耗,提高元数据的访问性能和效率,从而提升整个存储***的性能和效率。相应地,本申请公开的一种元数据访问装置、设备及可读存储介质,也同样具有上述技术效果。

Description

一种元数据访问方法、装置、设备及可读存储介质
技术领域
本申请涉及计算机技术领域,特别涉及一种元数据访问方法、装置、设备及可读存储介质。
背景技术
在全闪存储***中,元数据使用B+树的数据结构来管理。目前,B+树中的每个节点(Node)上存储有512个键值对,当一个节点中的任一个键值对发生变化,需要将整个节点上的所有键值对都写盘一次。每个键值对的大小为16B(字节),因此当某一个节点中的任一个键值对发生变化,则需要将16B×512=8KB(千字节)的数据写入磁盘。如此一来,会产生很大的写放大,反复落盘会增加磁盘损耗,元数据的访问性能和效率也较低,因此影响了整个存储***的性能和效率。
因此,如何提高元数据的访问性能和效率,是本领域技术人员需要解决的问题。
发明内容
有鉴于此,本申请的目的在于提供一种元数据访问方法、装置、设备及可读存储介质,以提高元数据的访问性能和效率。其具体方案如下:
第一方面,本申请提供了一种元数据访问方法,包括:
若接收到元数据访问请求,则从所述元数据访问请求中提取逻辑地址;
确定所述逻辑地址对应的目标B+树;所述目标B+树中的每个节点上存储的键值对个数小于512;
在所述目标B+树中查询所述逻辑地址对应的目标叶子节点;
若所述元数据访问请求为写请求,则根据所述元数据访问请求修改所述目标叶子节点中的所述逻辑地址对应的键值对,并将修改后的所述目标叶子节点写入磁盘。
优选地,所述确定所述逻辑地址对应的目标B+树,包括:
查询所述逻辑地址的前N位;
查询所有B+树的标识信息,将标识信息与所述前N位一致的B+树确定为所述目标B+树。
优选地,所述在所述目标B+树中查询所述逻辑地址对应的目标叶子节点,包括:
遍历所述目标B+树,以查询所述目标叶子节点。
优选地,所述在所述目标B+树中查询所述逻辑地址对应的目标叶子节点之前,还包括:
判断所述目标B+树中是否存在所述目标叶子节点;
若是,则执行所述在所述目标B+树中查询所述逻辑地址对应的目标叶子节点的步骤。
优选地,还包括:
若所述目标B+树中不存在所述目标叶子节点,则判断所述元数据访问请求的类型;
若所述元数据访问请求为写请求,则在所述目标B+树中创建所述目标叶子节点,将所述键值对存储至所述目标叶子节点后,将所述目标叶子节点写入磁盘;所述键值对包括所述逻辑地址和所述逻辑地址对应的物理地址。
优选地,还包括:
若所述元数据访问请求为读请求,则返回数据不存在的提示消息。
优选地,所述在所述目标B+树中查询所述逻辑地址对应的目标叶子节点之后,还包括:
若所述元数据访问请求为读请求,则读取所述键值对中的物理地址并返回。
第二方面,本申请提供了一种元数据访问装置,包括:
提取模块,用于若接收到元数据访问请求,则从所述元数据访问请求中提取逻辑地址;
确定模块,用于确定所述逻辑地址对应的目标B+树;所述目标B+树中的每个节点上存储的键值对个数小于512;
查询模块,用于在所述目标B+树中查询所述逻辑地址对应的目标叶子节点;
修改模块,用于若所述元数据访问请求为写请求,则根据所述元数据访问请求修改所述目标叶子节点中的所述逻辑地址对应的键值对,并将修改后的所述目标叶子节点写入磁盘。
第三方面,本申请提供了一种元数据访问设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现前述公开的元数据访问方法。
第四方面,本申请提供了一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的元数据访问方法。
通过以上方案可知,本申请提供了一种元数据访问方法,包括:若接收到元数据访问请求,则从所述元数据访问请求中提取逻辑地址;确定所述逻辑地址对应的目标B+树;所述目标B+树中的每个节点上存储的键值对个数小于512;在所述目标B+树中查询所述逻辑地址对应的目标叶子节点;若所述元数据访问请求为写请求,则根据所述元数据访问请求修改所述目标叶子节点中的所述逻辑地址对应的键值对,并将修改后的所述目标叶子节点写入磁盘。
可见,该方法在接收到元数据访问请求后,从元数据访问请求中提取逻辑地址;然后确定逻辑地址对应的目标B+树;并在目标B+树中查询逻辑地址对应的目标叶子节点;若元数据访问请求为写请求,则根据元数据访问请求修改目标叶子节点中的逻辑地址对应的键值对,并将修改后的目标叶子节点写入磁盘。其中,目标B+树中的每个节点上存储的键值对个数小于512。如此一来,每次将叶子节点写入磁盘时,需要写入的数据量将减小,从而可以缓解写放大问题,降低磁盘损耗,提高元数据的访问性能和效率,从而提升整个存储***的性能和效率。
相应地,本申请提供的一种元数据访问装置、设备及可读存储介质,也同样具有上述技术效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种元数据访问方法流程图;
图2为本申请公开的另一种元数据访问方法流程图;
图3为本申请公开的一种B+树示意图;
图4为本申请公开的一个卷对应的多个B+树的示意图;
图5为本申请公开的一种元数据访问装置示意图;
图6为本申请公开的一种元数据访问设备示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,现有技术会产生很大的写放大,反复落盘会增加磁盘损耗,元数据的访问性能和效率也较低,因此影响了整个存储***的性能和效率。为此,本申请提供了一种元数据访问方案,能够缓解写放大问题,降低磁盘损耗,提高元数据的访问性能和效率,从而提升整个存储***的性能和效率。
参见图1所示,本申请实施例公开了一种元数据访问方法,包括:
S101、若接收到元数据访问请求,则从元数据访问请求中提取逻辑地址。
S102、确定逻辑地址对应的目标B+树。
其中,目标B+树中的每个节点上存储的键值对个数小于512。
需要说明的是,B+树中的节点分为叶子节点和非叶子节点。叶子节点上以键值对的形式存储有元数据的逻辑地址和物理地址。非叶子节点上以键值对的形式存储有其下级节点的索引值和下级节点的物理地址。键值对为key-value键值对。
在一种具体实施方式中,确定逻辑地址对应的目标B+树,包括:查询逻辑地址的前N位;查询所有B+树的标识信息,将标识信息与前N位一致的B+树确定为目标B+树。
在本实施例中,将存储***中的所有逻辑地址以前N位(如前4位)进行区分,将前N位相同的逻辑地址划分至同一个组,这样就可获得多个分组,而每个分组对应一个B+树,B+树的标识信息就用前N位来表示。因此若B+树的标识信息与某一逻辑地址的前N位一致,则该B+树即为该逻辑地址对应的B+树。其中,N为正整数,且小于逻辑地址的总位数。
在本实施例中,目标B+树中的每个节点上存储的键值对个数小于512,那么每个B+树中的每个节点上的数据量大小均小于8KB,且每个B+树的层数不超过4层。假设每个节点上的数据量大小为512B(字节),由于每个键值对为16B,那么每个节点上可存储32个键值对。与现有技术相比而言,本申请中的B+树中的每个节点上的数据量大小比现有技术少,那么某个叶子节点在写入磁盘时,数据量写入量得到了减少,由此可见,本实施例能够减小叶子节点落盘时的数据写入量,缓解写放大问题,从而降低磁盘损耗。而由于数据写入量的降低,所以可以提高元数据的访问性能和效率。
需要说明的是,节点上存储的数据量大小一般根据业务需求设定,因此每个节点上存储的数据量大小可以灵活调整。其中,每个节点上存储的数据量大小可以在512B~8KB之间(包括端点值)灵活调整,当然,也可以更大。将叶子节点写入磁盘,实质上是写入磁盘的扇区,而一个扇区每次可写入的最小数据量为512B,因此将目标B+树中的每个节点上存储的键值对个数设置为32,使得B+树中的每个节点上的数据量大小为512B,既适应扇区写入量,又降低了写放大,是最为优选地实现方式。其中,每个B+树的层数不超过4层,因此本申请使一个卷对应多个B+树来满足数据记录需求。
S103、在目标B+树中查询逻辑地址对应的目标叶子节点。
在一种具体实施方式中,在目标B+树中查询逻辑地址对应的目标叶子节点,包括:遍历目标B+树,以查询目标叶子节点。
在一种具体实施方式中,在目标B+树中查询逻辑地址对应的目标叶子节点之前,还包括:判断目标B+树中是否存在目标叶子节点;若是,则执行在目标B+树中查询逻辑地址对应的目标叶子节点的步骤。若目标B+树中不存在目标叶子节点,则判断元数据访问请求的类型;若元数据访问请求为写请求,则在目标B+树中创建目标叶子节点,将键值对存储至目标叶子节点后,将目标叶子节点写入磁盘;键值对包括逻辑地址和逻辑地址对应的物理地址。若元数据访问请求为读请求,则返回数据不存在的提示消息。
在一种具体实施方式中,在目标B+树中查询逻辑地址对应的目标叶子节点之后,还包括:若元数据访问请求为读请求,则读取键值对中的物理地址并返回。
具体的,在目标B+树中查询物理地址之前,首先判断目标B+树中有没有目标叶子节点;若有,则可从目标叶子节点中查询获得逻辑地址对应的键值对,进而确定元数据访问请求是写请求还是读请求;若是写请求,则表明当前元数据访问请求的目的是修改该键值对,因此修改键值对中的物理地址后,将目标叶子节点写入磁盘。若是读请求,则表明当前元数据访问请求的目的是读取键值对中的物理地址,因此读取键值对中的物理地址返回即可,之后可按照物理地址去磁盘读取相应的元数据。
S104、若元数据访问请求为写请求,则根据元数据访问请求修改目标叶子节点中的逻辑地址对应的键值对,并将修改后的目标叶子节点写入磁盘。
其中,修改目标叶子节点中的逻辑地址对应的键值对,即修改该键值对中的物理地址。
需要说明的是,若确定目标B+树中没有目标叶子节点,那么进一步确定元数据访问请求是写请求还是读请求;若是写请求,则表明当前元数据访问请求的目的是创建新叶子节点,那么在目标B+树中创建目标叶子节点,将键值对存储至目标叶子节点后,将目标叶子节点写入磁盘。若是读请求,则由于当前目标B+树中没有目标叶子节点,因此返回数据不存在的提示消息。其中,将键值对存储至目标叶子节点,包括:将物理地址和逻辑地址以key-value键值对的形式存储至目标叶子节点。物理地址和逻辑地址相对应。
可见,本申请实施例在接收到元数据访问请求后,从元数据访问请求中提取逻辑地址;然后确定逻辑地址对应的目标B+树;并在目标B+树中查询逻辑地址对应的目标叶子节点;若元数据访问请求为写请求,则根据元数据访问请求修改目标叶子节点中的逻辑地址对应的键值对,并将修改后的目标叶子节点写入磁盘。其中,目标B+树中的每个节点上存储的键值对个数小于512。如此一来,每次将叶子节点写入磁盘时,需要写入的数据量将减小,从而可以缓解写放大问题,降低磁盘损耗,提高元数据的访问性能和效率,从而提升整个存储***的性能和效率。
请参见图2,图2为本实施提供的另一种元数据访问方法流程图。如图2所示,当查询到请求,则访问元数据缓存;若查找到元数据,则检验元数据后,返回查询结果;若未找到元数据,则在SDD盘中查询元数据,并检验元数据后,返回查询结果。之后按照查询结果去存储***的下层读取数据。
需要说明的是,B+树结构可提高元数据的访问效率。利用B+树访问元数据时,逐级遍历B+树,直到叶子节点,具有更好的搜索效率,更适合管理和组织元数据。
按照本申请提供的方法,可构建如图3所示的B+树。在图3中,第0层和第1层为非叶子节点,第2层为叶子节点。节点中每个数字代表一个PBA。以第0层中的节点为例,其中的8和15为两个不同的PBA。
需要说明的是,由于本申请减少了B+树中的节点上的数据量,但由于一个卷对应的总数据量大小不变,因此一个卷需要对应的多个B+树,也就是对应多个根节点。如图4所示,图4为本实施提供的一个卷对应的多个B+树的示意图。在图3中,ROOT Address为根节点对应的地址,占位8B。若每个卷对应M个B+树,那么则需要M-1个8B来存储根节点的地址。
在本实施例中,B+树中的每个节点上存储的数据量大小为512B,由于每个键值对是16B,因此一个节点上可存储32个键值对。当B+树中的任一个节点上的任一个键值对发生改变后,只需要把该节点上的512B数据写到盘上去,从而可降低写放大,提高元数据操作的性能和效率。
其中,B+树中的每个节点上的数据量变小了,该B+树所承载的数据映射关系也就变少了,也就是其能够表示的数据量也少了。因此一个卷需要对应的多个B+树,才能将一个卷上的数据量表示完整。
在接收到元数据访问请求后,从元数据访问请求中提取逻辑地址;然后确定逻辑地址对应的目标B+树;并在目标B+树中查询逻辑地址对应的目标叶子节点;若元数据访问请求为写请求,则根据元数据访问请求修改目标叶子节点中的逻辑地址对应的键值对,并将修改后的目标叶子节点写入磁盘。可见,将每个节点上的数据量修改为512B,每当改动节点上的某个键值对(16B),只需写盘512B,从而降低了写放大。同时,为了解决节点变小无法完整表示所有数据的问题,使一个卷对应多个B+树,每棵B+树承载一定容量的数据,从而实现数据的全部记录。本实施例提高了元数据的访问性能和效率,提升了整个存储***的性能和效率。
下面对本申请实施例提供的一种元数据访问装置进行介绍,下文描述的一种元数据访问装置与上文描述的一种元数据访问方法可以相互参照。
参见图5所示,本申请实施例公开了一种元数据访问装置,包括:
提取模块501,用于若接收到元数据访问请求,则从元数据访问请求中提取逻辑地址;
确定模块502,用于确定逻辑地址对应的目标B+树;目标B+树中的每个节点上存储的键值对个数小于512;
查询模块503,用于在目标B+树中查询逻辑地址对应的目标叶子节点;
修改模块504,用于若元数据访问请求为写请求,则根据元数据访问请求修改目标叶子节点中的逻辑地址对应的键值对,并将修改后的目标叶子节点写入磁盘。
在一种具体实施方式中,确定模块具体用于:
查询逻辑地址的前N位;查询所有B+树的标识信息,将标识信息与前N位一致的B+树确定为目标B+树。
在一种具体实施方式中,查询模块具体用于:
遍历目标B+树,以查询目标叶子节点。
在一种具体实施方式中,还包括:
第一判断模块,用于判断目标B+树中是否存在目标叶子节点;
执行模块,用于若目标B+树中存在目标叶子节点,则执行查询模块中的步骤。
在一种具体实施方式中,还包括:
第二判断模块,用于若目标B+树中不存在目标叶子节点,则判断元数据访问请求的类型;
写请求执行模块,用于若元数据访问请求为写请求,则在目标B+树中创建目标叶子节点,将键值对存储至目标叶子节点后,将目标叶子节点写入磁盘;键值对包括逻辑地址和逻辑地址对应的物理地址。
在一种具体实施方式中,还包括:
第一读请求执行模块,用于若元数据访问请求为读请求,则返回数据不存在的提示消息。
在一种具体实施方式中,还包括:
第二读请求执行模块,用于若元数据访问请求为读请求,则读取键值对中的物理地址并返回。
其中,关于本实施例中各个模块、单元更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本实施例提供了一种元数据访问装置,该装置可以缓解写放大问题,降低磁盘损耗,提高元数据的访问性能和效率,从而提升整个存储***的性能和效率。
下面对本申请实施例提供的一种元数据访问设备进行介绍,下文描述的一种元数据访问设备与上文描述的一种元数据访问方法及装置可以相互参照。
参见图6所示,本申请实施例公开了一种元数据访问设备,包括:
存储器601,用于保存计算机程序;
处理器602,用于执行所述计算机程序,以实现上述任意实施例公开的方法。
下面对本申请实施例提供的一种可读存储介质进行介绍,下文描述的一种可读存储介质与上文描述的一种元数据访问方法、装置及设备可以相互参照。
一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的元数据访问方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本申请涉及的“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法或设备固有的其它步骤或单元。
需要说明的是,在本申请中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的可读存储介质中。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种元数据访问方法,其特征在于,包括:
若接收到元数据访问请求,则从所述元数据访问请求中提取逻辑地址;
确定所述逻辑地址对应的目标B+树;所述目标B+树中的每个节点上存储的键值对个数小于512;
在所述目标B+树中查询所述逻辑地址对应的目标叶子节点;
若所述元数据访问请求为写请求,则根据所述元数据访问请求修改所述目标叶子节点中的所述逻辑地址对应的键值对,并将修改后的所述目标叶子节点写入磁盘。
2.根据权利要求1所述的元数据访问方法,其特征在于,所述确定所述逻辑地址对应的目标B+树,包括:
查询所述逻辑地址的前N位;
查询所有B+树的标识信息,将标识信息与所述前N位一致的B+树确定为所述目标B+树。
3.根据权利要求1所述的元数据访问方法,其特征在于,所述在所述目标B+树中查询所述逻辑地址对应的目标叶子节点,包括:
遍历所述目标B+树,以查询所述目标叶子节点。
4.根据权利要求1所述的元数据访问方法,其特征在于,所述在所述目标B+树中查询所述逻辑地址对应的目标叶子节点之前,还包括:
判断所述目标B+树中是否存在所述目标叶子节点;
若是,则执行所述在所述目标B+树中查询所述逻辑地址对应的目标叶子节点的步骤。
5.根据权利要求4所述的元数据访问方法,其特征在于,还包括:
若所述目标B+树中不存在所述目标叶子节点,则判断所述元数据访问请求的类型;
若所述元数据访问请求为写请求,则在所述目标B+树中创建所述目标叶子节点,将所述键值对存储至所述目标叶子节点后,将所述目标叶子节点写入磁盘;所述键值对包括所述逻辑地址和所述逻辑地址对应的物理地址。
6.根据权利要求5所述的元数据访问方法,其特征在于,还包括:
若所述元数据访问请求为读请求,则返回数据不存在的提示消息。
7.根据权利要求1所述的元数据访问方法,其特征在于,所述在所述目标B+树中查询所述逻辑地址对应的目标叶子节点之后,还包括:
若所述元数据访问请求为读请求,则读取所述键值对中的物理地址并返回。
8.一种元数据访问装置,其特征在于,包括:
提取模块,用于若接收到元数据访问请求,则从所述元数据访问请求中提取逻辑地址;
确定模块,用于确定所述逻辑地址对应的目标B+树;所述目标B+树中的每个节点上存储的键值对个数小于512;
查询模块,用于在所述目标B+树中查询所述逻辑地址对应的目标叶子节点;
修改模块,用于若所述元数据访问请求为写请求,则根据所述元数据访问请求修改所述目标叶子节点中的所述逻辑地址对应的键值对,并将修改后的所述目标叶子节点写入磁盘。
9.一种元数据访问设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的元数据访问方法。
10.一种可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的元数据访问方法。
CN201911332567.8A 2019-12-22 2019-12-22 一种元数据访问方法、装置、设备及可读存储介质 Withdrawn CN111125447A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911332567.8A CN111125447A (zh) 2019-12-22 2019-12-22 一种元数据访问方法、装置、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911332567.8A CN111125447A (zh) 2019-12-22 2019-12-22 一种元数据访问方法、装置、设备及可读存储介质

Publications (1)

Publication Number Publication Date
CN111125447A true CN111125447A (zh) 2020-05-08

Family

ID=70501336

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911332567.8A Withdrawn CN111125447A (zh) 2019-12-22 2019-12-22 一种元数据访问方法、装置、设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN111125447A (zh)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111625198A (zh) * 2020-05-28 2020-09-04 深圳佰维存储科技股份有限公司 一种元数据缓存方法和元数据缓存装置
CN111625192A (zh) * 2020-05-22 2020-09-04 浪潮电子信息产业股份有限公司 一种元数据对象访问方法、装置、设备以及介质
CN111651424A (zh) * 2020-06-10 2020-09-11 中国科学院深圳先进技术研究院 一种数据处理方法、装置、数据节点及存储介质
CN111858590A (zh) * 2020-07-16 2020-10-30 苏州浪潮智能科技有限公司 一种存储***元数据组织方法、***、终端及存储介质
CN111857600A (zh) * 2020-07-30 2020-10-30 江苏金恒信息科技股份有限公司 一种数据读写方法及装置
CN111881064A (zh) * 2020-07-24 2020-11-03 北京浪潮数据技术有限公司 一种全闪存储***中访问请求的处理方法、装置及设备
CN112035380A (zh) * 2020-09-25 2020-12-04 苏州浪潮智能科技有限公司 一种数据处理方法、装置、设备及可读存储介质
CN113392040A (zh) * 2021-06-23 2021-09-14 锐捷网络股份有限公司 一种地址映射方法、装置、设备
CN113867622A (zh) * 2021-08-20 2021-12-31 苏州浪潮智能科技有限公司 一种快照读写速度提升的方法、装置、设备及可读介质
CN113885789A (zh) * 2021-08-20 2022-01-04 苏州浪潮智能科技有限公司 元数据修复后校验数据一致性的方法、***、设备及介质
CN113901276A (zh) * 2021-09-30 2022-01-07 苏州浪潮智能科技有限公司 一种数据管理、b+树加载方法、装置及电子设备
CN114020525A (zh) * 2021-10-21 2022-02-08 苏州浪潮智能科技有限公司 故障隔离方法、装置、设备及存储介质
CN114327270A (zh) * 2021-12-23 2022-04-12 郑州云海信息技术有限公司 一种请求处理方法、装置、设备及可读存储介质
CN114942963A (zh) * 2022-04-24 2022-08-26 阿里巴巴(中国)有限公司 数据存储方法、装置、设备和存储介质
CN115576956A (zh) * 2022-12-07 2023-01-06 苏州浪潮智能科技有限公司 一种数据处理方法、***、设备以及存储介质
CN115599704A (zh) * 2022-11-30 2023-01-13 湖南国科亿存信息科技有限公司(Cn) 一种文件***元数据分离存储方法、装置及存储介质
CN116662019A (zh) * 2023-07-31 2023-08-29 苏州浪潮智能科技有限公司 请求的分配方法、装置、存储介质及电子装置
CN116880780A (zh) * 2023-09-08 2023-10-13 合肥康芯威存储技术有限公司 树的数据写入方法、装置、机器可读介质及存储器

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110022819A1 (en) * 2009-07-24 2011-01-27 Daniel Jeffrey Post Index cache tree
CN103049390A (zh) * 2012-12-14 2013-04-17 华为技术有限公司 应用元数据的数据处理方法及存储***
CN109213445A (zh) * 2018-08-23 2019-01-15 郑州云海信息技术有限公司 一种存储***元数据的管理方法、管理***及相关装置
CN110532201A (zh) * 2019-08-23 2019-12-03 北京浪潮数据技术有限公司 一种元数据处理方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110022819A1 (en) * 2009-07-24 2011-01-27 Daniel Jeffrey Post Index cache tree
CN103049390A (zh) * 2012-12-14 2013-04-17 华为技术有限公司 应用元数据的数据处理方法及存储***
CN109213445A (zh) * 2018-08-23 2019-01-15 郑州云海信息技术有限公司 一种存储***元数据的管理方法、管理***及相关装置
CN110532201A (zh) * 2019-08-23 2019-12-03 北京浪潮数据技术有限公司 一种元数据处理方法及装置

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111625192B (zh) * 2020-05-22 2022-07-05 浪潮电子信息产业股份有限公司 一种元数据对象访问方法、装置、设备以及介质
CN111625192A (zh) * 2020-05-22 2020-09-04 浪潮电子信息产业股份有限公司 一种元数据对象访问方法、装置、设备以及介质
CN111625198A (zh) * 2020-05-28 2020-09-04 深圳佰维存储科技股份有限公司 一种元数据缓存方法和元数据缓存装置
CN111651424A (zh) * 2020-06-10 2020-09-11 中国科学院深圳先进技术研究院 一种数据处理方法、装置、数据节点及存储介质
CN111651424B (zh) * 2020-06-10 2024-05-03 中国科学院深圳先进技术研究院 一种数据处理方法、装置、数据节点及存储介质
CN111858590A (zh) * 2020-07-16 2020-10-30 苏州浪潮智能科技有限公司 一种存储***元数据组织方法、***、终端及存储介质
CN111881064A (zh) * 2020-07-24 2020-11-03 北京浪潮数据技术有限公司 一种全闪存储***中访问请求的处理方法、装置及设备
CN111857600A (zh) * 2020-07-30 2020-10-30 江苏金恒信息科技股份有限公司 一种数据读写方法及装置
CN111857600B (zh) * 2020-07-30 2024-04-16 江苏金恒信息科技股份有限公司 一种数据读写方法及装置
CN112035380A (zh) * 2020-09-25 2020-12-04 苏州浪潮智能科技有限公司 一种数据处理方法、装置、设备及可读存储介质
CN113392040A (zh) * 2021-06-23 2021-09-14 锐捷网络股份有限公司 一种地址映射方法、装置、设备
CN113867622A (zh) * 2021-08-20 2021-12-31 苏州浪潮智能科技有限公司 一种快照读写速度提升的方法、装置、设备及可读介质
CN113885789A (zh) * 2021-08-20 2022-01-04 苏州浪潮智能科技有限公司 元数据修复后校验数据一致性的方法、***、设备及介质
CN113885789B (zh) * 2021-08-20 2023-08-18 苏州浪潮智能科技有限公司 元数据修复后校验数据一致性的方法、***、设备及介质
CN113867622B (zh) * 2021-08-20 2023-08-18 苏州浪潮智能科技有限公司 一种快照读写速度提升的方法、装置、设备及可读介质
CN113901276A (zh) * 2021-09-30 2022-01-07 苏州浪潮智能科技有限公司 一种数据管理、b+树加载方法、装置及电子设备
CN114020525B (zh) * 2021-10-21 2024-04-19 苏州浪潮智能科技有限公司 故障隔离方法、装置、设备及存储介质
CN114020525A (zh) * 2021-10-21 2022-02-08 苏州浪潮智能科技有限公司 故障隔离方法、装置、设备及存储介质
CN114327270B (zh) * 2021-12-23 2023-09-15 郑州云海信息技术有限公司 一种请求处理方法、装置、设备及可读存储介质
WO2023116109A1 (zh) * 2021-12-23 2023-06-29 郑州云海信息技术有限公司 一种请求处理方法、装置、设备及非易失性可读存储介质
CN114327270A (zh) * 2021-12-23 2022-04-12 郑州云海信息技术有限公司 一种请求处理方法、装置、设备及可读存储介质
CN114942963A (zh) * 2022-04-24 2022-08-26 阿里巴巴(中国)有限公司 数据存储方法、装置、设备和存储介质
CN115599704A (zh) * 2022-11-30 2023-01-13 湖南国科亿存信息科技有限公司(Cn) 一种文件***元数据分离存储方法、装置及存储介质
CN115576956B (zh) * 2022-12-07 2023-03-10 苏州浪潮智能科技有限公司 一种数据处理方法、***、设备以及存储介质
CN115576956A (zh) * 2022-12-07 2023-01-06 苏州浪潮智能科技有限公司 一种数据处理方法、***、设备以及存储介质
WO2024119797A1 (zh) * 2022-12-07 2024-06-13 苏州元脑智能科技有限公司 一种数据处理方法、***、设备以及存储介质
CN116662019A (zh) * 2023-07-31 2023-08-29 苏州浪潮智能科技有限公司 请求的分配方法、装置、存储介质及电子装置
CN116662019B (zh) * 2023-07-31 2023-11-03 苏州浪潮智能科技有限公司 请求的分配方法、装置、存储介质及电子装置
CN116880780A (zh) * 2023-09-08 2023-10-13 合肥康芯威存储技术有限公司 树的数据写入方法、装置、机器可读介质及存储器

Similar Documents

Publication Publication Date Title
CN111125447A (zh) 一种元数据访问方法、装置、设备及可读存储介质
US11068455B2 (en) Mapper tree with super leaf nodes
US7761648B2 (en) Caching method for NAND flash translation layer
US9298384B2 (en) Method and device for storing data in a flash memory using address mapping for supporting various block sizes
KR101077904B1 (ko) 페이지 단위 매핑 기법을 이용한 플래시 메모리 관리 장치 및 방법
CN111309258B (zh) 一种b+树的存取方法、装置和计算机可读存储介质
US20070094440A1 (en) Enhanced data access in a storage device
JP2015515047A5 (zh)
WO2015096698A1 (zh) 一种Flash的数据写入和读取方法
US10552335B2 (en) Method and electronic device for a mapping table in a solid-state memory
CN109976669B (zh) 一种边缘存储方法、装置和存储介质
CN113835639B (zh) 一种i/o请求处理方法、装置、设备及可读存储介质
CN108664482B (zh) Flash存储器及存储文件管理方法
CN115712500A (zh) 内存释放、内存恢复方法、装置、计算机设备及存储介质
JP2007220107A (ja) 不揮発性メモリのマッピング情報管理装置及び方法
KR20230026946A (ko) 해싱을 사용하는 키 밸류 스토리지 장치 및 그것의 동작 방법
TW201826125A (zh) 快閃記憶體裝置之記憶體控制方法
CN111190835B (zh) 一种数据写入方法、装置、设备及介质
US7185020B2 (en) Generating one or more block addresses based on an identifier of a hierarchical data structure
CN115437579B (zh) 一种元数据管理方法、装置、计算机设备及可读存储介质
KR100977709B1 (ko) 플래시메모리 저장장치 및 그에 따른 관리 방법
CN108304331B (zh) 基于NorFlash的环形队列式数据存储方法及装置
CN112015672A (zh) 一种存储***中数据处理方法、装置、设备及存储介质
CN111881064A (zh) 一种全闪存储***中访问请求的处理方法、装置及设备
CN107329903B (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
WW01 Invention patent application withdrawn after publication

Application publication date: 20200508

WW01 Invention patent application withdrawn after publication