论文部分内容阅读
随着互联网的高速发展与移动智能设备的普及,各种社交软件中产生了大量的空间文本数据。空间文本数据具有空间属性与文本属性,如何分析大规模的空间文本数据,从中获取最大的经济效益,成为了人们的关注热点。发布/订阅作为处理空间文本数据有效的方式之一,受到了学术界与工业界的关注。然而,现存的发布/订阅无法实现订阅与消息的高效匹配,不具备良好的表达能力。本文针对空间文本数据发布/订阅进行了研究,做了两方面的探索,以使得发布/订阅适应于大规模订阅环境中。第一,研究了布尔表达式发布/订阅。针对布尔表达式发布/订阅设计了高效的本地索引结构TR-tree与匹配算法。TR-tree包括文本索引与空间索引,存储在主要用于执行订阅与消息匹配的匹配节点。文本索引根据谓词数量与关键属性对订阅分组。为了减少重复存储谓词值对的次数,文本索引还使用了操作符列表。空间索引根据谓词数量与关键属性构建R-tree,以达到修剪空间的目的。实验对比结果展现了 TR-tree索引结构的高效性。第二,研究了分布式发布/订阅。针对分布式发布/订阅提出了空间文本数据划分方法,设计了全局索引结构Gindex与框架DSTSP。鉴于查询的偏斜性导致系统负载不均衡,提出了负载均衡策略。全局索引Gindex存储在分布式系统中的分派节点中,根据空间属性与文本属性实现空间文本数据的划分。DSTSP由分派节点、匹配节点与结果整合节点组成。其中,分派节点主要负责将消息或者订阅分发到相应的匹配节点;匹配节点负责订阅与消息的匹配;结果整合节点负责整合匹配结果以得到最终结果,并将消息发送给订阅者。此外,分派节点还能根据收集到的信息,判断系统的负载。如果匹配节点超载,则使用成本模型计算分区划分成本,然后执行分区再划分。