CN110909211B - 一种基于元数据b+树的元数据校验方法及装置 - Google Patents
一种基于元数据b+树的元数据校验方法及装置 Download PDFInfo
- Publication number
- CN110909211B CN110909211B CN201910969640.6A CN201910969640A CN110909211B CN 110909211 B CN110909211 B CN 110909211B CN 201910969640 A CN201910969640 A CN 201910969640A CN 110909211 B CN110909211 B CN 110909211B
- Authority
- CN
- China
- Prior art keywords
- metadata
- check field
- tree
- same
- check
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000012795 verification Methods 0.000 title claims abstract description 26
- 239000003999 initiator Substances 0.000 claims description 13
- 230000009225 memory damage Effects 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 6
- 239000000243 solution Substances 0.000 description 5
- 238000013500 data storage Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 1
- 239000012895 dilution Substances 0.000 description 1
- 238000010790 dilution Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9027—Trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/907—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Library & Information Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种基于元数据B+树的元数据校验方法及装置,通过在同一棵元数据B+树中的所有节点中添加相同的校验字段达到检验获取的元数据是否有效的效果。其中,所述方法包括:接收元数据查询请求,并从元数据B+树中获取对应的元数据以及所述元数据所在节点的第一校验字段;从所述元数据所在节点的父节点中获取所述父节点中的第二校验字段;比较所述第一校验字段与所述第二校验字段是否相同;根据比较结果判断所述元数据是否有效。
Description
技术领域
本申请涉及数据存储领域,尤其涉及一种基于元数据B+树的元数据校验方法及装置。
背景技术
随着存储行业的发展,存储系统对于软件的要求越来越高。其中,对于元数据的校验是存储系统中重要的一环。
元数据是指描述数据的数据,可以理解为数据字典,比一般意义的数据范畴更加广泛的数据,不仅仅是表示数据的类型、名称、值等信息,也进一步提供了数据的上下文信息,比如数据所属域、数据来源等等。在数据存储系统中,元数据是信息存储的基础,是数据的最小单元,在获取存储中所需要的数据时,需要先获取该数据的元数据。
元数据B+树是存储元数据的一种有效方法,其特点在于只利用树形结构上的叶节点存储元数据中的信息,其它节点只存储与元数据信息相关的分类信息,从而可以对元数据信息进行快速有效的检索。为了使元数据B+树存储方式有效进行,针对元数据B+树结构的元数据校验是必不可缺的技术环节。目前仍缺乏一种基于元数据B+树的元数据校验方法。
发明内容
为了解决现有技术存在的上述技术问题,本申请提供了一种基于元数据B+树的元数据校验方法及装置,通过在元数据B+树的各个节点中加入校验字段的方式解决了现有技术中无法针对元数据B+树的结构进行元数据校验的问题。
本申请提供了一种基于元数据B+树的元数据校验方法,包括:
接收元数据查询请求,并从元数据B+树中获取对应的元数据以及所述元数据所在节点的第一校验字段;
从所述元数据所在节点的父节点中获取所述父节点中的第二校验字段;
比较所述第一校验字段与所述第二校验字段是否相同;
根据比较结果判断所述元数据是否有效。
可选的,所述根据比较结果判断所述元数据是否有效包括:
当所述第一校验字段与所述第二校验字段相同时,所述元数据为有效数据;
当所述第一校验字段与所述第二校验字段不同时,所述元数据为无效数据。
可选的,在所述接收元数据查询请求之前进一步包括:
在一颗元数据B+树上的所有节点中添加相同的校验字段。
可选的,所述校验字段包括:
公钥Commonkey、树型TreeType校验字段。
可选的,在所述根据比较结果判断元数据是否有效之后进一步包括:
当判断所述元数据为有效数据后,向所述元数据查询请求的发起者发送所说元数据对应数据的物理块地址PBA,所述PBA用于指向所述元数据对应数据的存储地址。
可选的,在所述根据比较结果判断元数据是否有效之后进一步包括:
当判断所述元数据为无效数据后,向元数据查询请求的发起者反馈存储器损坏的信息。
本申请提供了一种基于元数据B+树的元数据校验装置,包括:
查询单元,用于接收元数据查询请求,并从元数据B+树中获取对应的元数据及所述元数据所在节点的第一校验字段;
获取单元,用于从所述元数据所在节点的父节点中获取所述父节点中的第二校验字段;
比较单元,用于比较所述第一校验字段与所述第二校验字段是否相同;
判断单元,用于根据比较结果判断所述元数据是否为有效数据。
可选的,在所述查询单元之前进一步包括:
补增单元,用于向一棵元数据B+树的所有节点中添加相同的校验字段。
可选的,所述校验字段包括:
公钥Commonkey、树型TreeType校验字段。
可选的,所述判断单元的判断结果包括:
当所述第一校验字段与所述第二校验字段相同时,所述元数据为有效数据;
当所述第一校验字段与所述第二校验字段不同时,所述元数据为无效数据,所述元数据的存储器损坏。
可选的,在所述判断单元后进一步包括:
发送单元,用于当判断所述元数据为有效数据后,将所述元数据对应的数据的PBA信息发送给元数据查询请求的发起者;
可选的,在所述判断单元后进一步包括:
反馈单元,用于当判断所述元数据为无效数据后,将存储器损坏的信息反馈给所述元数据查询请求的发起者。
本申请所述方法具有以下优点:
通过在元数据B+树节点中添加校验字段并比较获取的元数据所在节点的校验字段与其父节点的校验字段是否相同,当不相同时,说明两节点中有一个节点校验字段发生变化,证明其节点已损坏,并且所述元数据B+ 树已经失效,所获得的元数据也不具有有效性,从而可以有效的验证所获取的元数据是否为所在元数据B+树中的有效数据,从而防止由于获取到错误的元数据信息而无法获取所需要的数据信息。
同时,通过对失效元数据信息的反馈,可以及时发现存储器中出现的故障,从而使工作人员可以对存储器进行及时修正。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例一提供的一种基于元数据B+树的元数据校验方法的流程图;
图2为一种元数据B+树结构示意图;
图3为本申请实施例二提供的另一种基于元数据B+树的元数据校验方法的流程图;
图4为本申请实施例三提供的一种基于元数据B+树的元数据校验装置的结构框图;
图5为本申请实施例四提供的另一种基于元数据B+树的元数据校验装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例一:
本申请实施例一提供了一种基于元数据B+树的元数据校验方法,下面结合附图具体说明。
参见图1,该图为本申请实施例一提供的机油稀释的解决方法的流程图。
本申请实施例所述方法包括以下步骤:
S101:接收元数据查询请求,并从元数据B+树中获取对应的元数据以及所述元数据所在节点的第一校验字段。
如图2所示,在一棵元数据B+树中具有多个节点,其中只有第2层的叶节点中存储有元数据信息内容,其它节点只存储有与元数据有关的分类信息,可以使用户利用其它节点的分类信息在元数据B+树中索引到需要的元数据信息。
同时,在同一棵元数据B+树中的所有节点中都包含有相同的校验字段,该校验字段包括公钥Commonkey、树型TreeType校验字段等。
S102:从所述元数据所在节点的父节点中获取所述父节点中的第二校验字段。
元数据所在节点的父节点是指元数据信息所在的叶节点的上级节点。
S103:比较所述第一校验字段与所述第二校验字段是否相同。
由于预设的同一棵元数据B+树中的所有节点中的校验字段相同,因此,可以根据获取到的元数据信息所在叶节点的校验字段与所述叶节点的父节点中的校验字段是否相同来判断所述元数据信息是否有效。
S104:根据比较结果判断所述元数据是否有效。
所述比较结果共有两种:
当所述第一校验字段与所述第二校验字段相同时,所述元数据为有效数据;
当所述第一校验字段与所述第二校验字段不同时,所述元数据为无效数据。同时,当出现校验字段不同时,说明存储器发生了故障,例如生成卷离线事件等。
实施例二:
本申请实施例二提供了另一种基于元数据B+树的元数据校验方法的实施例,下面结合附图具体说明。
参见图3,该图为本申请实施例二提供的另一种基于元数据B+树的元数据校验方法的流程图。
本申请实施例所述方法包括:
S201:在一棵元数据B+树的所有节点中添加相同的校验字段。
添加相同的校验字段的目的是可以根据校验字段是否相同来判断获取的信息是否有效。
S202:接收元数据查询请求,并从所述元数据B+树中获取对应的元数据以及所述元数据所在节点的第一校验字段。
S203:从所述元数据所在节点的父节点中获取所述父节点中的第二校验字段。
S204:比较所述第一校验字段与所述第二校验字段是否相同。
S205:根据比较结果判断所述元数据是否有效。
所述比较结果共有两种:
当所述第一校验字段与所述第二校验字段相同时,所述元数据为有效数据;
当所述第一校验字段与所述第二校验字段不同时,所述元数据为无效数据。同时,当出现校验字段不同时,说明存储器发生了故障,例如生成卷离线事件等。
S206:当判断所述元数据为有效数据时,向元数据查询请求的发起者发送元数据对应数据的PBA。
物理区块地址PBA中包含有数据存储位置的地址信息,通过PBA即可找到相应的数据。
S207:当判断所述元数据为无效数据时,向元数据查询请求的发起者反馈存储器损坏的信息。
当所述第一校验字段与所述第二校验字段不相同时,说明元数据存储器中发生了例如生成卷离线事件等故障事件,此时向元数据查询请求的发起者反馈存储器损坏的信息,以便相关人员对存储器及时修正。
实施例三:
基于上述实施例提供的基于元数据B+树的元数据校验方法,本申请实施例三还提供了一种基于元数据B+树的元数据校验装置,下面结合附图具体说明。
如图4,该图为本实施例提供的一种基于元数据B+树的元数据校验装置的结构框图。
所述结构框图包括:
101:查询单元,用于接收元数据查询请求,并从元数据B+树中获取对应的元数据及所述元数据所在节点的第一校验字段;
102:获取单元,用于从所述元数据所在节点的父节点中获取所述父节点中的第二校验字段;
103:比较单元,用于比较所述第一校验字段与所述第二校验字段是否相同;
104:判断单元,用于根据比较结果判断所述元数据是否为有效数据。
实施例四:
基于上述基于元数据B+树的元数据校验方法,本申请实施例还提供了另一种基于元数据B+树的元数据校验装置,下面结合附图具体说明。
如图5,该图为本申请基于元数据B+树的元数据校验装置的另一实施例的结构框图,包括:
201:补增单元,用于向一棵元数据B+树的所有节点中添加相同的校验字段。
202:查询单元,用于接收元数据查询请求,并从元数据B+树中获取对应的元数据及所述元数据所在节点的第一校验字段;
203:获取单元,用于从所述元数据所在节点的父节点中获取所述父节点中的第二校验字段;
204:比较单元,用于比较所述第一校验字段与所述第二校验字段是否相同;
205:判断单元,用于根据比较结果判断所述元数据是否为有效数据。
206:发送单元,用于当判断所述元数据为有效数据后,将所述元数据对应的数据的PBA信息发送给元数据查询请求的发起者。
207:反馈单元,用于当判断所述元数据为无效数据后,将存储器损坏的信息反馈给所述元数据查询请求的发起者。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程可以参考前述方法实施例中的对应过程,在此不再赘述。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元及模块可以是或者也可以不是物理上分开的。另外,还可以根据实际的需要选择其中的部分或者全部单元和模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本申请的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (12)
1.一种基于元数据B+树的元数据校验方法,其特征在于,所述方法包括:
接收元数据查询请求,并从元数据B+树中获取对应的元数据以及所述元数据所在节点的第一校验字段,同一元数据B+树中的所有节点中的校验字段相同;
从所述元数据所在节点的父节点中获取所述父节点中的第二校验字段;
比较所述第一校验字段与所述第二校验字段是否相同;
根据比较结果判断所述元数据是否有效。
2.根据权利要求1所述的方法,其特征在于,所述根据比较结果判断所述元数据是否有效包括:
当所述第一校验字段与所述第二校验字段相同时,所述元数据为有效数据;
当所述第一校验字段与所述第二校验字段不同时,所述元数据为无效数据。
3.根据权利要求1所述的方法,其特征在于,在所述接收元数据查询请求之前进一步包括:
在一颗元数据B+树上的所有节点中添加相同的校验字段。
4.根据权利要求1所述的方法,其特征在于,所述校验字段包括:
公钥Commonkey、树型TreeType校验字段。
5.根据权利要求1所述的方法,其特征在于,在所述根据比较结果判断所述元数据是否有效后进一步包括:
当判断所述元数据为有效数据后,向所述元数据查询请求的发起者发送所述元数据对应数据的物理块地址PBA,所述PBA用于指向所述元数据对应数据的存储地址。
6.根据权利要求1所述的方法,其特征在于,在所述根据比较结果判断所述元数据是否有效后进一步包括:
当判断所述元数据为无效数据后,该判断结果说明存储所述元数据的存储器已损坏,此时向元数据查询请求的发起者反馈存储器损坏的信息。
7.一种基于元数据B+树的元数据校验装置,其特征在于,所述装置包括:
查询单元,用于接收元数据查询请求,并从元数据B+树中获取对应的元数据及所述元数据所在节点的第一校验字段,同一元数据B+树中的所有节点中的校验字段相同;
获取单元,用于从所述元数据所在节点的父节点中获取所述父节点中的第二校验字段;
比较单元,用于比较所述第一校验字段与所述第二校验字段是否相同;
判断单元,用于根据比较结果判断所述元数据是否为有效数据。
8.根据权利要求7所述的装置,其特征在于,在所述查询单元前进一步包括:
补增单元,用于向一棵元数据B+树的所有节点中添加相同的校验字段。
9.根据权利要求7所述的装置,其特征在于,所述校验字段包括:
公钥Commonkey、树型TreeType校验字段。
10.根据权利要求7所述的装置,其特征在于,所述判断单元的判断结果包括:
当所述第一校验字段与所述第二校验字段相同时,所述元数据为有效数据;
当所述第一校验字段与所述第二校验字段不同时,所述元数据为无效数据。
11.根据权利要求7所述的装置,其特征在于,在所述判断单元后进一步包括:
发送单元,用于当判断所述元数据为有效数据后,将所述元数据对应的数据的PBA信息发送给元数据查询请求的发起者。
12.根据权利要求7所述的装置,其特征在于,在所述判断单元后进一步包括:
反馈单元,用于当判断所述元数据为无效数据后,将存储器损坏的信息反馈给所述元数据查询请求的发起者。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910969640.6A CN110909211B (zh) | 2019-10-12 | 2019-10-12 | 一种基于元数据b+树的元数据校验方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910969640.6A CN110909211B (zh) | 2019-10-12 | 2019-10-12 | 一种基于元数据b+树的元数据校验方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110909211A CN110909211A (zh) | 2020-03-24 |
CN110909211B true CN110909211B (zh) | 2022-06-03 |
Family
ID=69815227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910969640.6A Active CN110909211B (zh) | 2019-10-12 | 2019-10-12 | 一种基于元数据b+树的元数据校验方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110909211B (zh) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9720926B2 (en) * | 2014-08-04 | 2017-08-01 | Cohesity, Inc. | Read operations in a tree-based distributed file system |
CN109299111A (zh) * | 2018-11-14 | 2019-02-01 | 郑州云海信息技术有限公司 | 一种元数据查询方法、装置、设备及计算机可读存储介质 |
-
2019
- 2019-10-12 CN CN201910969640.6A patent/CN110909211B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110909211A (zh) | 2020-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6782778B2 (ja) | データ処理方法及び装置 | |
CN107633016B (zh) | 数据处理方法及装置和电子设备 | |
CN102279749B (zh) | 一种代码归并方法和设备 | |
CN107315814B (zh) | 一种kdb数据库数据迁移后数据一致性验证方法及系统 | |
CN106484606A (zh) | 一种代码提交方法和设备 | |
CN105872127B (zh) | 一种ip地址管理系统 | |
CN107015884B (zh) | 一种数据存储方法及装置 | |
EP2915075A1 (en) | Method, apparatus and computer program for detecting deviations in data sources | |
CN105657677A (zh) | 一种短信发送方法、短信网关及业务平台 | |
CN108460271B (zh) | 终端识别方法及装置 | |
CN106230602A (zh) | 数字证书的证书链的完整性检测系统及方法 | |
CN109871408B (zh) | 一种多类型数据库适配方法、装置、电子设备及存储介质 | |
CN113760775A (zh) | 一种消息自动测试方法及装置 | |
CN110909211B (zh) | 一种基于元数据b+树的元数据校验方法及装置 | |
CN101150624A (zh) | 一种数据配置的系统和方法 | |
CN110489416B (zh) | 一种基于数据处理的信息存储方法及相关设备 | |
CN100389565C (zh) | 一种实现报警判决的方法 | |
CN106294110A (zh) | 一种文件比对方法及装置 | |
CN110807037B (zh) | 一种数据修改方法、装置、电子设备及存储介质 | |
CN109582829A (zh) | 一种处理方法、装置、设备及可读存储介质 | |
CN113064966B (zh) | 用于故障定位的方法、系统及装置 | |
CN103761233A (zh) | 处理数据库操作请求的方法、设备和系统 | |
CN110188007B (zh) | 分布式数据修复方法、装置、网络节点及存储介质 | |
CN112286910A (zh) | 一种数据校验方法及装置 | |
CN109560964B (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 |