【技术实现步骤摘要】
一种基于Storm的分布式流数据存储与查询方法
本专利技术涉及数据处理
,尤其是一种基于Storm的分布式流数据存储与查询方法。
技术介绍
随着网络技术的迅猛发展,社交网络和位置服务平台等所产生的实时流数据高速增长,在越来越多的领域出现了对海量流数据进行实时处理响应的要求,使得数据的高速插入和实时查找成为一个非常重要的数据处理能力,用户能够实时获得想要的历史数据和新数据。对于提供位置业务的平台如百度地图,高德地图等,每秒都瞬时产生了海量的位置信息和轨迹变化数据,为了能够满足用户的需求和提高公司效益,平台系统需要能够支持百万级流数据上的实时插入存储与低延时查询,例如客户需要获取当前时刻附近5km范围内所有车辆的GPS信息,或者是指定某辆车在过去1小时内的行驶轨迹。常用的key-value存储技术开源实现如HBase使用LSM-Tree来减少更新叶节点带来的时间开销,但是每次插入的新数据和历史数据需要进行更新,在time范围的查询时延过高;常用的时间序列数据库技术如阿里巴巴开源的Druid仅支持倒排索引,在key范围查询上比较低效。为了解决这一问题,必然要设计一 ...
【技术保护点】
1.一种基于Storm的分布式流数据存储与查询方法,其特征在于:通过在接收分布式流数据时实时建立若干隔离范围的B+Tree索引,达到阈值后存储到分布式文件系统,并在查询时进行查询分解,并行处理不同范围下的子查询,保持负载均衡,完成后合并返回实时存储结果,实现高吞吐量的流数据插入和查询,具体包括以下步骤:S1)、接收源数据并分发给下游单元构建索引结构;S2)、将索引结构压缩为数据块并写入分布式文件存储系统CEPHFS;S3)、基于查询条件和数据块信息将查询分解为若干独立的子查询;S4)、通过访问分布式文件存储系统CEPHFS分发给下游独立的查询处理单元的子查询;S5)、接收返 ...
【技术特征摘要】
1.一种基于Storm的分布式流数据存储与查询方法,其特征在于:通过在接收分布式流数据时实时建立若干隔离范围的B+Tree索引,达到阈值后存储到分布式文件系统,并在查询时进行查询分解,并行处理不同范围下的子查询,保持负载均衡,完成后合并返回实时存储结果,实现高吞吐量的流数据插入和查询,具体包括以下步骤:S1)、接收源数据并分发给下游单元构建索引结构;S2)、将索引结构压缩为数据块并写入分布式文件存储系统CEPHFS;S3)、基于查询条件和数据块信息将查询分解为若干独立的子查询;S4)、通过访问分布式文件存储系统CEPHFS分发给下游独立的查询处理单元的子查询;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}是用户自定义的条件过滤函数,用来判断是否满足用户的选择。5.根据权利要求4所述的一种基于Storm的分布式流数据存储与查询方法,其特征在于:基于不同子查询服务器(SubqueryServer)节点存储的文件块不同和缓存的模板B+Tree叶节点不同,实现查询分解调度的算法,计算出子查询服务器SubqueryServer对各个未处理的子查询优先级队列进行查询分配,直到未处理子查询集合为空并将最近查的询叶节点数据写入缓存,实现查询分配的缓存局部性,数据块局部...
【专利技术属性】
技术研发人员:蔡瑞初,林峰极,郝志峰,王立,黄泽林,陈炳丰,温雯,王丽娟,
申请(专利权)人:广东工业大学,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。