数据查询方法、装置、存储介质及电子设备制造方法及图纸

技术编号:28035711 阅读:26 留言:0更新日期:2021-04-09 23:17
本申请实施例公开了一种数据查询方法、装置、存储介质及电子设备,属于在线教育领域。设置有多个集群,每个集群包括至少一个用于存储数据的节点,且每个集群配置有布隆过滤器,在需要查询目标数据时,获取目标数据的对象名,使用多个不同的哈希函数对目标数据的对象名进行哈希运算各自得到哈希值,利用各个集群的布隆过滤器对得到的多个哈希值进行过滤处理确定候选集群,然后利用对象名在候选集群中依次进行查询,这样在集群扩容时,不需要对现有集群中的数据进行迁移就能快速实现准确的查找到目标数据,具有成本低和查询效率高的特点。

【技术实现步骤摘要】
数据查询方法、装置、存储介质及电子设备
本申请涉及在线教育领域,尤其涉及一种数据查询方法、装置、存储介质及电子设备。
技术介绍
海量数据的存储一般采用分布式技术,海量数据存储在多个节点中。在接收到待存储数据时,采用哈希函数将待存储数据存储到多个节点中某个节点上,在查询数据时首先根据哈希函数确定目标节点,然后在目标节点上查询目标数据。然而,在多个节点的存储空间不足时,需要对节点进行扩容,增加新节点后如何采用现有的哈希函数在扩容后的多个节点中进行查询时,将无法确定正确的目标节点,此时需要对节点中的数据进行数据迁移,才能保证用户在扩容后的节点上准确的查询到目标数据,然而海量数据的迁移耗时长且成本高。
技术实现思路
本申请实施例提供了的数据查询方法、装置、存储介质及电子设备,可以解决需要对扩容后的节点进行数据迁移造成的耗时长和成本高的问题。所述技术方案如下:第一方面,本申请实施例提供了一种数据查询方法,所述方法包括:接收来自终端设备的数据查询请求;其中,所述数据查询请求携带第一对象名;根据k个不同的哈希函数对本文档来自技高网...

【技术保护点】
1.一种数据查询方法,其特征在于,包括:多个集群;/n接收来自终端设备的数据查询请求;其中,所述数据查询请求携带第一对象名;/n根据k个不同的哈希函数对所述第一对象名进行哈希运算得到k个哈希值;其中,k为大于1的整数;/n根据n个集群中各个集群的布隆过滤波器对所述k个哈希值进行过滤处理,确定所述n个集群中的j个候选集群;其中,n为大于1的整数,j小于n,j为大于或等于1的整数;/n根据所述第一对象名在所述j个候选集群中查询对应的目标数据。/n

【技术特征摘要】
1.一种数据查询方法,其特征在于,包括:多个集群;
接收来自终端设备的数据查询请求;其中,所述数据查询请求携带第一对象名;
根据k个不同的哈希函数对所述第一对象名进行哈希运算得到k个哈希值;其中,k为大于1的整数;
根据n个集群中各个集群的布隆过滤波器对所述k个哈希值进行过滤处理,确定所述n个集群中的j个候选集群;其中,n为大于1的整数,j小于n,j为大于或等于1的整数;
根据所述第一对象名在所述j个候选集群中查询对应的目标数据。


2.根据权利要求1所述的方法,其特征在于,所述根据所述第一对象名在所述j个候选集群中查询对应的目标数据,包括:
对所述第一对象名进行哈希运算得到第一哈希值;
根据所述候选集群的节点数量对所述第一哈希值进行求模运算得到第一模值;
根据所述第一模值在所述候选集群中确定目标节点;
根据所述第一对象名在所述目标节点上查询。


3.根据权利要求1所述的方法,其特征在于,还包括:
响应于所述终端设备的数据存储请求,获取第二对象名;其中,所述第二对象名为待存储数据的对象名;
根据所述第二对象名在所述n个集群中确定目标节点;
将所述待存储数据写入到所述目标节点;
根据所述k个不同的哈希函数对所述第二对象名哈希运算得到k个哈希值;
根据所述k个哈希值和所述目标节点所在集群的布隆过滤器进行更新。


4.根据权利要求3所述的方法,其特征在于,所述根据所述第二对象名在所述n个集群中确定目标节点,包括:
将所述第二对象名进行哈希运算得到第二哈希值;
确定所述n个集群包括的p个节点;
根据节点总数量p对所述第二哈希值进行求模运算得到第二模值;
根据所述第二模值在所述p个节点中确定目标节点。


...

【专利技术属性】
技术研发人员:石鹏
申请(专利权)人:北京大米科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1