[发明专利]一种基于Storm的分布式流数据存储与查询方法有效
申请号: | 201910026601.2 | 申请日: | 2019-01-11 |
公开(公告)号: | CN109726225B | 公开(公告)日: | 2023-08-01 |
发明(设计)人: | 蔡瑞初;林峰极;郝志峰;王立;黄泽林;陈炳丰;温雯;王丽娟 | 申请(专利权)人: | 广东工业大学 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455;G06F16/22;G06F16/182 |
代理公司: | 广州市红荔专利代理有限公司 44214 | 代理人: | 吴伟文 |
地址: | 510000 *** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 storm 分布式 数据 存储 查询 方法 | ||
1.一种基于Storm的分布式流数据存储与查询方法,其特征在于:通过在接收分布式流数据时实时建立若干隔离范围的B+Tree索引,达到阈值后存储到分布式文件系统,并在查询时进行查询分解,并行处理不同范围下的子查询,保持负载均衡,完成后合并返回实时存储结果,实现高吞吐量的流数据插入和查询,具体包括以下步骤:
S1)、接收源数据并分发给下游单元构建索引结构;
S2)、将索引结构压缩为数据块并写入分布式文件存储系统CEPHFS;
S3)、基于查询条件和数据块信息将查询分解为若干独立的子查询;
S4)、通过访问分布式文件存储系统CEPHFS分发给下游独立的查询处理单元的子查询;具体包括以下步骤:
S401)、子查询服务器Subquery Server并行读取分布式文件存储系统CephFs中与子查询对应的数据块,先读取数据块中索引结构的模板部分,得到叶节点对于所有叶节点的相对offset和分组压缩后的offset,计算得到可能包含目标key范围的一系列叶子节点offset;
S402)、基于offset读取数据块文件中索引结构的叶节点部分,通过Snappy算法解压得到的叶节点分组数据块字节,反序列化为叶节点,并做时间范围和等值条件上的过滤;
S403)、对过滤后的一系列数据元祖进行aggregate操作,序列化后发送到查询调度器query dispatcher;
S5)、接收返回的子查询结果并合并返回给用户。
2.根据权利要求1所述的一种基于Storm的分布式流数据存储与查询方法,其特征在于:步骤S1)中,流数据存储系统接收的每个源数据为数据元祖,定义为d={dk,dt,dr},其中,dk是元祖的主键,dt是时间属性,dr是元祖的其他属性值,K和T定义了一个主键和时间域的二维空间D=(K,T);主键范围固定,时间范围不断增加,主键K区间表示为K(k-,k+),时间域T区间表示为T(t-,t+),根据两个区间建立唯一的矩形r≤K,T≥{(k,t)∈R|k∈K,t∈T}。
3.根据权利要求2所述的一种基于Storm的分布式流数据存储与查询方法,其特征在于:将矩形r≤K,T≥{(k,t)∈R|k∈K,t∈T}范围内的数据元组写入唯一对应的模板B+Tree中,key作为索引,内存中达到阈值chunkSize大小的模板B+Tree以chunk形式存储到分布式文件系统,chunk由key数组和数据数组组成,key数组存储顺序的key值,包括一个指向数据数组的偏移量。
4.根据权利要求3所述的一种基于Storm的分布式流数据存储与查询方法,其特征在于:基于二维空间D=(K,T),流数据存储系统的查询条件定义为一个三元组q={Kq,Tq,fq},Kq,Tq是在主键和时间域上的条件选择范围,查询区间切分为一个r≤K,T≥{(k,t)∈R|k∈Kq,t∈Tq},fq:t->{true,false}是用户自定义的条件过滤函数,用来判断是否满足用户的选择。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东工业大学,未经广东工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910026601.2/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置