【技术实现步骤摘要】
分布式订阅发布模式下的空间范围-关键字查询方法
本专利技术涉及信息查询
,具体涉及一种分布式订阅发布模式下的空间范围-关键字查询方法。
技术介绍
由于装有GPS的移动设备的数量激增,包含文本信息和地理位置信息的海量地理文本数据正在以前所未有的速度生成。这些地理文本数据以流的方式生成,包含对用户有价值的信息。当用户关注特定地区的事件,例如所在城市的美食,他们希望收到在给定空间范围中与此类事件相关的最新地理文本数据。每个用户选择自己的兴趣(如最喜欢的食物或运动)和位置范围,作为一个空间范围-关键字订阅。根据空间范围-关键字订阅,发布者(如本地企业)持续生成的地理文本消息流(如电子优惠券促销和带有位置信息的tweet集)将迅速反馈给相关用户。目前,由于单机的计算资源有限,一般采用分布式发布/订阅模式,即多个发布服务器将发布数据转发到对应的多个订阅服务器中,但大量的发布流数据需要从发布服务器转发到对应空间范围关键字的订阅服务器上,由此存在大量数据转发,从而导致通讯开销极高。
技术实现思路
本专利技术解决的问题是现有技术中分布式订阅/发布模式下的空间范围-关键字查询通信开销大。为解决上述问题,本专利技术提供一种分布式订阅发布模式下的空间范围-关键字查询方法,包括:发布服务器接收地理文本流数据,其中,所述发布服务器上部署有每个订阅服务器的空间签名和文本签名组,其中,所述空间签名针对空间范围-关键字查询的空间范围部分采用空间布谷鸟过滤器技术生成,所述文本签名组针对空间范围-关键字查询的关键 ...
【技术保护点】
1.一种分布式订阅发布模式下的空间范围-关键字查询方法,其特征在于,包括:/n发布服务器接收地理文本流数据,其中,所述发布服务器上部署有每个订阅服务器的空间签名和文本签名组,其中,所述空间签名针对空间范围-关键字查询的空间范围部分采用空间布谷鸟过滤器技术生成,所述文本签名组针对空间范围-关键字查询的关键字集合部分采用单排序最小哈希算法和倒排文件四叉树方法生成;/n所述发布服务器遍历每个所述空间签名和每个所述文本签名组,与所述地理文本流数据进行空间包含关系判断和文本相似性计算;/n所述发布服务器基于所述空间包含关系判断和所述文本相似性计算结果,判断所述地理文本流数据是否命中至少一个所述订阅服务器;/n若是,则由所述发布服务器把所述地理文本流数据转发到命中的订阅服务器上。/n
【技术特征摘要】
1.一种分布式订阅发布模式下的空间范围-关键字查询方法,其特征在于,包括:
发布服务器接收地理文本流数据,其中,所述发布服务器上部署有每个订阅服务器的空间签名和文本签名组,其中,所述空间签名针对空间范围-关键字查询的空间范围部分采用空间布谷鸟过滤器技术生成,所述文本签名组针对空间范围-关键字查询的关键字集合部分采用单排序最小哈希算法和倒排文件四叉树方法生成;
所述发布服务器遍历每个所述空间签名和每个所述文本签名组,与所述地理文本流数据进行空间包含关系判断和文本相似性计算;
所述发布服务器基于所述空间包含关系判断和所述文本相似性计算结果,判断所述地理文本流数据是否命中至少一个所述订阅服务器;
若是,则由所述发布服务器把所述地理文本流数据转发到命中的订阅服务器上。
2.如权利要求1所述的分布式订阅发布模式下的空间范围-关键字查询方法,其特征在于,在所述发布服务器接收地理文本流数据之前,还包括:
把整个二维空间划分为多个等大小区域的集合ε,并对ε中的每个区域分配一个唯一的标记ID,一个区域的标记信息定义为r.ID,所述订阅服务器上的每个空间范围-关键字查询的空间范围为ε的子集合,该子集合表示为△,子集合∆由至少一个区域组成;
在所述订阅服务器上初始化一个布谷鸟哈希表;
遍历空间范围-关键字查询的每个区域,计算区域r.ID的指纹finger(r.ID),并基于第一预设公式计算所述区域r.ID在所述布谷鸟哈希表中对应的两个桶值,其中,所述第一预设公式包括:h1=hash(r.ID),h2=h1hash(finger(r.ID)),其中,是异或运算符号,h1与h2的计算结果为所述区域r.ID在所述布谷鸟哈希表中对应的两个桶值;
分别判断空间范围-关键字查询中的所述区域r.ID在所述布谷鸟哈希表中对应的两个桶中是否有空闲位置,其中,所述两个桶表示为bucket[h1]和bucket[h2];
若是,则将空间范围-关键字查询中的所述区域r.ID的指纹插入到所述空闲位置中;
若否,则使用空间范围-关键字查询中的所述区域r.ID的指纹替换掉bucket[h1]或bucket[h2]的一个指纹;
得到最终的哈希表,所述最终的哈希表作为所述订阅服务器的所述空间签名。
3.如权利要求1所述的分布式订阅发布模式下的空间范围-关键字查询方法,其特征在于,在所述发布服务器接收地理文本流数据之前,还包括:
在所述订阅服务器上利用所述单排序最小哈希算法生成订阅关键字集合的签名,得到所述订阅服务器中四叉树所有叶子结点的关键字的签名,并把所述所有叶子结点的关键字的签名汇总到签名集合中;
当所有叶子节点所对应的文本签名组大于预设阈值时,把拥有同一个父节点的四个子节点的文本签名合并为一个新的文本签名,汇聚成新的签名集合,直到签名集合中签名的个数小于或等于所述预设阈值,并将此时的签名集合作为所述文本签名组。
4.如权利要求3所述的分布式订阅发布模式下的空间范围-关键字查询方法,其特征在于,所述在所述订阅服务器上利用单排序最小哈希算法生成订阅关键字集合的签名包括:
将所述订阅关键字集合进行哈希运算,得到由0和1组成的字符串;
将所述字符串进行分组,得到多个字符串组;
获取每个所述字符串组中第一个非零值所处的位置;
将每个所述字符串组中第一个非零值所处的位置所组成的集合作为所述订阅关键字集合的签名。
...
【专利技术属性】
技术研发人员:邓泽,王力哲,王月,刘韬,陈小岛,陈云亮,
申请(专利权)人:中国地质大学武汉,
类型:发明
国别省市:湖北;42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。