首页  专利技术  电子电路装置的制造及其应用技术

元数据索引构建方法、装置、设备、存储介质和程序产品与流程

432次浏览
元数据索引构建方法、装置、设备、存储介质和程序产品与流程

本发明涉及云计算,尤其是指一种元数据索引构建方法、装置、设备、存储介质和程序产品。


背景技术:

1、云块存储作为一种新兴的通用块存储服务,具有高性能、高可扩展性、高可靠性、通用性等优点。目前,各大云供应商都面向租户提供了云块存储服务,支持着各行各业的基础数据存储。典型的云块存储系统包括以下几个部分:

2、客户端服务器,负责云块设备的虚拟化并提供云硬盘的逻辑访问视图,来自用户的输入输出(input/output,io)请求将在客户端服务器的块设备驱动层被重定向至后端存储集群;

3、系统管理服务器,负责存储集群的关键元数据管理、存储节点管理、垃圾回收管理和数据迁移管理等;

4、索引服务器,保存责任范围内所有数据块的元数据,负责云块存储系统中的用户逻辑地址到实际物理存储地址的映射管理与转换,并构建块元数据索引加速元数据查询与更新;

5、存储服务器,负责数据块的持久化存储。存储服务器将直接操作存储器件(例如,机械硬盘,固态硬盘等),进行最终的数据访存操作。此外,云块存储系统通常使用日志结构来存储块数据,即用户对某一个数据块的更新不会覆盖原有的旧数据块,而是以顺序追加的方式异地写入硬盘日志空间的尾部。这种方法有利于发挥现有主流存储器件的顺序写入性能。也因为如此,云块存储系统需要大量的元数据索引来记录每个数据块的最新存储位置;

6、网线和交换机,服务器间的数据及请求的传输基于数据中心的高速网络和交换机进行。

7、目前,基于先进网络技术的云块存储系统已经可以实现io请求全链路(包含请求发送、索引查询、数据读写)百微秒级别的访问延迟,其中由于硬盘的访问延迟较高,数据读写步骤已经占有大部分延迟开销。这对云块存储的索引性能提出了极高的要求。具体来说,云块存储系统需要其元数据索引满足低于10微秒的低延迟索引访问、查询与更新性能,才能不影响系统整体性能。若在索引过程中引入额外的硬盘访问,将会使性能折半。

8、元数据索引是云块存储系统中用于提升数据块查询与存取性能的主要技术之一。索引通常由多个索引项构成,每个索引项包含一个索引键(key)和一个索引值(value),索引通过特定的辅助索引结构来链接所有的索引项以实现查询与更新功能。

9、目前,云块存储系统普遍使用硬盘(例如,机械硬盘或固态硬盘)作为持久性存储设备。但是,由于硬盘的io访问延迟远高于动态随机存取内存(dynamic random accessmemory,dram)内存,简单使用遍历硬盘方法查询用户所需的块数据性能极差。因此,如何快速地在硬盘中找到块数据,成为影响云块存储系统性能的关键指标。对此,现有云块存储系统首先对系统中的所有块数据提取元数据(例如,存储物理位置,块大小等),然后将该元数据作为索引值并为其分配唯一的索引键,以此建立元数据索引从而实现对块数据的快速查询。

10、随着数据量的不断增长,产业化的云块存储系统普遍具有百太字节(terabyte,tb)级到数十拍字节(petabyte,pb)级的总存储容量。在这样的大规模块存储系统中,用于存储元数据的传统索引(例如,b+树、红黑树等)的成本与性能问题日益突出,主要表现在:内存空间占用过高,每次查询需要多次的间接搜索,此外,基于文件或是数据库的持久化索引,索引查询与更新效率也受到块设备io性能的影响,延迟高且吞吐量低,难以满足现代低延迟云块存储系统的索引性能需求。


技术实现思路

1、本发明技术方案的目的在于提供一种元数据索引构建方法、装置、设备、存储介质和程序产品,用以解决现有元数据索引的效率低的问题。

2、为了解决上述技术问题,本发明实施例提供如下技术方案:

3、本发明实施例提供一种元数据索引构建方法,包括:

4、将存储空间划分为多个分片空间,所述分片空间包括至少一个用户数据块;

5、提取所述用户数据块的元数据,将所述元数据进行存储;

6、为所述分片空间构建学习型的二级索引结构,所述二级索引结构包括:所述分片空间的第一标识信息以及学习索引实例,所述学习索引实例包括:所述元数据的第一索引键与所述元数据的存储地址的对应关系;

7、为所述二级索引结构构建哈希表形式的一级索引结构,所述一级索引结构包括:所述第一标识信息的第二索引键,以及,所述二级索引结构的存储地址。

