一种查找目标订阅的方法及装置的制造方法_2

文档序号:9349814阅读:来源:国知局
示意图;
[0047] 图6为本申请实施例公开的添加新订阅到RP索引树的方法流程图;
[0048] 图7为本申请实施例公开的又一 RP索引树的结构示意图;
[0049] 图8为本申请实施例公开的查找目标订阅装置的结构示意图。
【具体实施方式】
[0050] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[0051] 在实现本方案之初,由于订阅中新增加了空间区域信息,所以需要对位置感知订 阅/发布系统进行定义。
[0052] -个订阅包含一个布尔表达式和一个空间区域信息,以s = (B,R)表不。一个布 尔表达式是一些谓词合取的组合。一个谓词由三个元素组成,属性A,比较符fop,属性值 乂,因此,一个谓词可用1 30^。|^)表示。本申请中的比较符包括:(=,彡,彡,〈,>,£)。
[0053] -个布尔表达式可由下面的公式表示:
[0054] s. B = P1(X)八 P2(X)八 P3(X)八?…八 Pn(X)
[0055] 由布尔表达式限制和空间区域信息限制构成的订阅可由下面公式表示:
[0056] s: {(P1 (x) A P2 (x) A P3 (x) A . . . . A Pm (x)), Region}
[0057] -个信息发布者发布事件包含一组值对e. V和一个空间地理位置信息e. P,e. V是 由一组等号谓词合取式表示,因此,一个事件可以由下面公式表示:
[0058] e: {(A1= v^A (A2= v 2) A (A3= v3) A. . . .A (Am= v m),Point}
[0059] 同理,对目标订阅查找过程中所利用的匹配关系也做出了如下定义:
[0060] 定义一:谓词匹配
[0061] Vn表示e. V中的一个值对,Vn.A表示该值对的属性,Vn. V表示属性值对于一个出现 在订阅中的谓词Pm,当Pm. A = Vn A并且Pm(Vn.V)为真时,我们称之为谓词匹配。
[0062] 定义二:布尔表达式匹配
[0063] -个值对集合e. V匹配一个布尔表达式s. B当且仅当s. B里的每一个谓词均与 e. V匹配。
[0064] 定义三:
[0065] 给定一组订阅:S = (S1, s2, S3.....sm};每个订阅均由一个布尔表达式和一个空 间区域信息组成,即,分别由s. B和s. R组成。对于事件流中每一个由值对e. V和空间地 理位置信息e. P组成的事件,S1G S匹配e. V的条件是,当且仅当SLR A e.P#0并且e. V matches S1. B,即,订阅si中的空间区域信息与事件中的空间地理位置信息有交集,并且, 订阅中的谓词属性与事件中的谓词属性相匹配。
[0066] 在上述定义的基础上,本申请实施例公开的查找目标订阅的方法的流程如图1所 示,包括:
[0067] 步骤SlOl:接收信息发布者发布的事件,所述事件包括值对信息及空间地理位置 信息,其中,所述值对信息为一组等号谓词合取式;
[0068] 其表述形式如上所示,e: {(A1= V丨)八(A2= V 2)八(A3= V 3)八?…八(Am= vm), Point}
[0069] 步骤S102:计算所述事件中谓词个数;
[0070] 上述例子中的事件,其谓词个数为m。
[0071] 步骤S103 :对预先建立的布尔表达式列表分别进行匹配处理,直到所有布尔表达 式列表被处理完,得到目标订阅集合。
[0072] 在上述过程之后,还包括向所述目标订阅集合中的目标订阅推送所述事件。
[0073] 其中每个布尔表达式列表分别为:具有相同谓词个数的订阅的集合,所述布尔表 达式列表中包含至少一个布尔表达式子表,所述布尔表达式子表为具有相同关键谓词属性 的订阅的集合,所述订阅中包含有至少一个谓词以及一个空间区域信息。
[0074] 本发明公开的查找目标订阅的方法中,通过将订阅中的关键词按照属性及大小进 行划分的方式,将订阅存储在布尔表达式子表及布尔表达式列表中,进而有效提升了查询 匹配的效率。
[0075] 在本实施例中,预先将所有订阅进行了分析,并且,对发布的事件格式进行了规 定。假设带有布尔表达式和空间区域信息的订阅如图2所示。其中,左侧为本实施例中列 举的8个订阅S 1-S8的布尔表达式。而右侧为订阅对应的空间区域信息R「Rs,同时,图中还 涵盖了 2个事件EjP E 2的布尔表达式,及其对应的空间地理位置信息P :和P 2。
[0076] 首先,计算各个订阅中包含的谓词个数,从S1-S8依次为3、2、3、3、4、3、3、3、3和4。 然后按照包含的谓词个数进行划分,将具有相同谓词个数的订阅划分为一个集合,作为一 个布尔表达式列表1(1〇则,订阅3可以表示为:3 = 1^1)1^(1^)1^(1〇1^...1^(1〇。 以图2为例,将订阅用布尔表达式列表表示为:
[0077] S = L(2) U L(3) U L(4)
[0078] 然后,再对所有的订阅中的谓词属性进行分析,为每个订阅确定一个关键谓词属 性。在本申请中公开的确定谓词属性的过程可以如图3所示,包括:
[0079] 步骤S301 :将所有订阅中的谓词属性进行统计,分别获得各个谓词属性的出现频 率;
[0080] 以图2为例,其中,S1中出现的谓词属性为B、A、C,82中的谓词属性为D、C,8 3中 的谓词属性为E、A、B,^中的谓词属性为A、F、G,85中的谓词属性为F、D、C、G,8 6中的谓词 属性为E、A、C,^中的谓词属性为E、B、C,s 8中的谓词属性为A、B、C。其中A出现5次,B 出现4次,C出现6次,D出现2次,E出现3次,F出现2次,G出现2次。
[0081] 步骤S302 :确定各个订阅包含的谓词,属性中出现频率最低的谓词属性为所述订 阅的关键谓词属性;
[0082] 对应到各个谓词中,81中出现频率最低的谓词属性是B,s 2中出现频率最低的谓词 属性是D,S3中出现频率最低的谓词属性是E,s 4中出现的谓词属性是G,s 5中出现频率最低 的谓词属性是G,86中出现频率最低的谓词属性是E,S 7中出现频率最低的谓词属性是E,S s 中出现频率最低的谓词属性是B。则所有的谓词中的关键谓词属性为B、D、E和G。
[0083] 步骤S303 :将布尔表达式列表中具有同一关键属性的订阅划分为布尔表达式子 表;
[0084] 以L (3)为例,其包含的订阅中的关键谓词属性为B、E和G。则其对应的布尔表达 式可以变形为L (3) =L(B) U L(E) U L(G)。则可以对应拆分为3个布尔表达式子表L (3, B)、L(3,E)和 L(3,G)。其中,L(3,B)中包括订阅 sJP ss,L(3,E)中包含订阅 83、86和 s7。 L(3,G)中包含订阅s4。
[0085] 相应的,L(2)可以变形为,L(2) = L(D),则其对应的布尔表达式子表为L(2, D), L (4)可以变形为L (2) = L(G),则其对应的布尔表达式子表为L (4, G)。
[0086] 步骤S304 :确定所述订阅的关键谓词属性为所述布尔表达式子表的关键谓词属 性。
[0087] 在将所有订阅按照上述方式进
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1