CN105373633B - 位置感知订阅/发布系统的top-k订阅查询匹配方法 - Google Patents
位置感知订阅/发布系统的top-k订阅查询匹配方法 Download PDFInfo
- Publication number
- CN105373633B CN105373633B CN201510981823.1A CN201510981823A CN105373633B CN 105373633 B CN105373633 B CN 105373633B CN 201510981823 A CN201510981823 A CN 201510981823A CN 105373633 B CN105373633 B CN 105373633B
- Authority
- CN
- China
- Prior art keywords
- subscription
- predicate
- tree
- node
- event
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2264—Multidimensional index structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提出一种位置感知订阅/发布系统的top‑k订阅查询匹配方法,其包括以下步骤:根据订阅的空间点信息建立R‑tree;提取每个订阅中的谓词和该谓词的权重;将谓词载入到R‑tree中不同层中的不同节点上得到RRt‑tree;根据给定的事件e在RRt‑tree中遍历各个订阅进行谓词匹配,根据谓词匹配结果得到订阅的候选集;计算出订阅的候选集中各个订阅与事件e的相似性函数值;将订阅候选集中的订阅按照相似性函数值的大小进行降序排列作为上界队列,并输出前k个订阅作为top‑k订阅查询匹配结果。本发明将Rt‑tree索引结构和一个谓词索引结构结合起来,并采用一个订阅分区策略。当一个事件到达时,可以快速的检索出他的top‑k个匹配最好的订阅。
Description
技术领域
本发明属于订阅查询匹配方法,特别涉及一种位置感知订阅/发布系统的top-k订阅查询匹配方法。
背景技术
移动互联网飞速发展和带有GPS功能的智能手机的普及使得位置感知的订阅/发布系统越来越多地受到了研究人员的关注。大量的带有地理位置标签的信息不断地在很多应用中产生。例如,在一些社交网络应用中,如Facebook,Twitter,这些应用中含有大量的用户。他们的个人信息可被描述为一系列属性值对,并可与GPS揭示的地理位置信息相结合成为带有地理位置信息标签的属性值对。在线上支付线下消费的应用中,有很多用户不断地在浏览产品,这些产品也可以被描述为一系列属性值对并与地理位置信息想结合。在本文中,我们将这样的数据信息称为‘带有地理位置信息标签的属性值对’。
在一个基于位置敏感的订阅发布系统当中,订阅者订阅他们的兴趣,同时发布者发布具有地理位置信息的事件。这种系统在现实世界得到很多应用。在位置感知的广告定向投放系统当中,广告商是订阅者,他们可以声明一些用户属性作为订阅。比如,(“16<age<28,hobby∈{Tennis,basketball}”,“51.165145”,“0.141123”)。社交网络应用中用户的个人信息比如年龄、爱好和地理位置可以作为一个事件,比如,(e.g.“age=20,sex=female,hobby=tennis,school=Harvard”,“51.256543”,“0.145845”)。如果有个事件和订阅高度相关,那么相应的广告将会被展示在用户的屏幕上。这种广告推送模型对于线上支付线下消费商业模式也有用处,比如Groupon,Groupon的商家和服务提供者可作为订阅者,这些订阅者可能想更精确地投送广告给他们的潜在客户,他们可以同时声明用户的个人信息和一系列的产品信息作为订阅,比如(e.g.,“hobby=smart-phone,item∈{IPhone6s,IPhone5s},299$<price<499$”,“51.25543”,“0.145845”)。该系统的用户是信息发布者。当一个用户点击一个产品链接时,这条产品信息和用户属性可以作为一个事件,例如(e.g.“hobby=smart-phone,item=iphone6s”,price=469$,“51.32454”,“0.146382”)。在这些应用中,由于屏幕尺寸的限制,只有一小部分广告可以被展示在用户屏幕上。
当前的非结构化订阅/发布系统可以很好的支持由带有地理位置信息的文本描述的订阅,然而,这种系统不能支持需要结构化描述的带有地理位置信息的属性值对。当前的位置感知的结构化订阅/发布系统,采用布尔表达式代表一个订阅,可以高效地检索出所有匹配的信息,但是用户有可能被信息淹没。
发明内容
为了解决这个问题,我们提出了一个新型的带有布尔表达式的top-k订阅查询匹配。最近的关于带有布尔表达式的top-k订阅查询匹配工作是处理部分匹配,而本文提出的是严格的布尔表达式的全部匹配。
该问题有两大挑战,一,怎样从数百万带有多种属性和值的订阅中选出top-k个订阅查询匹配的候选集。二,我们需要从大量候选集当中选出top-k个匹配最好的订阅。因此,我们需要一个有效并且高效的解决方案来处理该问题。
本发明的技术方案是:
一种位置感知订阅/发布系统的top-k订阅查询匹配方法,其包括以下步骤:
(1)根据订阅的空间点信息建立R-tree;
(2)提取每个订阅中的谓词和该谓词的权重;
(3)将步骤(2)中谓词载入到R-tree中不同层中的不同节点上得到RRt-tree;
(4)根据给定的事件e在RRt-tree中遍历各个订阅进行谓词匹配,根据谓词匹配结果得到订阅的候选集;
(5)计算出步骤(4)中的订阅的候选集中各个订阅与事件e的相似性函数值;
(6)将订阅候选集中的订阅按照相似性函数值的大小进行降序排列作为上界队列,并输出前k个订阅作为top-k订阅查询匹配结果。
优选的是,所述的位置感知订阅/发布系统的top-k订阅查询匹配方法中,步骤(3)中)将步骤(2)中谓词载入到R-tree中不同层中的不同节点上得到RRt-tree的过程为:
步骤(1)中的R-tree的高度是给定一个订阅s,其谓词的个数为
If 将s中剩余个谓词载入其叶子结点;
If 只有前层的祖先结点包含s中的谓词;
令pi表示s中第i个谓词,对于第i层中的每个结点n都有一个谓词集合P。
优选的是,所述的位置感知订阅/发布系统的top-k订阅查询匹配方法中,为P设计一个谓词索引,包括:
第一步,按照谓词的属性将其分成若干个不相交的谓词列表,如下公式:
对于列表中的每个谓词,为统计已匹配的谓词个数,均设有一个指针指向其相应订阅的M[s];
第二步,列表中的谓词被进一步根据他们的操作符划分为相应的值列表如下所示:
优选的是,所述的位置感知订阅/发布系统的top-k订阅查询匹配方法中,步骤(4)谓词匹配的过程为:
为所有订阅设置一个哈希图,并初始化相应的哈希值为0;
当P中的一个谓词被匹配后,我们将其相应的哈希值增加1;
给定一个事件e和一个在第i层的结点n,如果s不可能是e的一个top-k订阅的候选集;
给定一个事件e和一个在第i层的结点n,如果s一定是e的一个top-k订阅的候选集;
给定一个事件e和一个在第i层的结点n,如果并且n是一个叶子结点,那么s一定是e的一个top-k订阅的候选集。
优选的是,所述的位置感知订阅/发布系统的top-k订阅查询匹配方法中,把订阅按照关键属性分成个订阅列表,并用RRt-tree索引这些列表中的订阅;
给定一个订阅集合H,我们根据关键属性δA.将其分区并用RRt-tree对其进行索引,如下所示:
优选的是,所述的位置感知订阅/发布系统的top-k订阅查询匹配方法中,相似性函数值的计算包括:
对于一个给定的事件e和RRt-tree中的一个结点n,布尔表达式相似性函数UBBE(e,n)计算公式如下:
这里是指出现在1到i-1层中属于s的所有已匹配的谓词的得分,另外其中,是指e中尚未匹配的属性值对的最大权重,是s中尚未匹配的谓词权重之和;
对于一个给定的事件e和RRt-tree中的一个结点n,空间相似性函数UBBE(e,n)计算公式如下:
MaxDist订阅之间最大的距离,n.MBR是n所确定的最小边界矩形,MinDist(e.loc,n.MBR)是e.loc和n.MBR的最小距离;
对于一个给定的事件e和RRt-tree中的一个结点n,最终的相似性函数UB(e,n)计算公式如下:
这里n.αmin,和n.αmax是结点n中订阅里最大的阿尔法值和最小的阿尔法值;
优选的是,所述的位置感知订阅/发布系统的top-k订阅查询匹配方法中,给定一个事件e和一个订阅s,其相似性函数计算公式如下:
这里是布尔表达式相似性函数,是空间相似性函数。
布尔表达式相似性函数计算公式如下:
这里表示订阅s中谓词的个数。
空间相似性函数的计算公式如下:
这里dist(e.loc,s.loc)是e和s的欧式距离,MaxDist是订阅之间的最大距离;
给定一个事件e和一个包含一个订阅集合Sn的结点n,对于任意s∈Sn,
优选的是,所述的位置感知订阅/发布系统的top-k订阅查询匹配方法中,如下情况时停止查询:
1)当k订阅被找到并且它的最小相似性得分大于上界队列中的最大上界UB(e,n)。
2)当上界队列为空时。
本发明提出一种位置感知订阅/发布系统的top-k订阅查询匹配方法,其包括以下步骤:(1)根据订阅的空间点信息建立R-tree;(2)提取每个订阅中的谓词和该谓词的权重;(3)将步骤(2)中谓词载入到R-tree中不同层中的不同节点上得到RRt-tree;(4)根据给定的事件e在RRt-tree中遍历各个订阅进行谓词匹配,根据谓词匹配结果得到订阅的候选集;(5)计算出步骤(4)中的订阅的候选集中各个订阅与事件e的相似性函数值;(6)将订阅候选集中的订阅按照相似性函数值的大小进行降序排列作为上界队列,并输出前k个订阅作为top-k订阅查询匹配结果。本发明将Rt-tree索引结构和一个谓词索引结构结合起来,并采用一个订阅分区策略。当一个事件到达时,可以快速的检索出他的top-k个匹配最好的订阅。
本发明的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本发明的研究和实践而为本领域的技术人员所理解。
附图说明
图1是本发明位置感知订阅/发布系统的top-k订阅查询匹配方法的一个实施例中的订阅和事件的列表图;
图2是图1中10个订阅和一个事件的在一个给定区域的地理位置分布图;
图3是本发明位置感知订阅/发布系统的top-k订阅查询匹配方法中的RRt-tree的索引结构图;
图4是本发明位置感知订阅/发布系统的top-k订阅查询匹配方法中的谓词索引结构;
图5是图1中10个订阅的RRt-tree的索引结构图;
图6是本发明位置感知订阅/发布系统的top-k订阅查询匹配方法中的订阅查询计算过程。
具体实施方式
下面结合附图对本发明做进一步的详细说明,以令本领域技术人员参照说明书文字能够据以实施。
应当理解,本文所使用的诸如“具有”、“包含”以及“包括”术语并不配出一个或多个其它元件或其组合的存在或添加。
我们首先把现存结构化的订阅/发布索引Opindex与R-tree空间索引树结合,其主要思想就是将R-tree叶子节点上的订阅以Opindex索引起来,在检索出在布尔表达式上完全匹配的订阅的同时,对这些订阅进行排序从而选出top-k个结果。由于叶子节点的区域可能很小,所以造成该方法在空间维度的剪枝能力上效率低下。因此,该方法效率并不高。为了提升效率,我们提出一个RRt-trees的方法,该方法将Rt-tree索引结构和一个谓词索引结构结合起来,并采用一个订阅分区策略。当一个事件到达时,该方法可以快速的检索出他的top-k个匹配最好的订阅。
带有布尔表达式的位置感知订阅/发布系统的Top-k订阅查询匹配问题定义
订阅:订阅者注册他们的兴趣作为订阅,一个订阅s由一个三元组构成s.B,s.loc,α
s.B是一个描述订阅者兴趣的布尔表达式,s.loc是一个订阅的空间位置,α是一个用来平衡空间维度相似性和布尔表达式维度相似性的一个参数。一个布尔表达式是由一些列谓词的合取形式构成。一个谓词是一个用户给定的属性和值之间的限制,它有三部分构成,一个属性A,一个操作符fop,一个值v。因此p(A,fop,v)表示一个谓词p。操作符可以是关系操作符(e.g.,<,≤,>,≥,=,≠)也可以是集合操作符每一个谓词都有一个权重s,满足
因此,一个订阅可以被如下描述:
s:{(<p1,ω1>∧<p2,ω2>∧<pi,ωi>∧….∧<pn,ωn>),loc,α}
事件:一个事件e包括一组属性值对和一个地理位置信息,分别由e.V和e.loc表示.属性值对e.V由一些列谓词以合取形式构成。因此,υ(A,v)表示一个属性值对.每个属性值对都有一个权重,满足,因此,事件可被定义成如下形式。
e:{(<υ1,ωe1>∧<υ2,ωe2>∧<υ3,ωe3>∧….∧<υn,ωen>),loc}
权重s表示用户对于订阅中各个谓词的偏好程度并由用户给。权重e表示属性值对和谓词的相关程度,它是根据属性值对在整个数据集中的出现频率给定的。
定义1:谓词匹配
给定一个属性值对υ和一个谓词p,如果p.A=υ.A并且p(A,fop,v)=true,那么我们说谓词p匹配属性值对。
定义2:布尔表达式匹配
一个值对集合e.V匹配一个布尔表达式s.B当且仅当s.B里的每一个谓词均与e.V中的属性值对匹配。
定义3:相似性函数
给定一个事件e和一个订阅s,其相似性函数定义如下:
这里是布尔表达式相似性函数,是空间相似性函数。布尔表达式相似性函数定义如下:
这里表示订阅s中谓词的个数。空间相似性函数定义如下:
这里dist(e.loc,s.loc)e和s的欧式距离and MaxDist是订阅之间的最大距离。如图1所示,对于事件e={[A=3(0.1)ΛB=3(0.5)ΛC=4(0.2)ΛF=2(0.2)],e.loc,α},根据定义2,订阅S1匹配e。然而,订阅S4不匹配e因为其谓词G≥4不匹配任何e中的属性值对。根据定义3,空间相似度等于0.35,布尔表达式相似度等于0.25。因此,最终的平衡后的相似度等于0.30。类似地,由于空间相似度等于0.15,布尔表达式相似度等于0.18,所以总的相似度因此如果我们想检索出top-1个订阅,那么答案是S1。
初步的解决方案
我们将现存的R-tree空间索引和Op-index结合起来初步解决本问题。Op-index是一个著名的结构化,采用了布尔表达式的订阅/发布系统的索。其主要思想是根据关键属性对订阅建立倒排并采用了一个两层分区策略来处理高维度属性个数的订阅/发布系统。我们可以将Op-index和R-tree结合起来(称为OPR-tree)来处理本问题。我们首先根据订阅的地理位置信息建立R-tree。之后我们以Op-index将处于叶子节点的订阅索引起来。本索引结构的搭建和查询过程我们将详细描述。
OPR-tree搭建过程:对于每一个订阅s我们找到其叶子节点并将其关键属性A提取出来。之后我们将叶子节点的订阅根据关键属性建立若干个列表。该列表由(n,A)表示。每一个列表可以被进一步根据操作符(e.g.,<,≤,>,≥,=,≠)划分为子列表。该子列表由(n,A,op)表示。对于(n,A,op)中的每一个谓词,我们采用一个哈希函数h(p.A)来确定的签名字段来定位谓。根据h(p.A)我们在签名字段选取相应的,并将其置为1。除此之外我们还设置了一个计数数组来跟踪已经匹配的谓词的个数。
OPR-tree查询过程:对于一个事件e,我们在R-tree上检索出其叶子节点n。之后我们提取出事件e中所有的属性υi.A(υi∈e.V)如果υi.A确实是一个关键属性。订阅中的每一个属性在整个数据集里都有一个出现频率,一个订阅中出现频率最小的那个属性就是该订阅的关键属性那么我们便用e中的属性值对υi来查询(n,A)。对于每一个υi,我们先计算其哈希值h(υi.A).之后跟去该哈希值在定位签名字段中的位,如果该位被置为1。我们遍查询相应谓词列表(n,A,op).之后如果pj(υi.v)=true,那么该谓词的布尔表达式相似性可以被计算。如果全部谓词都得到匹,我们计算出它的空间相似性得分因此,最终的相似性被计算出来并加入top-k订阅匹配的候选集。给定一个事件e,和一个叶子节点n,e相对于叶子结点n的相似性上届由两者见距离的相似性和该事件e中最大权重而确定。
OPR-tree根据R-tree的叶子结点来分区。然而,叶子结点的区域可能会很小,这将导致系在空间剪枝能力上的大大减弱。因此,OPR-tree并不十分高效.为了解决这个问题,我们提出了RRt-trees的解决方案。
三、RRt-trees解决方案
1.RRt-tree索引结构
Rt-tree是一个著名的非结构化订阅/发布系统的解决方案。根据Rt-tree,我们提出了一个方法RRt-tree。RRt-tree的主要思想是将Rt-tree解决方案中的关键字转化成本问题中订阅里的谓词。这些谓词将被载入在其订阅落在的叶子节点的祖先节点。之后,我们采用一个谓词索引结构对所有结点上的谓词进行索引。
RRt-tree construction:我们根据订阅的空间点信息建立R-tree。对于一个给定的订阅s,我们首先提取出它所有独立的谓词pi,包括其权重。之后,我们将谓词pi载入到R-tree中不同层中的不同结点当中。
给定一个建立好的R-tree,它的高度是给定一个订阅s其谓词的个数为 我们直接将s中剩余个谓词载入其叶子结点。If 只有前层的祖先结点包含s中的谓词。令pi表示s中第i个谓词。对于第i层中的每个结点n,都有一个谓词集合P在其中。我们根据P中的谓词的属性建立若干个到排文件,具有相同属性的谓词被聚集在一块。为了在事件查询中跟踪订阅s已匹配的谓词个数,我们为所有订阅设置了一个哈希图,并初始化相应的哈希值为0。当P中的一个谓词被匹配后,我们将其相应的哈希值增加1。根据我们可以高效地检索出top-k订阅的候选集。作为解释,我们有如下引理。
引理1:给定一个事件e和一个在第i层的结点n,如果那么s不可能是e的一个top-k订阅的候选集。
引理2:给定一个事件e和一个在第i层的结点n,如果那么s一定是e的一个top-k订阅的候选集。
引理3:给定一个事件e和一个在第i层的结点n,如果并且n是一个叶子结点,那么s一定是e的一个top-k订阅的候选集。
谓词索引结构:
在RRt-tree的每一个结点上,都有一个谓词集合P,以及这些谓词的权重,还有,最大、最小的阿尔法值αmax、αmin。为了高效地检索P中匹配的谓词,我们为P设计了一个谓词索引。
我们分两步索引P中的谓词,第一步,我们按照谓词的属性将其分成若干个不相交的谓词列表,如下所示。
对于列表中的每个谓词,为统计已匹配的谓词个数,均设有一个指针指向其相应订阅的M[s]。
第二步,列表中的谓词被进一步根据他们的操作符划分为相应的值列表如下所示:
基于图1的10组订阅,图3展示了RRt-tree的索引结构,图4展示了P3的谓词索引结构。
2.RRt-trees index structure
由于订阅的数量个能很大,提高RRt-tree的查询效率是必要的。为了解决该问题,我们把订阅按照关键属性分成个订阅列表。并用RRt-tree索引这些列表中的订阅。我们将这种索引方案成为RRt-trees。给定一个订阅集合我们根据关键属性δA.将其分区并用RRt-tree对其进行索引,如下所示:
有定义1和定义2,我们可以做出如下结论:如果一个事件e匹配一个订阅s,那么s中所有的属性都出现在e中。明显地,如果s中有一个属性不在e中出现。e不可能匹配s。因此,给定一个事件e,我们只考虑那些关键属性出现在e中的订阅。
RR-trees的索引结构如图4所示。根据上文提及的选取关键属性的规则,A,D,E,G分别被选为关键属性。给定一个图1中的事件e,列表L(E)和L(G)中的订阅不可能匹配。
3 Similarity Upper Bound of Rt-tree Based Solutions
在描述完RRt-tree and RRt-trees索引结构后,现在我们给出其相似性上届。
定义4.UBBE(e,n):对于一个给定的事件e和RRt-tree中的一个结点n,布尔表达式相似性函数UBBE(e,n)定义如下:
这里是指出现在1到i-1层中属于s的所有已匹配的谓词的得分。另外是指e中尚未匹配的属性值对的最大权重。是s中尚未匹配的谓词权重之和。
定义5.UBs(e,n):对于一个给定的事件e和RRt-tree中的一个结点n,空间相似性函数UBBE(e,n)定义如下:
这里MaxDist订阅之间最大的距离,n.MBR是n所确定的最小边界矩形,MinDist(e.loc,n.MBR)e.loc和n.MBR的最小距离。
定义6.UB(e,n):
根据定义4和定义5,对于一个给定的事件e和RRt-tree中的一个结点n,最终的相似性函数UB(e,n)定义如下:
这里n.αmin,和n.αmax是结点n中订阅里最大的阿尔法值和最小的阿尔法值。
根据定义6,我们有如下引理:
引理5:
给定一个事件e和一个包含一个订阅集合Sn结点n,对于任意的s∈Sn,都有:
四、查询算法
查询算法入图6所示,我们采用一个上界队列来存储尚未访问的结点。这些结点根据他们的相似性上界UB(e,n)进行降序排列,对于根结点,其上界为1。给定一个事件e,我们从根结点遍历所有的RRt-trees中的RRt-tree(vi.A),这里vi∈e。该算法将会返回top-k匹配最好的订阅的候选集。它将会在如下情况下终止:
1)当k订阅被找到并且它的最小相似性得分大于上界队列中的最大上界UB(e,n)。
2)当上界队列为空时。
尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。
Claims (7)
1.一种位置感知订阅/发布系统的top-k订阅查询匹配方法,其特征在于,包括以下步骤:
(1)根据订阅的空间点信息建立R-tree;
(2)提取每个订阅中的谓词和该谓词的权重;
(3)将步骤(2)中谓词载入到R-tree中不同层中的不同节点上得到RRt-tree,过程为:
步骤(1)中的R-tree的高度是给定一个订阅s,其谓词的个数为
If将s中个谓词载入其叶子结点;
If只有前层的祖先结点包含s中的谓词;
令pi表示s中第i个谓词,对于第i层中的每个结点n都有一个谓词集合P;
(4)根据给定的事件e在RRt-tree中遍历各个订阅进行谓词匹配,根据谓词匹配结果得到订阅的候选集;
(5)计算出步骤(4)中的订阅的候选集中各个订阅与事件e的相似性函数值;
(6)将订阅候选集中的订阅按照相似性函数值的大小进行降序排列作为上界队列,并输出前k个订阅作为top-k订阅查询匹配结果。
2.如权利要求1所述的位置感知订阅/发布系统的top-k订阅查询匹配方法,其特征在于,为P设计一个谓词索引,包括:
第一步,按照谓词的属性将其分成若干个不相交的谓词列表,如下公式:
对于列表中的每个谓词,为统计已匹配的谓词个数,均设有一个指针指向其相应订阅的M[s];
第二步,列表中的谓词被进一步根据他们的操作符划分为相应的值列表如下所示:
3.如权利要求2所述的位置感知订阅/发布系统的top-k订阅查询匹配方法,其特征在于,步骤(4)谓词匹配的过程为:
为所有订阅设置一个哈希图,并初始化相应的哈希值为0;
当P中的一个谓词被匹配后,我们将其相应的哈希值增加1;
给定一个事件e和一个在第i层的结点n,如果s不可能是e的一个top-k订阅的候选集;
给定一个事件e和一个在第i层的结点n,如果s一定是e的一个top-k订阅的候选集;
给定一个事件e和一个在第i层的结点n,如果并且n是一个叶子结点,那么s一定是e的一个top-k订阅的候选集。
4.如权利要求1所述的位置感知订阅/发布系统的top-k订阅查询匹配方法,其特征在于,
把订阅按照关键属性分成个订阅列表,并用RRt-tree索引这些列表中的订阅;
给定一个订阅集合我们根据关键属性δA.将其分区并用RRt-tree对其进行索引,如下所示:
5.如权利要求1所述的位置感知订阅/发布系统的top-k订阅查询匹配方法,其特征在于,相似性函数值的计算包括:
对于一个给定的事件e和RRt-tree中的一个结点n,布尔表达式相似性函数UBBE(e,n)计算公式如下:
这里是指出现在1到i-1层中属于s的所有已匹配的谓词的得分另外其中,ωemax*是指e中尚未匹配的属性值对的最大权重,是s中尚未匹配的谓词权重之和;
对于一个给定的事件e和RRt-tree中的一个结点n,空间相似性函数UBBE(e,n)计算公式如下:
MaxDist订阅之间最大的距离,n.MBR是n所确定的最小边界矩形,MinDist(e.loc,n.MBR)是e.loc和n.MBR的最小距离;
对于一个给定的事件e和RRt-tree中的一个结点n,最终的相似性函数UB(e,n)计算公式如下:
这里n.αmin和n.αmax是结点n中订阅里最大的阿尔法值和最小的阿尔法值。
6.如权利要求5所述的位置感知订阅/发布系统的top-k订阅查询匹配方法,其特征在于,
给定一个事件e和一个订阅s,其相似性函数计算公式如下:
这里是布尔表达式相似性函数,是空间相似性函数;
布尔表达式相似性函数计算公式如下:
这里表示订阅s中谓词的个数;
空间相似性函数的计算公式如下:
这里dist(e.loc,s.loc)是e和s的欧式距离,MaxDist是订阅之间的最大距离;
给定一个事件e和一个包含一个订阅集合Sn的结点n,对于任意
7.如权利要求6所述的位置感知订阅/发布系统的top-k订阅查询匹配方法,其特征在于,如下情况时停止查询:
1)当k订阅被找到并且它的最小相似性得分大于上界队列中的最大上界UB(e,n);
2)当上界队列为空时。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510981823.1A CN105373633B (zh) | 2015-12-23 | 2015-12-23 | 位置感知订阅/发布系统的top-k订阅查询匹配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510981823.1A CN105373633B (zh) | 2015-12-23 | 2015-12-23 | 位置感知订阅/发布系统的top-k订阅查询匹配方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105373633A CN105373633A (zh) | 2016-03-02 |
CN105373633B true CN105373633B (zh) | 2019-03-05 |
Family
ID=55375831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510981823.1A Active CN105373633B (zh) | 2015-12-23 | 2015-12-23 | 位置感知订阅/发布系统的top-k订阅查询匹配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105373633B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106060154B (zh) * | 2016-06-30 | 2019-04-19 | 江苏省现代企业信息化应用支撑软件工程技术研发中心 | 基于主题模型的订阅发布匹配方法及装置 |
CN107193980A (zh) * | 2017-05-26 | 2017-09-22 | 电子科技大学 | 多用户空间查询下实现并使用mrs树数据结构 |
CN107590190B (zh) * | 2017-08-11 | 2019-12-03 | 中南民族大学 | 一种路网中空间文本发布订阅方法及其组合索引 |
CN107506490B (zh) * | 2017-09-22 | 2020-08-11 | 深圳大学 | 滑动窗口下基于位置top-k关键词查询的优先查询算法及系统 |
CN108984634A (zh) * | 2018-06-21 | 2018-12-11 | 九江学院 | 一种云环境下的高效发布订阅方法 |
CN109558410A (zh) * | 2018-12-14 | 2019-04-02 | 北京邮电大学 | 一种信息分发系统中基于多维内容的事件匹配算法 |
CN111949913B (zh) * | 2020-08-12 | 2024-04-09 | 上海交通大学 | 面向时空感知发布/订阅系统的高效匹配方法及系统 |
CN113259167B (zh) * | 2021-05-28 | 2023-07-18 | 贵州电网有限责任公司 | 一种基于事件触发机制的配电终端数据传输方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102004798A (zh) * | 2010-12-27 | 2011-04-06 | 东北大学 | 一种基于复数单维索引的对称发布订阅系统匹配方法 |
CN103310350A (zh) * | 2013-06-19 | 2013-09-18 | 西北工业大学 | 一种基于谓词区分和关联的快速订阅与匹配方法 |
CN105068879A (zh) * | 2015-08-31 | 2015-11-18 | 苏州大学张家港工业技术研究院 | 一种查找目标订阅的方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100036865A1 (en) * | 2008-08-07 | 2010-02-11 | Yahoo! Inc. | Method For Generating Score-Optimal R-Trees |
-
2015
- 2015-12-23 CN CN201510981823.1A patent/CN105373633B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102004798A (zh) * | 2010-12-27 | 2011-04-06 | 东北大学 | 一种基于复数单维索引的对称发布订阅系统匹配方法 |
CN103310350A (zh) * | 2013-06-19 | 2013-09-18 | 西北工业大学 | 一种基于谓词区分和关联的快速订阅与匹配方法 |
CN105068879A (zh) * | 2015-08-31 | 2015-11-18 | 苏州大学张家港工业技术研究院 | 一种查找目标订阅的方法及装置 |
Non-Patent Citations (2)
Title |
---|
Efficient Top-k Subscription Matching for Location-Aware Publish/Subscribe;Jiafeng Hu 等;《Advances in Spatial and Temporal Database.SSTD 2015》;20150813;第337页第22-32行、第339页第8-11行、第341页第30-35行、第342页第30-31行、第343页第1行、第345页第1-12行 |
同构对称发布/订阅系统中Top-k算法的研究与实现;马素华;《中国优秀硕士学位论文全文数据库 信息科技辑》;20140715(第7期);I138-37 |
Also Published As
Publication number | Publication date |
---|---|
CN105373633A (zh) | 2016-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105373633B (zh) | 位置感知订阅/发布系统的top-k订阅查询匹配方法 | |
CN106651546B (zh) | 一种面向智慧社区的电子商务信息推荐方法 | |
CN110674407B (zh) | 基于图卷积神经网络的混合推荐方法 | |
CN104156450B (zh) | 一种基于用户网络数据的物品信息推荐方法 | |
Grbovic et al. | Scalable semantic matching of queries to ads in sponsored search advertising | |
CN103544216B (zh) | 一种结合图像内容和关键字的信息推荐方法及系统 | |
CN103246980B (zh) | 信息输出方法及服务器 | |
CN103412937B (zh) | 一种基于手持终端的搜索购物方法 | |
CN103412938B (zh) | 一种基于图片交互式多目标提取的商品比价方法 | |
Selke et al. | Pushing the boundaries of crowd-enabled databases with query-driven schema expansion | |
US20080235216A1 (en) | Method of predicitng affinity between entities | |
CN103886048B (zh) | 一种基于聚类的增量数字图书推荐方法 | |
CN108021708B (zh) | 内容推荐方法、装置与计算机可读存储介质 | |
CN106096026A (zh) | 一种商品搜索方法及系统 | |
CN109409928A (zh) | 一种素材推荐方法、装置、存储介质、终端 | |
WO2011087904A1 (en) | Matching of advertising sources and keyword sets in online commerce platforms | |
CA3059929C (en) | Text searching method, apparatus, and non-transitory computer-readable storage medium | |
CN107656918B (zh) | 获取目标用户的方法及装置 | |
CN107784110A (zh) | 一种索引建立方法及装置 | |
CN108629010A (zh) | 一种基于主题和服务组合信息的web服务推荐方法 | |
CN107943910B (zh) | 一种基于组合算法的个性化图书推荐方法 | |
US20150206220A1 (en) | Recommendation Strategy Portfolios | |
CN106909647A (zh) | 一种数据检索方法及装置 | |
CN106919647A (zh) | 一种基于聚类的网络结构相似性推荐方法 | |
Anandhan et al. | Social Media Recommender Systems (SMRS): A Bibliometric Analysis Study 2000–2021 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |