一种负载自适应的分布式空间文本流数据处理系统技术方案

技术编号:32973429 阅读:48 留言:0更新日期:2022-04-09 11:44
本发明专利技术提供了一种负载自适应的分布式空间文本流数据处理系统,包括数据输入层,其配置为解析和预处理空间文本流数据;分区路由层,其配置为索引和路由空间文本流数据到相关空间分区;匹配处理层,其配置为存储和匹配符合空间查询的条件的空间文本流数据;负载均衡层,其配置为实时监控各处理单元负载并动态调整负载;数据存储层,其配置为存储过时空间文本流数据。本发明专利技术可用于空间文本流数据的分布式处理等。式处理等。式处理等。

【技术实现步骤摘要】
一种负载自适应的分布式空间文本流数据处理系统


[0001]本专利技术属于流数据处理领域,尤其涉及一种负载自适应的分布式空间文本流数据处理系统。

技术介绍

[0002]基于地理位置的服务的发展导致了空间文本数据的爆炸式增长。社交媒体用户使用微博和微信等社交平台发布含有位置信息的帖子,生活服务平台例如美团等提供外卖和跑腿等同城服务,打车软件也会基于顾客位置信息来给附近的出租车司机发放订单。这些服务在便民的同时也促使了大规模地理标记文本数据流的产生,这些包含空间信息的文本数据含有大量有价值的信息,因此一个具备实时性和高吞吐量的空间文本流数据处理系统尤为重要。
[0003]现有技术通常使用Hadoop或Spark等框架来处理大规模数据集。通过扩展Hadoop来支持空间文本数据并行处理的SpatialHadoop和Hadoop

GIS是基于磁盘的空间分析系统,对于流式空间文本数据的实时性不够好。GeoSpark和LocationSpark是基于Spark的分布式空间数据分析系统,前者采用了quadtree和R

tree两种空间索引结构来支持空间链接,范围查询和kNN查询;后者通过查询调度器和本地查询执行器扩展了Spark。这些基于磁盘和内存的系统侧重于静态空间数据,不适合大规模流数据,存在巨大的通信成本和负载不均衡问题。

技术实现思路

[0004]本专利技术的目的在于针对现有技术不适合空间文本流数据,以及通信成本高和负载不均衡等缺陷,提供一种负载自适应的分布式空间文本流数据处理系统。该系统可用于空间文本流数据的分布式处理,能够支持更加实时高效和负载均衡的查询工作。
[0005]本专利技术的目的是通过以下技术方案来实现的:一种负载自适应的分布式空间文本流数据处理系统,该系统包括:
[0006]数据输入层,用于读取流式空间文本数据对象和空间查询,并进行解析和预处理后,得到包含标识符、地理位置、文本数据和产生时间的空间文本数据对象四元列表以及包含标识符、查询范围、关键字和查询持续时间的空间查询四元列表;
[0007]分区路由层,根据来自数据输入层的流式空间文本数据对象和空间查询的四元列表进行空间分区的路由操作;
[0008]匹配处理层,基于分区路由层的空间分区,在空间查询的持续时间内,存储并连续匹配满足查询空间范围和查询关键字集合的空间文本数据对象;
[0009]负载均衡层,用于实时监控和收集匹配处理层中匹配处理层的负载信息,并在负载失衡时,调用负载自适应策略,并对局部空间分区重新划分,以满足负载均衡;
[0010]数据存储层,用于存储匹配处理层中的过时数据。
[0011]进一步地,所述数据输入层将空间文本数据对象的流数据进行解析,处理成后续
容易操作的四元列表;所述空间文本数据对象为含有位置信息的文本数据,将其处理为四元列表L
o
=[oid,loc,text,ts],oid为数据对象标识符,loc为地理位置,text为文本数据,ts为产生时间;所述空间查询为包含空间范围和关键字限定的过滤查询,将其处理为四元列表L
q
=[qid,MBR,text,t],qid为查询标识符,MBR为查询空间范围的矩形边界,text为查询关键字集合,t为查询持续时间。
[0012]进一步地,所述分区路由层对空间文本数据对象和空间查询进行索引和搜索空间分区;每一个空间分区对应连续单元格组成的矩形区域,空间分区中的每一个单元格均包含该空间分区的标识符信息和边界信息;空间文本数据对象的loc信息确定唯一的空间分区,而查询的空间范围会覆盖多个空间分区。
[0013]进一步地,空间分区所占据的矩形区域的划分具有顺序,首先在横向或纵向上进行第一维度的切分,形成候选空间分区,然后再对候选空间分区在另一个维度上进行切分,以形成空间分区:
[0014]定义两个二元组(xmin,ymin),(xmax,ymax)来表示空间分区的位置,(xmin,ymin)为空间分区的左下角单元格坐标,(xmax,ymax)为空间分区的右上角单元格坐标。空间查询在遍历所覆盖的空间分区时,通过<y不变,xmax+1>的方法向右移动,遍历同一候选空间分区中的其他空间分区,然后再将x变为此候选空间分区的第一个主单元格横坐标,对y进行ymin

1操作,向下移动,到达其他候选空间分区,从而遍历空间查询所覆盖的所有空间分区;
[0015]定义一个主单元格,即空间查询所覆盖的空间分区的左上角单元格。在进行邻近空间分区搜索时只访问主单元格。
[0016]进一步地,在邻近搜索时,当向右移动到未被查询空间范围覆盖到的空间分区时,改变y值进入其他候选空间分区进行遍历;当向下移动到未被查询空间范围覆盖到的空间分区,则路由操作结束。
[0017]进一步地,所述匹配处理层由多个处理单元组成,每一个空间分区对应一个处理单元,每个处理单元都维护一个局部关键字索引;当空间文本数据对象的地理位置满足空间查询的空间范围并且空间文本数据对象的文本数据信息包含空间查询的所有关键词时,为该空间查询匹配这个空间文本数据对象。
[0018]进一步地,所述匹配处理层对流式空间文本数据对象划分时隙,每隔一定时间更新时隙,越旧的数据具有越粗的粒度;粒度遵循指数函数f(x)=2
x
,其中x为数据在匹配处理层中的生存时间;定期检查处理单元内数据大小,若超过预定义阈值,则将最旧的时隙数据存入数据存储层。
[0019]进一步地,所述负载均衡层实时监控和收集匹配处理层每个处理单元的总负载信息W
i
和维度负载分布表Wd
i
,当处理单元中最大的负载和处理单元中最小的负载之比W
max
/W
min
>δ时,基于负载自适应策略,转移最大负载处理单元P
max
中的负载到该处理单元的邻近处理单元上;其中维度负载分布表Wd
i
统计该处理单元在第二维度上的负载分布情况。
[0020]进一步地,当匹配处理层的负载不平衡时,在同一候选空间分区内重新划分最大负载处理单元附近的局部空间分区,过程如下:
[0021](1)根据P
max
的二元组坐标(xmin,ymin),(xmax,ymax)确定与P
max
位于同一候选空间分区的相邻处理单元所在的空间分区;
[0022](2)对P
max
和相邻两处理单元进行局部空间重划分操作,先计算相邻三个空间分区的总负载,进而得到每个空间分区的平均负载,以重划分后三者中的最大负载为W
max
,若不再满足W
max
/W
min
>δ的均衡触发条件,则进行步骤(3),否则扩大局部空间重划分的范围,加入P
max
的相邻两处理本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种负载自适应的分布式空间文本流数据处理系统,其特征在于,该系统包括:数据输入层,用于读取流式空间文本数据对象和空间查询,并进行解析和预处理后,得到包含标识符、地理位置、文本数据和产生时间的空间文本数据对象四元列表以及包含标识符、查询范围、关键字和查询持续时间的空间查询四元列表;分区路由层,根据来自数据输入层的流式空间文本数据对象和空间查询的四元列表进行空间分区的路由操作;匹配处理层,基于分区路由层的空间分区,在空间查询的持续时间内,存储并连续匹配满足查询空间范围和查询关键字集合的空间文本数据对象;负载均衡层,用于实时监控和收集匹配处理层中匹配处理层的负载信息,并在负载失衡时,调用负载自适应策略,并对局部空间分区重新划分,以满足负载均衡;数据存储层,用于存储匹配处理层中的过时数据。2.如权利要求1所述的一种负载自适应的分布式空间文本流数据处理系统,其特征在于,所述数据输入层将空间文本数据对象的流数据进行解析,处理成后续容易操作的四元列表;所述空间文本数据对象为含有位置信息的文本数据,将其处理为四元列表L
o
=[oid,loc,text,ts],oid为数据对象标识符,loc为地理位置,text为文本数据,ts为产生时间;所述空间查询为包含空间范围和关键字限定的过滤查询,将其处理为四元列表L
q
=[qid,MBR,text,t],qid为查询标识符,MBR为查询空间范围的矩形边界,text为查询关键字集合,t为查询持续时间。3.如权利要求1所述的一种负载自适应的分布式空间文本流数据处理系统,其特征在于,所述分区路由层对空间文本数据对象和空间查询进行索引和搜索空间分区;每一个空间分区对应连续单元格组成的矩形区域,空间分区中的每一个单元格均包含该空间分区的标识符信息和边界信息;空间文本数据对象的loc信息确定唯一的空间分区,而查询的空间范围会覆盖多个空间分区。4.如权利要求3所述的一种负载自适应的分布式空间文本流数据处理系统,其特征在于,空间分区所占据的矩形区域的划分具有顺序,首先在横向或纵向上进行第一维度的切分,形成候选空间分区,然后再对候选空间分区在另一个维度上进行切分,以形成空间分区:定义两个二元组(xmin,ymin),(xmax,ymax)来表示空间分区的位置,(xmin,ymin)为空间分区的左下角单元格坐标,(xmax,ymax)为空间分区的右上角单元格坐标。空间查询在遍历所覆盖的空间分区时,通过<y不变,xmax+1>的方法向右移动,遍历同一候选空间分区中的其他空间分区,然后再将x变为此候选空间分区的第一个主单元格横坐标,对y进行ymin

1操作,向下移动,到达其他候选空间分区,从而遍历空间查询所覆盖的所有空间分区;定义一个主单元格,即空间查询所覆盖的空间分区的左上角单元格。在进行邻近空间分区搜索时只访问主单元格。5.如权利要求4所述的一种负载自适应的分布式空间文本流数据处理系统,其特征在于,在邻近搜索时,当向右移动到未被查询空间范围覆盖到的空间分区时,改变y值进入其他候选空间分区进行遍历;当向下移动到未被查询空间范围覆盖到的空间分区,则路由操作结束。6.如权利要求1所述的一种负载自适应的分布式空间文本流数据处理系统,其特征在
于,所述匹配处理层由多个处理单元组成,每一个空间分区对应一个处理单元,每个处理单元都维护...

【专利技术属性】
技术研发人员:高杨王新根黄滔陈伟牛诗雅
申请(专利权)人:浙江邦盛科技股份有限公司
类型:发明
国别省市:

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

1