8、可选地,所述元数据包括元数据键和元数据值:

9、所述元数据键包括所述用户数据块在所述分片空间中的逻辑地址的偏移的指示信息;

10、所述元数据值包括以下至少一项:

11、所述用户数据块的物理存储地址的指示信息;

12、所述用户数据块的大小信息;

13、所述用户数据块的校验信息;

14、所述用户数据块的更新信息;

15、所述用户数据块的删除信息。

16、可选地,所述二级索引结构还包括以下至少一项:

17、用于指示所述分片空间是否处于垃圾回收状态的指示信息;

18、用于指示所述分片空间的存储服务器的指示信息。

19、可选地,所述学习索引实例是通过以下方式得到的:

20、获取所述元数据的第一索引键以及所述元数据的存储地址;

21、根据所述第一索引键以及对应的所述存储地址生成学习数据;

22、将所述学习数据划分为训练数据和监督数据;

23、利用机器学习模型,根据所述训练数据和所述监督数据得到所述学习索引实例。

24、可选地,所述方法还包括:

25、接收查询请求,所述查询请求包括第一索引键和第二索引键;

26、根据所述第二索引键和所述一级索引结构,查询所述二级索引结构的存储地址;

27、在查询到所述二级索引结构的存储地址的情况下,根据所述第一索引键和所述二级索引结构,得到所述元数据的存储地址。

28、可选地,所述方法还包括以下至少一项:

29、在所述元数据的存储地址对应的元数据更新的情况下,在所述元数据的存储地址中,利用更新后的元数据中的元数据值替换所述存储地址存储的元数据中的元数据值;

30、在所述存储空间内的所述分片空间新增或删除的情况下,在所述分片空间内的用户数据块对应的元数据的存储地址中新增或删除所述用户数据块的元数据。

31、可选地,所述方法还包括以下至少一项:

32、在所述分片空间中部分用户数据块新增或删除的情况下,根据新增或删除后用户数据块对应的元数据的存储地址,重新训练所述学习索引实例;

33、在所述存储空间内的所述分片空间整体新增或删除的情况下,根据新增或删除后的分片空间,新增或删除对应的二级索引结构,并更新所述一级索引结构。

34、本发明实施例还提供一种元数据索引构建装置,包括:

35、第一处理模块,用于将存储空间划分为多个分片空间,所述分片空间包括至少一个用户数据块;

36、第二处理模块,用于提取所述用户数据块的元数据,将所述元数据进行存储;

37、第一构建模块,用于为所述分片空间构建学习型的二级索引结构,所述二级索引结构包括:所述分片空间的第一标识信息以及学习索引实例,所述学习索引实例包括:所述元数据的第一索引键与所述元数据的存储地址的对应关系;

38、第二构建模块,用于为所述二级索引结构构建哈希表形式的一级索引结构,所述一级索引结构包括:所述第一标识信息的第二索引键,以及,所述二级索引结构的存储地址。

39、本发明实施例还提供一种元数据索引构建设备,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序,所述程序被所述处理器执行时实现如上中任一项所述的元数据索引构建方法。

40、本发明实施例还提供一种可读存储介质,所述可读存储介质上存储有程序,所述程序被处理器执行时实现如上中任一项所述的元数据索引构建方法中的步骤。

41、本发明实施例还提供一种计算机程序产品,包括计算机指令,所述计算机指令被处理器执行时实现如上中任一项所述的元数据索引构建方法中的步骤。

42、本发明上述技术方案中的至少一个具有以下有益效果:

43、本发明方案提供的元数据索引构建方法,通过将存储空间划分为多个分片空间,提取分片空间中用户数据块的元数据,将数据进行存储,并为分片空间构建学习型的二级索引结构来索引元数据,降低辅助索引结构的内存占用,提升索引查询与更新性能,以及为二级索引结构构建哈希表形式的一级索引结构,即使用哈希表作为一级索引结构保存所有二级索引结构,不同的二级索引结构可以并行访问或更新,提升索引效率。

文档序号 : 【 40001742 】

技术研发人员:王书成,乔于洋
技术所有人:中移(苏州)软件技术有限公司

备 注:该技术已申请专利,仅供学习研究,如用于商业用途,请联系技术所有人。
声 明此信息收集于网络,如果你是此专利的发明人不想本网站收录此信息请联系我们,我们会在第一时间删除
王书成乔于洋中移(苏州)软件技术有限公司
一种耐高温防火饰面涂料的制作方法 数据的存储方法及装置、非易失性存储介质、电子设备与流程
相关内容