CN111949913B - 面向时空感知发布/订阅系统的高效匹配方法及系统 - Google Patents
面向时空感知发布/订阅系统的高效匹配方法及系统 Download PDFInfo
- Publication number
- CN111949913B CN111949913B CN202010813627.4A CN202010813627A CN111949913B CN 111949913 B CN111949913 B CN 111949913B CN 202010813627 A CN202010813627 A CN 202010813627A CN 111949913 B CN111949913 B CN 111949913B
- Authority
- CN
- China
- Prior art keywords
- cells
- level
- index
- width
- value
- 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
- 238000000034 method Methods 0.000 title claims abstract description 40
- 230000008447 perception Effects 0.000 title abstract description 10
- 238000013507 mapping Methods 0.000 claims abstract description 59
- 238000003780 insertion Methods 0.000 claims description 16
- 230000037431 insertion Effects 0.000 claims description 16
- 238000012217 deletion Methods 0.000 claims description 14
- 230000037430 deletion Effects 0.000 claims description 14
- 238000000638 solvent extraction Methods 0.000 claims description 14
- 238000009827 uniform distribution Methods 0.000 claims description 14
- 238000009826 distribution Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 11
- 230000005251 gamma ray Effects 0.000 claims description 6
- 238000005457 optimization Methods 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 5
- 238000005192 partition Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 description 17
- 238000012423 maintenance Methods 0.000 description 14
- 230000001737 promoting effect Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- 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/901—Indexing; Data structures therefor; Storage structures
- G06F16/9027—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/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)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (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
本发明提供了一种面向时空感知发布/订阅系统的匹配方法及系统,包括:步骤M1:选择符合预设条件的且分布均匀的属性作为索引属性,对索引属性的值域进行混合划分,实现订阅中区域谓词和事件属性值到划分单元的映射;步骤M2:通过级联多个进行混合划分的索引属性构造MO‑Tree,实现订阅和事件到MO‑Tree中叶子节点的映射;步骤M3:根据索引属性值,基于MO‑Tree实现订阅匹配和事件匹配;本发明解决方案完整性:事件和订阅都可以在MO‑Tree中进行索引。
Description
技术领域
本发明涉及时空感知数据分发网络中的匹配方法,具体地,涉及一种面向时空感知发布/订阅系统的高效匹配方法及系统,更为具体地,涉及一种新颖的数据结构以实现高效的事件匹配、订阅匹配、事件与订阅维护操作。
背景技术
随着通信技术的发展以及诸如智能电话之类的移动设备的普及,许多应用以前所未有的规模不断生成大量具有位置标记和对时间敏感的数据,这些应用促使了时空感知数据实时分发的需求。
以移动电子商务场景为例,商家会以事件的形式定期发布对时间敏感的线下促销活动,这些事件信息中包含商家位置,以及促销活动的截止日期。这些活动不是一次性的,而是会持续一段时间,这意味着它们可能会满足后加入客户的要求。另一方面,持有移动设备的客户希望收到那些在其附近并且满足其指定的偏好要求的促销活动,他们的偏好要求中包含了用户对商品的偏好、当前位置以及感兴趣的附近范围大小。由于用户在不断移动,因此,即使他们订阅了一次,需要根据他们不断变化的位置更新其订阅。
移动电子商务的应用场景展现了时空感知数据分发的三个特征,即细粒度的表达能力,时间敏感性和位置感知。首先,产品或服务的促销事件通常包含多个属性,客户可以非常精确地表达他们感兴趣的销售产品类型。其次,每个促销事件都具有有效期,过期促销将终止。第三,每个客户提交的订阅都指定一个随用户移动的空间通知区域。
为了实现时空感知的数据分发,四种操作至关重要,即订阅维护,事件维护,订阅匹配和事件匹配。1)订阅维护:应有效维护客户提交的所有订阅信息,以提高事件匹配性能,这涉及订阅的插入,删除和更新。2)事件维护:类似地,应有效维护所有未过期的历史促销事件以提高订阅匹配性能,这涉及事件插入和删除。3)订阅匹配:当客户提交一个新订阅时,应将其与维护的未过期历史促销事件集进行匹配,以便向客户发送满足其偏好要求的促销事件。4)事件匹配:每当发布一个事件时,应将其与维护的订阅集进行匹配,以便将促销事件发送给感兴趣的客户。
当面对大量的订阅和海量的促销事件时,例如,阿里巴巴推出的喵街App为数百万消费者提供了巨大的折扣信息,到2020年2月总下载量达到5200万。保证时空感知促销事件的快速传播非常具有挑战性。现有的具有位置感知能力的发布/订阅系统都无法提供高性能的整体解决方案,无法支持事件和订阅的高效匹配和维护操作。
本发明提出了一种新颖的数据结构MO-Tree,以统一的方式对事件和订阅进行索引,从而在匹配和维护操作中均实现了较高的性能。因此,MO-Tree可作为为时空感知基于内容的发布/订阅系统的转发引擎。MO-Tree是一种树状数据结构,其中,订阅和事件存储在叶节点中,并且采用基于剪枝的搜索策略来支持事件匹配和订阅匹配。
MO-Tree的设计理念是使数据结构尽量保持简洁,以便在匹配和维护操作中达到较高的整体性能,这体现在三个方面。首先,通过限制树的高度并扩大节点的扇出,使MO-Tree的形状变平。其次,通过利用时间交换空间的策略来限制每个叶节点中存储的订阅或事件个数,以提高匹配操作效率。第三,避免节点拆分和合并,以提高维护操作效率,这与传统树结构不同。
设计MO-Tree的一个困难是索引由不同宽度的区间谓词组成的订阅。本专利提出了一种混合分区方案,将属性的值域划分为多级重叠单元,以处理各种区间宽度。此外,建立了一个优化模型来计算每个级别中重叠单元的宽度。
专利文献CN108197138A(申请号:201711163992.X)公开了一种在发布/订阅系统中发布信息匹配订阅信息的方法及系统,对于每一个订阅信息离散化后,进行哈希计算得到哈希值,在设置的数据库中将所述离散化的订阅信息作为索引,将对应的哈希值映射到的在数据库中的向量位置的计数器加一。在匹配时,将发布信息离散化后,进行哈希计算得到哈希值,判断映射到数据库中的向量位置是否都大于一,如果是,则匹配成功,后续据此将发布信息发送给设置数据库的代理结点。由于对订阅信息和发布信息采用了计数型布隆过滤器处理后,再进行匹配,从而保证了匹配的时效性,而且能够保护订阅者的订阅信息的隐私。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种面向时空感知发布/订阅系统的匹配方法及系统。
根据本发明提供的一种面向时空感知发布/订阅系统的匹配方法,包括:
步骤M1:选择符合预设条件的且分布均匀的属性作为索引属性,对索引属性的值域进行混合划分,实现订阅中区域谓词和事件属性值到划分单元的映射;
步骤M2:通过级联多个进行混合划分的索引属性构造MO-Tree,实现订阅和事件到MO-Tree中叶子节点的映射;
步骤M3:根据索引属性值,基于MO-Tree实现订阅匹配和事件匹配;
所述索引属性的值域进行混合划分包括将索引属性的值域分别划分为不相交的单元格和多级重叠的单元格。
优选地,所述步骤M1包括:
步骤M1.1:将属性的值域均匀地划分为一定数量的不相交单元格,实现事件属性值与单元格的一对一映射;
步骤M1.2:在多级重叠式划分方案中,将值域划分为单元格数量逐级减少,单元格间的重叠宽度逐级增大的多级重叠式划分,多级单元重叠结构处理不同宽度的区间谓词,实现区间谓词与完全包含区间谓词的最小单元格的一对一映射;
所述多级重叠划分包括相同级别的相邻两个单元格的重叠划分和不同级别的单元格的重叠划分;多级重叠式划分实现了从具有不同宽度和中心的区域谓词到单元格的一对一映射。
优选地,所述步骤M1.2包括:
步骤M1.2.1:设置级别数量L,每一级中单元格的数量为ci=L-i+1,则第i级中两个相邻单元格之间的重叠宽度其中,wi表示每一级单元格的宽度;
步骤M1.2.2:当区间谓词的宽度遵循齐夫分布,将区间谓词均匀地存储在L级的单元格中,则第i级中存储的区间谓词的理想宽度ti满足
步骤M1.2.3:第i级中单元格宽度wi的最大取值最小取值/>
步骤M1.2.4:设ρi表示在第i级中与属性值相交的单元格数量,则:
其中,z表示属性值变量,Pe(z)表示事件中属性值的概率密度函数,ki(z)表示第i级中包含属性值z的单元格数量;当Pe(z)符合均匀分布时,则ρi=ci*wi;
步骤M1.2.5:设γi表示在第i级成功索引目标范围中区间谓词的比例,ri(x)表示在第i级索引宽度为x的成功率:
其中,Pl(y|x)表示区间谓词的低值为y,宽度为x的区间谓词的概率密度函数,bi(y,x)表示区间谓词的低值为y,宽度为x的区间谓词是否存储在第i级的某个单元格中;1表示存储在第i级的单元格中,0表示没有存储在第i级的单元格中;
其中,j表示第i级中的单元格,j=0,1,…,ci-1;
当Pl(y|x)符合均匀分布时,在第i级索引宽度x的成功率
其中,ti表示第i级中存储的区间谓词的理想宽度,Pw(x)表示区间谓词宽度的概率密度函数;γi表示第i级成功索引目标范围中区间谓词的比例;
步骤M1.2.6:根据每个级别的区间谓词的理想宽度ti,优化每一级中单元格宽度,满足在事件匹配时与属性值相交的单元格数量不超过给定阈值η,每一级单元格宽度的最大化公式如下:
其中,λ是拉格朗日乘子;
每一级i中单元格宽度的最优解为:
其中,和/>分别表示求wi和λ的偏导数。
优选地,所述多级重叠式划分单元格包括覆盖整个值域宽度的单元格,覆盖整个值域宽度的单元格用于存储最大宽度的区间谓词,并用于解决订阅中不包含在索引属性上定义的谓词。
优选地,所述步骤M2中MO-Tree包括:所述MO-Tree每一层对应一个索引属性,订阅和事件存储在叶节点中。
优选地,所述步骤M3包括:
步骤M3.1:在执行订阅匹配时,对于每个索引属性,确定与当前索引属性上定义的区间谓词相交的用于索引事件属性值的单元格,当订阅在索引属性上没有相应的区间谓词,则将搜索当前索引属性的所有单元格,在获得所有索引属性的相交单元格后,通过深度优化搜索方法确定需要检查的MO-Tree叶子节点;检查MO-Tree叶子节点中每个未过期的事件以确定当前事件是否满足订阅中的所有谓词,当检查出MO-Tree叶子节点中存在过期的事件,则将过期的事件从MO-Tree叶子节点中删除;
步骤M3.2:在执行事件匹配时,对于事件中索引属性的值,确定与当前索引属性的值相交的用于索引谓词的所有单元格;当一个事件中不包含某个索引属性,则搜索覆盖索引属性整个值域宽度的单元格。
优选地,还包括:
事件插入步骤:基于每个索引属性的映射单元,确定目标叶子节点,插入一个新的事件;
订阅插入步骤:当订阅在索引属性上没有定义区间谓词,则将订阅映射到覆盖整个值域宽度的单元格中;
订阅删除步骤:在确定目标叶子节点后,将遍历叶子节点中存储的所有订阅以找到要删除的订阅;
订阅更新步骤:当订阅更新没有改变订阅存储的叶子节点,则直接更新订阅;当订阅更新改变了订阅存储的叶子结点,则执行订阅删除和订阅插入步骤。
优选地,所述事件插入步骤包括:对于事件中定义值的每个索引属性,定义值将映射到包含当前定义值的单元格;当事件不包含索引属性,则将事件映射到专用的空单元格;基于每个索引属性的映射单元,则确定将事件插入到的目标叶子结点。
根据本发明提供的一种面向时空感知发布/订阅系统的匹配系统,包括:
模块M1:选择符合预设条件的且分布均匀的属性作为索引属性,对索引属性的值域进行混合划分,实现订阅中区域谓词和事件属性值到划分单元的映射;
模块M2:通过级联多个进行混合划分的索引属性构造MO-Tree,实现订阅和事件到MO-Tree中叶子节点的映射;
模块M3:根据索引属性值,基于MO-Tree实现订阅匹配和事件匹配;
所述索引属性的值域进行混合划分包括将索引属性的值域分别划分为不相交的单元格和多级重叠的单元格。
优选地,所述模块M1包括:
模块M1.1:将属性的值域均匀地划分为一定数量的不相交单元格,实现事件属性值与单元格的一对一映射;
模块M1.2:在多级重叠式划分方案中,将值域划分为单元格数量逐级减少,单元格间的重叠宽度逐级增大的多级重叠式划分,多级单元重叠结构处理不同宽度的区间谓词,实现区间谓词与完全包含区间谓词的最小单元格的一对一映射;
所述多级重叠划分包括相同级别的相邻两个单元格的重叠划分和不同级别的单元格的重叠划分;多级重叠式划分实现了从具有不同宽度和中心的区域谓词到单元格的一对一映射;
所述模块M1.2包括:
模块M1.2.1:设置级别数量L,每一级中单元格的数量为ci=L-i+1,则第i级中两个相邻单元格之间的重叠宽度其中,wi表示每一级单元格的宽度;
模块M1.2.2:当区间谓词的宽度遵循齐夫分布,将区间谓词均匀地存储在L级的单元格中,则第i级中存储的区间谓词的理想宽度ti满足
模块M1.2.3:第i级中单元格宽度wi的最大取值最小取值/>
模块M1.2.4:设ρi表示在第i级中与属性值相交的单元格数量,则:
其中,z表示属性值变量,Pe(z)表示事件中属性值的概率密度函数,ki(z)表示第i级中包含属性值z的单元格数量;当Pe(z)符合均匀分布时,则ρi=ci*wi;
模块M1.2.5:设γi表示在第i级成功索引目标范围中区间谓词的比例,ri(x)表示在第i级索引宽度为x的成功率:
其中,Pl(y|x)表示区间谓词的低值为y,宽度为x的区间谓词的概率密度函数,bi(y,x)表示区间谓词的低值为y,宽度为x的区间谓词是否存储在第i级的某个单元格中;1表示存储在第i级的单元格中,0表示没有存储在第i级的单元格中;
其中,j表示第i级中的单元格,j=0,1,…,ci-1;
当Pl(y|x)符合均匀分布时,在第i级索引宽度x的成功率
其中,ti表示第i级中存储的区间谓词的理想宽度,Pw(x)表示区间谓词宽度的概率密度函数;γi表示第i级成功索引目标范围中区间谓词的比例;
模块M1.2.6:根据每个级别的区间谓词的理想宽度ti,优化每一级中单元格宽度,满足在事件匹配时与属性值相交的单元格数量不超过给定阈值η,每一级单元格宽度的最大化公式如下:
其中,λ是拉格朗日乘子;
每一级i中单元格宽度的最优解为:
其中,和/>分别表示求wi和λ的偏导数。
与现有技术相比,本发明具有如下的有益效果:
1、本发明解决方案完整性:事件和订阅都可以在MO-Tree中进行索引;
2、高匹配性能:MO-Tree在匹配速度方面非常高效;
3、出色的可维护性:在MO-Tree中维护事件或订阅的成本非常低;
4、本发明建立了一个理论模型来优化计算每个级别中重叠单元的宽度,以满足过滤效率的阈值。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明的属性值域混合划分方案图;
图2为本发明的MO-Tree数据结构图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
对于时空感知的大规模发布/订阅系统,设计高效的转发引擎以支持高吞吐量事件匹配、订阅匹配、事件和订阅维护至关重要。迄今为止,还没有解决方案能够在这些操作上都取得高效的性能。本专利提出了一种新颖的数据结构MO-Tree,该数据结构以统一的方式对订阅和事件进行索引,旨在在订阅和事件的匹配和维护操作上实现较高的整体性能。MO-Tree的设计理念是保持数据结构的简洁,这包括限制MO-Tree的高度,通过牺牲一定的空间来提升时间性能以及在数据结构中避免节点的合并和拆分。设计MO-Tree的挑战在于如何有效地索引由不同宽度的区间谓词组成的订阅。通过将属性的值域划分为多级重叠单元格,本发明提出了一种混合分区方案。
实施例1
根据本发明提供的一种面向时空感知发布/订阅系统的匹配方法,包括:
步骤M1:选择符合预设条件的且分布均匀的属性作为索引属性,对索引属性的值域进行混合划分,实现订阅中区域谓词和事件属性值到划分单元的映射;
步骤M2:通过级联多个进行混合划分的索引属性构造MO-Tree,实现订阅和事件到MO-Tree中叶子节点的映射;
步骤M3:根据索引属性值,基于MO-Tree实现订阅匹配和事件匹配;
所述索引属性的值域进行混合划分包括将索引属性的值域分别划分为不相交的单元格和多级重叠的单元格。
具体地,所述步骤M1包括:
步骤M1.1:将属性的值域均匀地划分为一定数量的不相交单元格,实现事件属性值与单元格的一对一映射;
步骤M1.2:在多级重叠式划分方案中,将值域划分为单元格数量逐级减少,单元格间的重叠宽度逐级增大的多级重叠式划分,多级单元重叠结构处理不同宽度的区间谓词,实现区间谓词与完全包含区间谓词的最小单元格的一对一映射;
所述多级重叠划分包括相同级别的相邻两个单元格的重叠划分和不同级别的单元格的重叠划分;多级重叠式划分实现了从具有不同宽度和中心的区域谓词到单元格的一对一映射。
具体地,所述步骤M1.2包括:
步骤M1.2.1:设置级别数量L,每一级中单元格的数量为ci=L-i+1,则第i级中两个相邻单元格之间的重叠宽度其中,wi表示每一级单元格的宽度;
步骤M1.2.2:当区间谓词的宽度遵循齐夫分布,将区间谓词均匀地存储在L级的单元格中,则第i级中存储的区间谓词的理想宽度ti满足
步骤M1.2.3:第i级中单元格宽度wi的最大取值最小取值/>
步骤M1.2.4:设ρi表示在第i级中与属性值相交的单元格数量,则:
其中,z表示属性值变量,Pe(z)表示事件中属性值的概率密度函数,ki(z)表示第i级中包含属性值z的单元格数量;当Pe(z)符合均匀分布时,则ρi=ci*wi;
步骤M1.2.5:设γi表示在第i级成功索引目标范围中区间谓词的比例,ri(x)表示在第i级索引宽度为x的成功率:
其中,Pl(y|x)表示区间谓词的低值为y,宽度为x的区间谓词的概率密度函数,bi(y,x)表示区间谓词的低值为y,宽度为x的区间谓词是否存储在第i级的某个单元格中;1表示存储在第i级的单元格中,0表示没有存储在第i级的单元格中;
其中,j表示第i级中的单元格,j=0,1,…,ci-1;
当Pl(y|x)符合均匀分布时,在第i级索引宽度x的成功率
其中,ti表示第i级中存储的区间谓词的理想宽度,Pw(x)表示区间谓词宽度的概率密度函数;γi表示第i级成功索引目标范围中区间谓词的比例;
步骤M1.2.6:根据每个级别的区间谓词的理想宽度ti,优化每一级中单元格宽度,满足在事件匹配时与属性值相交的单元格数量不超过给定阈值η,每一级单元格宽度的最大化公式如下:
其中,λ是拉格朗日乘子;
每一级i中单元格宽度的最优解为:
其中,和/>分别表示求wi和λ的偏导数。
具体地,所述多级重叠式划分单元格包括覆盖整个值域宽度的单元格,覆盖整个值域宽度的单元格用于存储最大宽度的区间谓词,并用于解决订阅中不包含在索引属性上定义的谓词。
具体地,所述步骤M2中MO-Tree包括:所述MO-Tree每一层对应一个索引属性,订阅和事件存储在叶节点中。
具体地,所述步骤M3包括:
步骤M3.1:在执行订阅匹配时,对于每个索引属性,确定与当前索引属性上定义的区间谓词相交的用于索引事件属性值的单元格,当订阅在索引属性上没有相应的区间谓词,则将搜索当前索引属性的所有单元格,在获得所有索引属性的相交单元格后,通过深度优化搜索方法确定需要检查的MO-Tree叶子节点;检查MO-Tree叶子节点中每个未过期的事件以确定当前事件是否满足订阅中的所有谓词,当检查出MO-Tree叶子节点中存在过期的事件,则将过期的事件从MO-Tree叶子节点中删除;
步骤M3.2:在执行事件匹配时,对于事件中索引属性的值,确定与当前索引属性的值相交的用于索引谓词的所有单元格;当一个事件中不包含某个索引属性,则搜索覆盖索引属性整个值域宽度的单元格。
具体地,还包括:
事件插入步骤:基于每个索引属性的映射单元,确定目标叶子节点,插入一个新的事件;
订阅插入步骤:当订阅在索引属性上没有定义区间谓词,则将订阅映射到覆盖整个值域宽度的单元格中;
订阅删除步骤:在确定目标叶子节点后,将遍历叶子节点中存储的所有订阅以找到要删除的订阅;
订阅更新步骤:当订阅更新没有改变订阅存储的叶子节点,则直接更新订阅;当订阅更新改变了订阅存储的叶子结点,则执行订阅删除和订阅插入步骤。
具体地,所述事件插入步骤包括:对于事件中定义值的每个索引属性,定义值将映射到包含当前定义值的单元格;当事件不包含索引属性,则将事件映射到专用的空单元格;基于每个索引属性的映射单元,则确定将事件插入到的目标叶子结点。
根据本发明提供的一种面向时空感知发布/订阅系统的匹配系统,包括:
模块M1:选择符合预设条件的且分布均匀的属性作为索引属性,对索引属性的值域进行混合划分,实现订阅中区域谓词和事件属性值到划分单元的映射;
模块M2:通过级联多个进行混合划分的索引属性构造MO-Tree,实现订阅和事件到MO-Tree中叶子节点的映射;
模块M3:根据索引属性值,基于MO-Tree实现订阅匹配和事件匹配;
所述索引属性的值域进行混合划分包括将索引属性的值域分别划分为不相交的单元格和多级重叠的单元格。
具体地,所述模块M1包括:
模块M1.1:将属性的值域均匀地划分为一定数量的不相交单元格,实现事件属性值与单元格的一对一映射;
模块M1.2:在多级重叠式划分方案中,将值域划分为单元格数量逐级减少,单元格间的重叠宽度逐级增大的多级重叠式划分,多级单元重叠结构处理不同宽度的区间谓词,实现区间谓词与完全包含区间谓词的最小单元格的一对一映射;
所述多级重叠划分包括相同级别的相邻两个单元格的重叠划分和不同级别的单元格的重叠划分;多级重叠式划分实现了从具有不同宽度和中心的区域谓词到单元格的一对一映射。
具体地,所述模块M1.2包括:
模块M1.2.1:设置级别数量L,每一级中单元格的数量为ci=L-i+1,则第i级中两个相邻单元格之间的重叠宽度其中,wi表示每一级单元格的宽度;
模块M1.2.2:当区间谓词的宽度遵循齐夫分布,将区间谓词均匀地存储在L级的单元格中,则第i级中存储的区间谓词的理想宽度ti满足
模块M1.2.3:第i级中单元格宽度wi的最大取值最小取值/>
模块M1.2.4:设ρi表示在第i级中与属性值相交的单元格数量,则:
其中,z表示属性值变量,Pe(z)表示事件中属性值的概率密度函数,ki(z)表示第i级中包含属性值z的单元格数量;当Pe(z)符合均匀分布时,则ρi=ci*wi;
模块M1.2.5:设γi表示在第i级成功索引目标范围中区间谓词的比例,ri(x)表示在第i级索引宽度为x的成功率:
其中,Pl(y|x)表示区间谓词的低值为y,宽度为x的区间谓词的概率密度函数,bi(y,x)表示区间谓词的低值为y,宽度为x的区间谓词是否存储在第i级的某个单元格中;1表示存储在第i级的单元格中,0表示没有存储在第i级的单元格中;
其中,j表示第i级中的单元格,j=0,1,…,ci-1;
当Pl(y|x)符合均匀分布时,在第i级索引宽度x的成功率
其中,ti表示第i级中存储的区间谓词的理想宽度,Pw(x)表示区间谓词宽度的概率密度函数;γi表示第i级成功索引目标范围中区间谓词的比例;
模块M1.2.6:根据每个级别的区间谓词的理想宽度ti,优化每一级中单元格宽度,满足在事件匹配时与属性值相交的单元格数量不超过给定阈值η,每一级单元格宽度的最大化公式如下:
其中,λ是拉格朗日乘子;
每一级i中单元格宽度的最优解为:
其中,和/>分别表示求wi和λ的偏导数。
具体地,所述多级重叠式划分单元格包括覆盖整个值域宽度的单元格,覆盖整个值域宽度的单元格用于存储最大宽度的区间谓词,并用于解决订阅中不包含在索引属性上定义的谓词。
具体地,所述模块M2中MO-Tree包括:所述MO-Tree每一层对应一个索引属性,订阅和事件存储在叶节点中。
具体地,所述模块M3包括:
模块M3.1:在执行订阅匹配时,对于每个索引属性,确定与当前索引属性上定义的区间谓词相交的用于索引事件属性值的单元格,当订阅在索引属性上没有相应的区间谓词,则将搜索当前索引属性的所有单元格,在获得所有索引属性的相交单元格后,通过深度优化搜索方法确定需要检查的MO-Tree叶子节点;检查MO-Tree叶子节点中每个未过期的事件以确定当前事件是否满足订阅中的所有谓词,当检查出MO-Tree叶子节点中存在过期的事件,则将过期的事件从MO-Tree叶子节点中删除;
模块M3.2:在执行事件匹配时,对于事件中索引属性的值,确定与当前索引属性的值相交的用于索引谓词的所有单元格;当一个事件中不包含某个索引属性,则搜索覆盖索引属性整个值域宽度的单元格。
具体地,还包括:
事件插入模块:基于每个索引属性的映射单元,确定目标叶子节点,插入一个新的事件;
订阅插入模块:当订阅在索引属性上没有定义区间谓词,则将订阅映射到覆盖整个值域宽度的单元格中;
订阅删除模块:在确定目标叶子节点后,将遍历叶子节点中存储的所有订阅以找到要删除的订阅;
订阅更新模块:当订阅更新没有改变订阅存储的叶子节点,则直接更新订阅;当订阅更新改变了订阅存储的叶子结点,则执行订阅删除和订阅插入模块。
具体地,所述事件插入模块包括:对于事件中定义值的每个索引属性,定义值将映射到包含当前定义值的单元格;当事件不包含索引属性,则将事件映射到专用的空单元格;基于每个索引属性的映射单元,则确定将事件插入到的目标叶子结点。
实施例2
实施例2是实施例1的变化例
MO-Tree数据结构构建过程:
1、索引属性的混合划分
选取热门的、具有较高选择度并且分布均匀的属性作为索引属性,对索引属性的值域进行多级重叠式划分,实现订阅中区域谓词和事件属性值到划分单元的映射。选定索引属性,需要设计一种方案来划分属性的值域,以便以统一的方式对事件的单个值和订阅的区间谓词进行索引。为此,本发明提出了一种属性值域的混合划分方案,该方案将属性的值域划分为不相交的单元格和多级重叠的单元格,分别用于索引单个值和区间谓词,如图1所示。图1中表示用于索引事件属性值的不相交单元格;/>表示用于索引订阅区间谓词的重叠单元格;A表示事件中属性A的可能取值。
(1)索引属性值的不相交划分:将属性的值域均匀地划分为一定数量的不相交单元格(单元格数是一个参数)。然后,可以容易地在属性值和单元格之间进行一对一映射。这种划分方案避免了在维护过程中进行节点分裂和合并以提高维护性能,因为通过拆分或合并来重新平衡树的代价是昂贵的,这可能会严重影响匹配操作的吞吐量。
(2)索引区间谓词的多级重叠式划分:对订阅中的区间谓词的索引更为复杂,因为区间可能具有不同的宽度和中心,挑战在于需要一种将值域划分为一定数量的单元格并在区间谓词和单元格之间建立一对一映射规则的方法。为了索引不同宽度的间隔,本专利提出了一种多级重叠划分方案,以将值域划分为单元格。在多个级别中,从上到下,单元的数量逐级增加,而重叠单元的宽度逐级减小。具体来说,最顶层仅包含一个覆盖整个值域宽度的单元格,该单元格用于存储较大宽度的区间谓词,并用于解决订阅中不包含在索引属性上定义的谓词的情况。这种多级单元重叠结构处理不同宽度的区间,并将区间映射到最合适的单元,该单元是完全包含该区间的最小单元。在一个级别上,如果一个区间谓词可以由几个相邻的重叠单元包含,则将其映射到其中心距离该区间的中心最近的单元。
因为用户在索引属性上定义的区域谓词的宽度和中心不同,因此无法采用划分一定数量的不重叠单元格来实现区域谓词到单元格之间的一对一映射,因为有的区域谓词可能横跨两个或多个单元格。多级重叠式方法可以划分出具有不同宽度的单元格,当索引一个区域谓词时,总会有一个单元格能完全包含该区域谓词,当存在多个时,只需要将区域谓词映射到完全包含该区域的最小单元格,从而实现一对一映射。
属性值域的重叠划分有两个含义。首先,相同级别的两个相邻单元彼此重叠。其次,两个不同级别的单元也可能重叠。通过构造多级重叠单元,本专利实现了从具有不同宽度和中心的区间谓词到单元的一对一映射。
用于区间索引的多级重叠划分的关键涉及确定三个参数,即级别的数量L,每一级中的单元格数量ci和每一级中单元格的宽度wi。这些参数之间需要权衡。通常,为了获得良好的过滤效果,级别的数量和单元的宽度不应太高,以限制与属性值相交的单元格数量。在给定L和每一级中单元格数量ci的情况下,本专利建立一个优化模型来计算wi,满足与属性值相交的单元的数量不大于给定阈值η。
给定级别数量L,设每一级中单元格的数量为ci=L-i+1,则第i级中两个相邻单元格之间的重叠宽度oi是
假设区间谓词的宽度遵循齐夫分布,以将谓词均匀地存储在L级的单元格中,则第i级中存储的区间谓词的理想宽度ti应该满足
第i级中单元格宽度wi的最大取值最小取值/>
设ρi表示在第i级中与属性值相交的单元格数量,则其中,z表示属性值变量,Pe(z)表示事件中属性值的概率密度函数,ki(z)表示第i级中包含属性值z的单元格数量。如果Pe(z)符合均匀分布,则ρi=ci*wi;
设γi表示在第i级成功索引目标范围中区间谓词的比例,ri(x)表示在第i级索引宽度为x的成功率,则其中Pl(y|x)表示低值为y宽度为x的区间谓词的概率密度函数,bi(y,x)表示低值为y宽度为x的区间谓词是否可以存储在第i级的某个单元格中
其中j表示第i级中的某个单元格,j=0,1,…,ci-1;
当Pl(y|x)符合均匀分布时,在第i级索引宽度为x的成功率
给定ri(x),其中,ti表示第i级中存储的区间谓词的理想宽度,Pw(x)表示区间谓词宽度的概率密度函数;
其中,γi表示在第i级成功索引目标范围中区间谓词的比例,例如第一级重叠单元格索引的目标范围是0-0.25之间的区域谓词,假设有100个宽度小0.25的区域谓词,第一级成功索引80个,则γi为80%,因为其它20%的区域谓词虽然它们的宽度小0.25,但在第一级不存在能够完全覆盖它们的单元,因此这20%的区域谓词索引到更高级的单元格中。
由于每个级别的区间谓词的理想宽度ti已确定,因此优化每一级中单元格宽度的问题等价于在每个级别中拦截尽可能多的谓词,并满足在事件匹配时与属性值相交的单元格数量不超过给定阈值η;因此目标函数可转化为最大化
其中,λ是拉格朗日乘子,每一级i中单元格宽度的最优解为
其中,和/>分别表示求wi和λ的偏导数。
多个索引属性的级联
通过级联多个进行混合划分的索引属性来构造MO-Tree,实现订阅和事件到MO-Tree中叶子结点的映射。在MO-Tree中,每一层都对应一个索引属性。基于图1中所示的混合划分方案,在图2中通过级联两个索引属性A1和A2来构建一个两层MO-Tree。图2中表示用来存储订阅的第一个叶子节点;/>表示用来存储事件的第一个叶子节点;对于每个索引属性,划分9个不相交的单元格来索引事件值,其中/>专门用于处理事件中不包含索引属性的情况。同时,在3个级上划分11个重叠的单元格来索引区间谓词。因此,这棵两层的MO-Tree中共有81个和121个存储桶分别用于存储事件和订阅。订阅和事件不会混在一个桶中。
每个索引属性的值域划分为8个不相交的单元格,此外还有一个特殊的单元格用于处理事件可能不包含索引属性,因此共9个单元格,两个索引属性级联形成的MO-Tree共有9*9=81个叶子节点(桶)用来存储事件。每个索引索引的3级划分共产生11个单元,两个索引属性级联形成11*11=121个叶子节点。
叶子节点(也称为桶bucket)是用来存储事件或订阅的。对于每一个索引属性,事件中对应的属性值会映射到一个单元,确定所有索引属性上映射的单元格就确定了存储事件的叶子节点。对于订阅也是同样的。
订阅匹配
MO-Tree通过对订阅和事件存储来支持高效的匹配和维护操作。
匹配的过滤阶段:在执行订阅匹配时,对于每个索引属性,首先确定与该属性上定义的区间谓词相交的用于索引事件属性值的单元格。如果订阅在某个索引属性上没有定义区间谓词,则将搜索该属性的所有单元格。在获得所有索引属性的相交单元格后,可以通过深度优先搜索(DFS)方法确定需要检查的目标桶。
匹配的验证步骤:检查目标桶中每个未过期的事件以确定该事件是否满足订阅中的所有谓词。在验证过程中,每个过期的事件都会从目标桶中顺带删除。
事件匹配
事件匹配和订阅匹配有两点不同。首先,给定事件中索引属性的值,确定与该值相交的用于索引谓词的所有单元格。其次,如果一个事件中不包含某个索引属性,那么将添加包含整个值域的最后一个单元格。
事件插入与删除
插入一个新的事件时,第一步是确定目标存储桶。对于事件中定义值的每个索引属性,该值将映射到包含它的单元格。如果事件不包含某个索引属性,则将其映射到专用的空单元格。基于每个索引属性的映射单元,则确定将事件插入到的目标存储桶。
不需要对MO-Tree中的过期事件进行专门的删除,该删除是在订阅匹配期间完成的。订阅匹配和事件删除之间的这种编排通过在一系列订阅匹配操作中分摊过期事件的删除成本,可以有效缓解事件删除操作对匹配吞吐量的影响。
订阅插入、删除和更新
插入一个新的订阅的过程类似于事件的插入,但存在两点不同。首先,将区间谓词映射到单元格比映射属性值到单元格的开销更大,因为映射的过程中需要确定包含区间谓词的最小单元格。其次,如果订阅在某个索引属性上没有定义区间谓词,则将订阅映射到覆盖索引属性整个值域的单元格。
由于未对存储在每个存储桶中的订阅进行排序,因此删除将比插入要花费更多的时间,但是操作的处理步骤相似。在确定目标存储桶后,将遍历存储桶中存储的所有订阅以找到要删除的订阅。
更新订阅时需要区分两种情况。如果订阅更新没有改变其存储的桶,可以直接更新订阅,比删除订阅花费的时间少一些。否则,订阅更新过程等效于删除和插入的组合。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (8)
1.一种面向时空感知发布/订阅系统的匹配方法,其特征在于,包括:
步骤M1:选择符合预设条件的且分布均匀的属性作为索引属性,对索引属性的值域进行混合划分,实现订阅中区域谓词和事件属性值到划分单元的映射;
步骤M2:通过级联多个进行混合划分的索引属性构造MO-Tree,实现订阅和事件到MO-Tree中叶子节点的映射;
步骤M3:根据索引属性值,基于MO-Tree实现订阅匹配和事件匹配;
所述索引属性的值域进行混合划分包括将索引属性的值域分别划分为不相交的单元格和多级重叠的单元格;
所述步骤M1包括:
步骤M1.1:将属性的值域均匀地划分为一定数量的不相交单元格,实现事件属性值与单元格的一对一映射;
步骤M1.2:在多级重叠式划分方案中,将值域划分为单元格数量逐级减少,单元格间的重叠宽度逐级增大的多级重叠式划分,多级单元重叠结构处理不同宽度的区间谓词,实现区间谓词与完全包含区间谓词的最小单元格的一对一映射;
所述多级重叠划分包括相同级别的相邻两个单元格的重叠划分和不同级别的单元格的重叠划分;多级重叠式划分实现了从具有不同宽度和中心的区域谓词到单元格的一对一映射;
所述步骤M1.2包括:
步骤M1.2.1:设置级别数量L,每一级中单元格的数量为ci=L-i+1,则第i级中两个相邻单元格之间的重叠宽度其中,wi表示每一级单元格的宽度;
步骤M1.2.2:当区间谓词的宽度遵循齐夫分布,将区间谓词均匀地存储在L级的单元格中,则第i级中存储的区间谓词的理想宽度ti满足
步骤M1.2.3:第i级中单元格宽度wi的最大取值最小取值/>
步骤M1.2.4:设ρi表示在第i级中与属性值相交的单元格数量,则:
其中,z表示属性值变量,Pe(z)表示事件中属性值的概率密度函数,ki(z)表示第i级中包含属性值z的单元格数量;当Pe(z)符合均匀分布时,则ρi=ci*wi;
步骤M1.2.5:设γi表示在第i级成功索引目标范围中区间谓词的比例,ri(x)表示在第i级索引宽度为x的成功率:
其中,Pl(y|x)表示区间谓词的低值为y,宽度为x的区间谓词的概率密度函数,bi(y,x)表示区间谓词的低值为y,宽度为x的区间谓词是否存储在第i级的某个单元格中;1表示存储在第i级的单元格中,0表示没有存储在第i级的单元格中;
其中,j表示第i级中的单元格,j=0,1,…,ci-1;
当Pl(y|x)符合均匀分布时,在第i级索引宽度x的成功率
其中,ti表示第i级中存储的区间谓词的理想宽度,Pw(x)表示区间谓词宽度的概率密度函数;γi表示第i级成功索引目标范围中区间谓词的比例;
步骤M1.2.6:根据每个级别的区间谓词的理想宽度ti,优化每一级中单元格宽度,满足在事件匹配时与属性值相交的单元格数量不超过给定阈值η,每一级单元格宽度的最大化公式如下:
其中,λ是拉格朗日乘子;
每一级i中单元格宽度的最优解为:
其中,和/>分别表示求wi和λ的偏导数。
2.根据权利要求1所述的面向时空感知发布/订阅系统的匹配方法,其特征在于,所述多级重叠式划分单元格包括覆盖整个值域宽度的单元格,覆盖整个值域宽度的单元格用于存储最大宽度的区间谓词,并用于解决订阅中不包含在索引属性上定义的谓词。
3.根据权利要求1所述的面向时空感知发布/订阅系统的匹配方法,其特征在于,所述步骤M2中MO-Tree包括:所述MO-Tree每一层对应一个索引属性,订阅和事件存储在叶节点中。
4.根据权利要求1所述的面向时空感知发布/订阅系统的匹配方法,其特征在于,所述步骤M3包括:
步骤M3.1:在执行订阅匹配时,对于每个索引属性,确定与当前索引属性上定义的区间谓词相交的用于索引事件属性值的单元格,当订阅在索引属性上没有相应的区间谓词,则将搜索当前索引属性的所有单元格,在获得所有索引属性的相交单元格后,通过深度优化搜索方法确定需要检查的MO-Tree叶子节点;检查MO-Tree叶子节点中每个未过期的事件以确定当前事件是否满足订阅中的所有谓词,当检查出MO-Tree叶子节点中存在过期的事件,则将过期的事件从MO-Tree叶子节点中删除;
步骤M3.2:在执行事件匹配时,对于事件中索引属性的值,确定与当前索引属性的值相交的用于索引谓词的所有单元格;当一个事件中不包含某个索引属性,则搜索覆盖索引属性整个值域宽度的单元格。
5.根据权利要求1所述的面向时空感知发布/订阅系统的匹配方法,其特征在于,还包括:
事件插入步骤:基于每个索引属性的映射单元,确定目标叶子节点,插入一个新的事件;
订阅插入步骤:当订阅在索引属性上没有定义区间谓词,则将订阅映射到覆盖整个值域宽度的单元格中;
订阅删除步骤:在确定目标叶子节点后,将遍历叶子节点中存储的所有订阅以找到要删除的订阅;
订阅更新步骤:当订阅更新没有改变订阅存储的叶子节点,则直接更新订阅;当订阅更新改变了订阅存储的叶子结点,则执行订阅删除和订阅插入步骤。
6.根据权利要求5所述的面向时空感知发布/订阅系统的匹配方法,其特征在于,所述事件插入步骤包括:对于事件中定义值的每个索引属性,定义值将映射到包含当前定义值的单元格;当事件不包含索引属性,则将事件映射到专用的空单元格;基于每个索引属性的映射单元,则确定将事件插入到的目标叶子结点。
7.一种面向时空感知发布/订阅系统的匹配系统,其特征在于,运用权利要求1至6任意一项权利要求所述的面向时空感知发布/订阅系统的匹配方法实现包括:
模块M1:选择符合预设条件的且分布均匀的属性作为索引属性,对索引属性的值域进行混合划分,实现订阅中区域谓词和事件属性值到划分单元的映射;
模块M2:通过级联多个进行混合划分的索引属性构造MO-Tree,实现订阅和事件到MO-Tree中叶子节点的映射;
模块M3:根据索引属性值,基于MO-Tree实现订阅匹配和事件匹配;
所述索引属性的值域进行混合划分包括将索引属性的值域分别划分为不相交的单元格和多级重叠的单元格。
8.根据权利要求7所述的面向时空感知发布/订阅系统的匹配系统,其特征在于,所述模块M1包括:
模块M1.1:将属性的值域均匀地划分为一定数量的不相交单元格,实现事件属性值与单元格的一对一映射;
模块M1.2:在多级重叠式划分方案中,将值域划分为单元格数量逐级减少,单元格间的重叠宽度逐级增大的多级重叠式划分,多级单元重叠结构处理不同宽度的区间谓词,实现区间谓词与完全包含区间谓词的最小单元格的一对一映射;
所述多级重叠划分包括相同级别的相邻两个单元格的重叠划分和不同级别的单元格的重叠划分;多级重叠式划分实现了从具有不同宽度和中心的区域谓词到单元格的一对一映射;
所述模块M1.2包括:
模块M1.2.1:设置级别数量L,每一级中单元格的数量为ci=L-i+1,则第i级中两个相邻单元格之间的重叠宽度其中,wi表示每一级单元格的宽度;
模块M1.2.2:当区间谓词的宽度遵循齐夫分布,将区间谓词均匀地存储在L级的单元格中,则第i级中存储的区间谓词的理想宽度ti满足
模块M1.2.3:第i级中单元格宽度wi的最大取值最小取值/>
模块M1.2.4:设ρi表示在第i级中与属性值相交的单元格数量,则:
其中,z表示属性值变量,Pe(z)表示事件中属性值的概率密度函数,ki(z)表示第i级中包含属性值z的单元格数量;当Pe(z)符合均匀分布时,则ρi=ci*wi;
模块M1.2.5:设γi表示在第i级成功索引目标范围中区间谓词的比例,ri(x)表示在第i级索引宽度为x的成功率:
其中,Pl(y|x)表示区间谓词的低值为y,宽度为x的区间谓词的概率密度函数,bi(y,x)表示区间谓词的低值为y,宽度为x的区间谓词是否存储在第i级的某个单元格中;1表示存储在第i级的单元格中,0表示没有存储在第i级的单元格中;
其中,j表示第i级中的单元格,j=0,1,…,ci-1;
当Pl(y|x)符合均匀分布时,在第i级索引宽度x的成功率
其中,ti表示第i级中存储的区间谓词的理想宽度,Pw(x)表示区间谓词宽度的概率密度函数;γi表示第i级成功索引目标范围中区间谓词的比例;
模块M1.2.6:根据每个级别的区间谓词的理想宽度ti,优化每一级中单元格宽度,满足在事件匹配时与属性值相交的单元格数量不超过给定阈值η,每一级单元格宽度的最大化公式如下:
其中,λ是拉格朗日乘子;
每一级i中单元格宽度的最优解为:
其中,和/>分别表示求wi和λ的偏导数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010813627.4A CN111949913B (zh) | 2020-08-12 | 2020-08-12 | 面向时空感知发布/订阅系统的高效匹配方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010813627.4A CN111949913B (zh) | 2020-08-12 | 2020-08-12 | 面向时空感知发布/订阅系统的高效匹配方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111949913A CN111949913A (zh) | 2020-11-17 |
CN111949913B true CN111949913B (zh) | 2024-04-09 |
Family
ID=73342202
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010813627.4A Active CN111949913B (zh) | 2020-08-12 | 2020-08-12 | 面向时空感知发布/订阅系统的高效匹配方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111949913B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102004798A (zh) * | 2010-12-27 | 2011-04-06 | 东北大学 | 一种基于复数单维索引的对称发布订阅系统匹配方法 |
CN105373633A (zh) * | 2015-12-23 | 2016-03-02 | 江苏省现代企业信息化应用支撑软件工程技术研发中心 | 位置感知订阅/发布系统的top-k订阅查询匹配方法 |
CN110413927A (zh) * | 2019-07-24 | 2019-11-05 | 上海交通大学 | 在发布订阅系统中基于匹配实时性的优化方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10642918B2 (en) * | 2013-03-15 | 2020-05-05 | University Of Florida Research Foundation, Incorporated | Efficient publish/subscribe systems |
-
2020
- 2020-08-12 CN CN202010813627.4A patent/CN111949913B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102004798A (zh) * | 2010-12-27 | 2011-04-06 | 东北大学 | 一种基于复数单维索引的对称发布订阅系统匹配方法 |
CN105373633A (zh) * | 2015-12-23 | 2016-03-02 | 江苏省现代企业信息化应用支撑软件工程技术研发中心 | 位置感知订阅/发布系统的top-k订阅查询匹配方法 |
CN110413927A (zh) * | 2019-07-24 | 2019-11-05 | 上海交通大学 | 在发布订阅系统中基于匹配实时性的优化方法及系统 |
Non-Patent Citations (1)
Title |
---|
基于订阅划分的多维索引并行匹配算法;邹志文;李桥;王政辉;费洪哲;;华中科技大学学报(自然科学版);20140110(第S2期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111949913A (zh) | 2020-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7213007B2 (en) | Method for forecasting using a genetic algorithm | |
CN103116639B (zh) | 基于用户-物品二分图模型的物品推荐方法及系统 | |
CN109255586B (zh) | 一种面向电子政务办事的在线个性化推荐方法 | |
US8903803B1 (en) | Horizontal interval-based data partitioning and indexing for large clusters | |
CN109726225B (zh) | 一种基于Storm的分布式流数据存储与查询方法 | |
CN103930888A (zh) | 基于更新、储存及响应约束的多粒度分组聚合选择 | |
CN108415964A (zh) | 数据表查询方法、装置、终端设备及存储介质 | |
CN112925821B (zh) | 基于MapReduce的并行频繁项集增量数据挖掘方法 | |
WO2012100349A1 (en) | Statistics forecast for range partitioned tables | |
CN105205052A (zh) | 一种数据挖掘方法及装置 | |
Aly et al. | Kangaroo: Workload-aware processing of range data and range queries in hadoop | |
CN115422205A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
Xu et al. | A graph partitioning algorithm for parallel agent-based road traffic simulation | |
Ben-Said et al. | Using decomposition-based multi-objective algorithm to solve Selective Pickup and Delivery Problems with Time Windows | |
Wang et al. | Time series clustering based on sparse subspace clustering algorithm and its application to daily box-office data analysis | |
Ding et al. | MO-Tree: an efficient forwarding engine for spatiotemporal-aware pub/sub systems | |
Rodríguez-Mazahua et al. | Horizontal partitioning of multimedia databases using hierarchical agglomerative clustering | |
US20060293945A1 (en) | Method and device for building and using table of reduced profiles of paragons and corresponding computer program | |
CN105956816A (zh) | 物资运输信息智能处理方法 | |
CN109299197A (zh) | 一种数据立方体的分区方法、系统及终端设备 | |
Gao et al. | Efficient algorithms for finding the most desirable skyline objects | |
CN111949913B (zh) | 面向时空感知发布/订阅系统的高效匹配方法及系统 | |
Aggarwal et al. | Spatio-temporal frequent itemset mining on web data | |
Shetiya et al. | A unified optimization algorithm for solving" regret-minimizing representative" problems | |
CN116680090A (zh) | 一种基于大数据的边缘计算网络管理方法及平台 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |