【技术实现步骤摘要】
一种基于分布式键值数据库的元数据存储方法及装置
[0001]本专利技术涉及数据处理领域,具体涉及一种基于分布式键值数据库的元数据存储方法及装置。
技术介绍
[0002]分布式对象存储系统中会为每个桶维护一份索引表,保存了桶和桶内全部对象元数据之间的映射关系,当用户访问桶内对象时,是通过桶索引获取对象的具体数据,而当桶内存储的对象数量过大时,超大的索引会造成性能和可靠性的问题。为了解决单桶对象规模的限制,现有技术中采用了动态分片机制,通过创建多份索引表,但是在进行桶分片时会对桶内的对象元数据进行再平衡,如果桶内存储了大量的对象,在分片时数据再平衡操作会非常耗时,阻塞了前端的写入,给用户带来非常不友好的体验。
[0003]因此,如何解决分布式对象存储系统中单桶对象存储规模受限和分片机制带来的业务阻塞问题,是目前业界亟待解决的重要课题。
技术实现思路
[0004]有鉴于此,本专利技术实施例提供了一种基于分布式键值数据库的元数据存储方法及装置,以解决分布式对象存储系统中单桶对象存储规模受限和分片机制带来的业务阻塞问题。
[0005]根据第一方面,本专利技术实施例提供了一种基于分布式键值数据库的元数据存储方法,所述方法应用于服务端,所述服务端安装有分布式对象存储系统,所述方法包括:
[0006]确定桶内存储的对象的元数据,并确定所述元数据的预设类型以及键
‑
值对;
[0007]基于所述元数据已确定的预设类型以及键
‑
值对,将所述元数据保存至对应 ...
【技术保护点】
【技术特征摘要】
1.一种基于分布式键值数据库的元数据存储方法,其特征在于,所述方法应用于服务端,所述服务端安装有分布式对象存储系统,所述方法包括:确定桶内存储的对象的元数据,并确定所述元数据的预设类型以及键
‑
值对;基于所述元数据已确定的预设类型以及键
‑
值对,将所述元数据保存至对应的哈希表以及有序列表中;所述分布式存储系统中每个桶均通过至少一个哈希表和至少一个有序列表存储元数据,所述哈希表用于存储元数据,所述有序列表用于存储元数据的检索信息。2.根据权利要求1所述的基于分布式键值数据库的元数据存储方法,其特征在于,所述预设类型包括第一、第二、第三和第四类型,第一类型的元数据为基本元数据,第二类型的元数据为对象属性元数据,第三类型的元数据为索引元数据,第四类型的元数据为索引顺序元数据;所述基于所述元数据已确定的预设类型以及键
‑
值对,将所述元数据保存至对应的哈希表以及有序列表中,具体包括:基于已确定的预设类型,将所述元数据存储至预设类型对应的容器组中;每一种预设类型的元数据均对应一个所述容器组,每一个所述容器组均对应至少一个哈希槽,且,所述容器组对应的哈希槽的数量彼此相等;基于所述元数据的键
‑
值对,确定所述元数据的CRC16值,基于哈希槽的总数以及已确定的CRC16值,确定元数据对应的哈希槽;将所述元数据映射并存储至已确定的哈希槽对应的所述哈希表;每一个所述哈希表对应至少一个哈希槽;为所述元数据分配对应的分数值,基于已分配的所述分数值,确定所述元数据对应的所述有序列表,并将所述元数据存储至对应的所述有序列表中;所述有序列表中各项所述元数据按照所述分数值进行顺序排序。3.根据权利要求2所述的基于分布式键值数据库的元数据存储方法,其特征在于,所述哈希表的数量是基于预设数量和所述哈希槽的总数确定的,所述哈希表的数量超过所述预设数量且为所述总数的因数。4.根据权利要求1所述的基于分布式键值数据库的元数据存储方法,其特征在于,该方法还包括以下步骤:确定客户端的元数据检索请求;所述元数据检索请求中包含检索信息,所述检索信息包括每个所述有序列表的索引顺序和索引元素数目;基于所述检索信息,从每个所述有序列表中取出对应的所述元数据;将所述元数据存放至预设map表中,基于所述预设map表,对所述预设map表中存储的所述元数据进行顺序排序,将完成所述元数据存放及排序的所述预设map表返回给客户端。5.根据权利要求1...
【专利技术属性】
技术研发人员:胡爱存,侯飞,梁成武,陈玉鹏,张翼,
申请(专利权)人:天翼云科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。