【技术实现步骤摘要】
数据查询、数据存储方法、装置、设备及存储介质
[0001]本公开涉及数据处理
,尤其涉及数据查询
、
数据存储方法
、
装置
、
设备及存储介质
。
技术介绍
[0002]如隐私计算等多种场景下均会有信息查询需求
。
以隐私计算场景为例,多个
(
两个或以上
)
数据方进行求交运算后,各数据方会分别存储交集,之后根据需要从交集中查询所需数据
。
相关技术中采用基于内存的
key
‑
value(
键值对
)
存储方案,例如
Redis(
一种开源的
、
基于内存的数据结构存储系统
)
等内存数据库,可以通过
key
快速查询到
value
,但基于内存的存储方案的成本较高
。
若为了降低成本,可以将数据集以文件方案进行管理,采用磁盘等持久化存储器进行存储,但通常未采用此种方案,因为文件管理难以使用到文件内部的信息,无法支持查询需求
。
技术实现思路
[0003]为克服相关技术中存在的问题,本公开提供了数据查询
、
数据存储方法
、
装置
、
设备及存储介质
。
[0004]根据本说明书实施例的第一方面,提供一种数据查询方法,待查询的缓存数据基于索引文件进行查询;所述 ...
【技术保护点】
【技术特征摘要】
1.
一种数据查询方法,待查询的缓存数据基于索引文件进行查询;所述索引文件用于存储所述缓存数据的索引信息;所述缓存数据的
value
存储于内容文件;其中,所述索引信息包含所述缓存数据的
key
的
hash
值和所述缓存数据的
value
在所述内容文件中的存储位置信息;所述方法包括:响应于接收到的查询请求,获取所述查询请求中包含的待查询的目标缓存数据的目标
key
;计算所述目标
key
的目标
hash
值,并查询所述索引文件中是否存储了包含所述目标
hash
值的目标索引信息;若是,读取所述目标索引信息中包含的存储位置信息,并基于所述存储位置信息从所述内容文件中读取所述目标缓存数据的
value。2.
根据权利要求1所述的方法,所述索引文件以分页存储的方式存储索引信息;所述索引文件的索引信息,通过如下方式存储至所述索引文件:根据预设的映射关系确定与所述缓存数据的
key
的
hash
值对应的分页号,并将包括所述缓存数据的索引信息存储至与所述分页号对应的分页中;所述查询所述缓存索引中是否存储了包含所述目标
hash
值的目标索引信息,包括:根据所述预设的映射关系,确定与所述目标
hash
值对应的目标分页号;访问所述索引文件中与所述目标分页号对应的目标分页,查询所述目标分页中是否存储了包含所述目标
hash
值的索引信息
。3.
根据权利要求2所述的方法,所述预设的映射关系,包括:余数与分页号的映射关系,所述余数是指哈希值除以所述索引文件的分页总数的余数
。4.
根据权利要求2所述的方法,所述索引文件和所述内容文件,存储在存储设备搭载的磁盘中;所述分页的大小,是磁盘的磁盘块大小的整数倍
。5.
根据权利要求1所述的方法,所述索引文件的索引信息还包括所述缓存数据的
value
的长度;所述读取所述索引信息中包含的存储位置信息,并基于所述存储位置信息从所述内容文件中读取所述目标缓存数据的
value
,包括:读取所述索引信息中包含的存储位置信息和所述长度信息,并从所述内容文件中与所述存储位置信息对应的存储位置上,读取与所述长度对应的存储内容,以得到所述目标缓存数据的
value。6.
根据权利要求1所述的方法,所述待查询的缓存数据还基于与所述内容文件中存储的缓存数据的
value
对应的
meta
参数进行查询;其中,所述内容文件中还存储了位于缓存数据的
value
之前的长度字段;所述长度字段用于记录所述缓存数据的
value
的长度;所述
meta
参数包括与所述长度字段对应的长度参数,所述长度参数用于描述所述长度字段的长度;所述基于所述存储位置信息从所述内容文件中读取所述目标缓存数据的
value
,包括:从所述内容文件中与所述存储位置信息对应的存储位置上,根据所述长度参数描述的长度读取出长度字段,并解析出所述长度字段中记录的
value
的长度;在读取出所述长度字段的存储位置之后,根据解析...
【专利技术属性】
技术研发人员:张津铭,王华忠,殷山,
申请(专利权)人:蚂蚁区块链科技上海有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。