模式匹配装置、模式匹配方法和模式匹配系统技术领域
本发明涉及模式匹配装置、模式匹配方法和模式匹配系统,具体
涉及产生匹配树的模式匹配装置、模式匹配方法和模式匹配系统。
背景技术
关于模式匹配,已知多种相关技术。
作为相关技术的一个示例,专利文献1公开了一种处理事件的方
法和系统。专利文献1描述的处理事件的方法和系统包括基于从一个
以上事件消费者接收的一个以上订阅的过滤树(filter tree)。
并且,专利文献1描述的处理事件的方法和系统使用过滤树来比
较事件通知,并基于结果进行处理,将事件通知传送至的事件消费者
的范围缩小。
作为相关技术的另一示例,非专利文献1公开了一种发布/订阅
(publish/subscribe)系统中的事件匹配算法。非专利文献1中描述的
事件匹配算法是在产生事件时判定该事件与哪个订阅匹配的算法。
该算法由图50所示树结构的系统900实现。系统900包括节点
901和边904,并且表示用于判断事件是否与订阅匹配的条件。
节点901中的叶子节点903与订阅(sub1-sub3)907有关。
除叶子节点903之外的每个节点901被给予作为事件的构成要素
的属性名称905。
边904连接父节点901和子节点901,并且给予边904的属性值
906与给予父节点901的属性名称(attr1-attr3)905对应。
当某个事件输入系统900时,系统900首先查看输入的事件。然
后系统900获取与给予根节点902的属性名称905对应的属性值906。
在获取的属性值906与给予边904的属性值906中任一属性值906
匹配的情况下,系统900使子节点901和孙子节点901分别成为父节
点901和子节点901,并执行与上述类似的处理,其中所述边904连
接根节点902及其子节点901。
在这样重复执行上述处理,并最终达到叶子节点903的情况下,
系统90判定与叶子节点903有关的订阅907作为相关事件所匹配的订
阅907。
此外,在边904被给予*的情况下,无论输入事件的属性值906
如何,系统900均前进至对子节点901的处理。
作为具体示例,下面描述事件“ATTR1=V1′,ATTR2=V2,
ATTR3=V3′”输入到系统900的情况,如图50所示。
首先,系统900获取事件的与根节点902的属性名称905
“ATTR1”相对应的属性值906“V1′”。接着,系统900检测到其属
性值906“V1′”与给予边904的属性值906匹配的子节点901(其属
性名称905是“ATTR2”)。
接下来,系统900获取事件的与节点901的属性名称905
“ATTR2”相对应的属性值906“V2”。然后,系统900检测到其属性
值906“V2”与给予边904的属性值906匹配的子节点901(其属性
名称905是“ATTR3”)。
接下来,系统900获取事件的与节点901的属性名称905
“ATTR3”相对应的属性值906“V3′”。然后,系统900检测到属性
值906“V3′”与给予边904的任何属性值906均不匹配。系统900结
束处理。
即,在该示例中,无匹配的订阅907,退出。
[专利文献]
[专利文献1]日本专利申请特开No.2003-316610
[非专利文献]
[非专利文献1]M.K.AGUILERA,R.E.STROM,D.C.
STURMAN,M.ASTLEY,AND T.D.CHANDRA:″MATCHING
EVENTS IN A CONTENT-BASED SUBSCRIPTION SYSTEM,″IN
PROC.18TH ANNUAL ACM SYMPOSIUM ON PRINCIPLES OF
DISTRIBUTED COMPUTING,PP.53-61(1999).
发明内容
[本发明要解决的技术问题]
然而,在上述公开的技术中,存在这样的问题:用于例如事件等
的匹配判定的匹配树的结构可能不是最优的。
原因在于过滤树或树结构系统的构建没有考虑到事件与节点和边
的属性名称和属性值匹配的概率。
即,在过滤树或树结构系统构建为使得在根节点周围存在属性值
匹配的边,而在叶子节点周围不存在属性值匹配的边的情况下,在根
节点周围执行的属性值的匹配判定处理因此变得无用。此外,执行事
件不与订阅匹配的判定所需的时间变得较长。
本发明的目的是解决上述问题,并提供模式匹配装置、模式匹配
方法和模式匹配系统,其产生对于高效执行模式匹配判定而言最优的
事件模式匹配树。
[解决问题的手段]
本发明的模式匹配装置包括:事件模式表保持部,保持包括部分
事件模式的至少一个事件模式,所述部分事件模式包括第一属性名称
和属性值;第一匹配率测量部,基于包括属性的事件和事件模式表保
持部中保持的所述事件模式,测量与所述第一属性名称相对应的第一
匹配率,其中所述属性包括第二属性名称和属性值;以及事件模式匹
配树生成部,基于事件模式表保持部中保持的所述事件模式以及所述
第一匹配率,生成事件模式匹配树,所述事件模式匹配树将包括相应
匹配率相对较低的所述第一属性名称在内的属性值匹配判定实例排列
在相对较高级别。
本发明的模式匹配方法包括:基于包括属性的事件以及事件模式
表保持部中保持的包括部分事件模式的事件模式,测量与所述部分事
件模式中包括的第一属性名称相对应的匹配率,其中所述属性包括第
二属性名称和属性值,所述部分事件模式包括所述第一属性名称和属
性值;以及基于事件模式表保持部中保持的所述事件模式以及所述第
一匹配率,生成事件模式匹配树,所述事件模式匹配树将包括相应匹
配率相对较低的所述第一属性名称在内的属性值匹配判定实例排列在
相对较高级别。
本发明的介质中记录的程序,使计算机执行如下处理:基于包括
属性的事件以及事件模式表保持部中保持的包括部分事件模式的事件
模式,测量与所述部分事件模式中包括的第一属性名称相对应的匹配
率,其中所述属性包括第二属性名称和属性值,所述部分事件模式包
括所述第一属性名称和属性值;以及
基于事件模式表保持部中保持的所述事件模式以及所述第一匹配
率,生成事件模式匹配树,所述事件模式匹配树将包括相应匹配率相
对较低的所述第一属性名称在内的属性值匹配判定实例排列在相对较
高级别。
本发明的模式匹配系统包括:事件模式表保持部,保持包括部分
事件模式的至少一个事件模式,所述部分事件模式包括第一属性名称
和属性值;第一匹配率测量部,基于包括属性的事件和事件模式表保
持部中保持的所述事件模式,测量与所述第一属性名称相对应的第一
匹配率,其中所述属性包括第二属性名称和属性值;以及事件模式匹
配树生成部,基于事件模式表保持部中保持的所述事件模式以及所述
第一匹配率,生成事件模式匹配树,所述事件模式匹配树将包括相应
匹配率相对较低的所述第一属性名称在内的属性值匹配判定实例排列
在相对较高级别。
[本发明的效果]
本发明的效果在于能够产生对于高效执行模式匹配判定而言最优
的事件模式匹配树。
附图说明
图1是示出了本发明第一示例实施例的结构的框图。
图2是示出了本发明第一到第五示例实施例中事件的结构和内容
示例的图。
图3是示出了本发明第一到第五示例实施例中事件模式的结构和
内容示例的图。
图4是示出了本发明第一到第四示例实施例中事件模式登记请求
的结构和内容示例的图。
图5是示出了本发明第一到第四示例实施例中事件模式登记请求
的结构和内容示例的图。
图6是示出了本发明第一到第四示例实施例中事件模式删除请求
的结构和内容示例的图。
图7是示出了本发明第一到第四示例实施例中事件模式删除请求
的结构和内容示例的图。
图8是示出了本发明第一到第五示例实施例中事件模式匹配树的
结构的图。
图9是示出了本发明第一到第五示例实施例中属性值匹配判定实
例的结构的图。
图10是示出了本发明第一到第五示例实施例中哈希表的结构的
图。
图11是示出了本发明第一到第五示例实施例中事件通知实例的
结构的图。
图12是示出了本发明第一、第三和第五示例实施例中匹配率测量
表的结构的图。
图13是示出了本发明第一到第五示例实施例中事件模式表的结
构和内容示例的图。
图14是示出了本发明第一示例实施例中事件匹配操作的流程图。
图15是示出了本发明第一示例实施例中事件匹配操作的流程图。
图16是示出了本发明第一示例实施例中事件匹配操作的流程图。
图17是示出了本发明第一示例实施例中事件匹配操作的流程图。
图18是示出了本发明第一示例实施例中事件匹配操作的流程图。
图19是示出了本发明第一示例实施例中事件模式匹配树141的组
织和重组操作的流程图。
图20是示出了本发明第一示例实施例中事件模式匹配树141的组
织和重组操作的流程图。
图21是示出了本发明第一示例实施例中事件模式匹配树141的组
织和重组操作的流程图。
图22是示出了本发明第一到第五示例实施例中事件模式匹配树
示例的图。
图23是示出了本发明第一示例实施例中匹配率测量表示例的图。
图24是示出了本发明第一示例实施例中匹配率测量表示例的图。
图25是示出了本发明第一示例实施例中事件模式匹配树示例的
图。
图26是示出了本发明第一示例实施例中事件模式匹配树示例的
图。
图27是示出了本发明第一示例实施例中事件模式匹配树示例的
图。
图28是示出了本发明第一示例实施例中事件模式匹配树示例的
图。
图29是示出了本发明第二示例实施例的结构的框图。
图30是示出了本发明第二和第三示例实施例中匹配率测量表的
结构和内容示例的图。
图31是示出了本发明第二和第三示例实施例中匹配率测量表示
例的图。
图32是示出了本发明第二示例实施例中事件模式登记操作的流
程图。
图33是示出了本发明第二示例实施例中事件模式删除操作的流
程图。
图34是示出了本发明第二示例实施例中所参考的实例是属性值
匹配判定实例的情况下属性匹配判定操作的流程图。
图35是示出了本发明第二示例实施例中更新与每个属性名称相
对应的匹配率的操作的流程图。
图36是示出了第一示例实施例中事件模式匹配树以及与每个属
性名称相对应的匹配率的示例的图,用于描述本发明第二示例实施例
的效果。
图37是示出了第一示例实施例中事件模式匹配树以及与每个属
性名称相对应的匹配率的示例的图,用于描述本发明第二示例实施例
的效果。
图38是示出了本发明第三示例实施例的结构的框图。
图39是示出了本发明第三示例实施例中请求事件模式匹配树的
重组(reorganization)的操作的流程图。
图40是示出了本发明第三示例实施例中匹配率测量部从树重组
管理部接收匹配率测量开始请求的情况下操作的流程图。
图41是示出了本发明第三示例实施例中匹配率测量部从树重组
管理部接收匹配率测量结束请求的情况下操作的流程图。
图42是示出了本发明第三示例实施例中事件接收部从匹配率测
量部接收事件传输开始请求的情况下操作的流程图。
图43是示出了本发明第三示例实施例中事件接收部从匹配率测
量部接收事件传输结束请求的情况下操作的流程图。
图44是示出了本发明第三示例实施例中事件接收时的操作的流
程图。
图45是示出了本发明第三示例实施例中匹配率测量表的示例的
图。
图46是示出了本发明第四示例实施例的结构的框图。
图47是示出了本发明第四示例实施例中树重组管理部请求事件
模式匹配树的重组的操作的流程图。
图48是示出了本发明第四示例实施例中树根属性匹配率测量部
更新匹配率测量表131的操作的流程图。
图49是示出了本发明第五示例实施例的结构的框图。
图50是示出了背景技术中非专利文献1的系统构思的图。
图51是示出了使用本发明的计算机设备的示例实施例的结构框
图。
具体实施方式
下面参照附图详细描述本发明的示例实施例。
[第一示例实施例]
图1是示出了本发明第一示例实施例的结构的框图。
参照图1,该示例实施例包括事件模式匹配判定系统(也称为模
式匹配系统)100、事件输入操作方820、事件接收方830和事件模式
管理方840。
事件模式匹配判定系统100包括:事件模式匹配判定部110、事
件模式匹配树生成部120、树相关匹配率测量部(也称为匹配率测量
部)130、事件模式匹配树保持部140、事件模式表保持部150以及事
件模式接收部160。
事件输入操作方820、事件接收方830和事件模式管理方840分
别是人(事件输入操作员、事件接收者或事件模式管理员)操作的终
端。此外,它们可以是根据预先给予的指示进行操作的终端、服务器
等。
图2是示出了事件500的结构和内容的示例图。事件500是诸如
便携式终端、RF(射频)标签和传感器等生成的数据。
例如,事件500是包括对便携式终端进行标识的终端ID(标识)、
数据生成时便携式设备所在的位置和数据生成时的时间在内的数据。
事件500中包括的例如终端ID、位置和时间等数据统一称为属性
501。事件500包括不少于1个属性501。
‘终端ID’、‘地点’、‘时间’等是属性501的名称,称为属性名
称502。此外,“ID1”,“东京都港区芝5丁目”,“1100:25”等是
属性501的对应于属性名称502的值,称为属性值503。在事件500
中,将属性名称502和对应属性值503组合在一起,称为如上所述的
属性501。
图3是示出了事件模式510的结构和内容示例的图。事件模式510
是指定了事件500的条件的数据。
事件模式510包括,针对构成事件500的属性501的属性名称502
子集,与每个属性名称502对应的属性值503。在事件模式510中,
属性名称502与对应的属性值503组合在一起,被称为部分事件模式
511。
例如,在图3中,事件模式510包括针对事件500中包括的属性
名称502集合{终端ID,位置,事件}的子集{终端ID,位置}的部分
事件模式511。
部分事件模式511是属性名称502“终端ID”及其对应属性值503
“ID1”、以及属性名称502“地点”及其对应属性值503“东京都港
区芝5丁目”。
此外,例如,事件模式510中部分事件模式511‘Pattern(终端ID=
“ID1”,地点=“东京都千代田区丸之内1丁目”)’是‘终端ID=
“ID1”’以及‘地点=“东京都千代田区丸之内1丁目”’。
图4是示出了事件模式登记请求513的结构和内容示例的图。事
件模式登记请求513包括事件模式510和事件模式ID 512作为自变
量。
图5是示出了事件模式登记请求514的结构和内容示例的图。事
件模式登记请求514包括事件模式510作为自变量。
图6是示出了事件模式删除请求515的结构和内容示例的图。事
件模式删除请求515包括事件模式ID 512作为自变量。
图7是示出了事件模式删除请求516的结构和内容示例的图。事
件模式删除请求516包括事件模式510作为自变量。
事件模式匹配判定部110基于构成事件模式匹配树141(稍后进
行详细描述)的每个属性值匹配判定实例142,执行事件500的事件
匹配。
事件模式匹配判定部110从事件输入操作方820接收事件500。
此外,事件模式匹配判定部110基于事件模式匹配树保持部140中保
持的事件模式匹配树141,执行接收的事件500的事件匹配。
此外,在事件500与事件模式510匹配的情况下,事件模式匹配
判定部110向事件接收方830传送事件500。
事件500与事件模式510匹配意味着,事件模式510中包括的所
有属性名称502所对应的属性值503与事件500的相同属性名称502
所对应的属性值503相匹配。
例如,图3的事件模式510中包括的属性名称502“终端ID”所
对应的属性值503“ID1”与图2事件500中包括的属性名称502“终
端ID”所对应的属性值503″ID1″相匹配。图3的事件模式510中包
括的属性名称502“地点”所对应的属性值503“东京都港区芝5丁目”
与图2的事件500中包括的属性名称502“地点”所对应的属性值503
“东京都港区芝5丁目”相匹配。
因此,图2的事件500与图3的事件模式510匹配。图3的事件
模式510不包括事件500中包括的对应于属性名称502“时间”的属
性值503。这意味着无论事件500中包括的属性名称502“时间”取何
值,事件500都与事件模式510匹配。
此外,在执行事件匹配的情况下,事件模式匹配判定部110向树
相关匹配率测量部130传送属性值匹配判定实例142的属性名称字段
143中保持的属性名称、以及匹配结果。
该匹配结果例如在存在随后可以参考的实例540时为‘1’,在不
存在实例540时为‘0’。
此外,当存在随后可以参考的实例540时的情况是如下情况:与
属性值匹配判定实例142所接收的事件500的属性值503相同的值存
在于属性值匹配判定实例142的哈希表145的键(key)148中。或者
当存在随后可以参考的实例540时的情况是如下情况:*字段144不为
NULL。
此外,当不存在随后可以参考的属性值匹配判定实例142时的情
况是如下情况:与属性值匹配判定实例142所接收的事件500的属性
值503相同的值不存在于属性值匹配判定实例142的哈希表145的键
148中,并且*字段144为NULL。
事件模式匹配树生成部120参考匹配率测量表131(稍后详细描
述),并生成事件模式匹配树141(稍后详细描述),该事件模式匹配
树141将包括与具有相对低匹配率135的属性名称132相同的属性名
称502的实例540安排在了较高级别。相继地,事件模式匹配树生成
部120在事件模式匹配树保持部140中记录生成的事件模式匹配树
141。这样,事件模式匹配树生成部120组织或重组事件模式匹配树
141。
此外,例如事件模式匹配树生成部120重组匹配树141的定时可
以采用固定时间间隔。
此外,例如,在对应于特定属性名称502的匹配率135低于对应
于事件模式匹配树141的根节点192中保持的属性名称502的匹配率
135时,事件模式匹配树生成部120可以重组事件模式匹配树141。
此外,例如,在检测到按照测量率135的升序,从事件模式匹配
树141的根节点192到叶子节点193,属性名称502没有出现的情况
下,事件模式匹配树生成部120可以重组事件模式匹配树141。
通过将接收到来自事件模式接收部160的事件模式登记请求514
作为触发,事件模式匹配树生成部120开始操作。
此外,通过将接收到来自事件模式接收部160的事件模式删除请
求516作为触发,事件模式匹配树生成部120开始操作。
树相关匹配率测量部130测量事件模式510中包括的所有属性名
称502的匹配率135。
匹配率135的定义如下。事件模式510‘P’的属性名称502‘A’
的匹配率135将是N/NALL。NALL是成为计算匹配率135的目标的
事件500的数目。N是成为目标的事件500之中,对应于事件模式510
‘P’的属性名称502‘A’的属性值503与对应于事件500的属性
名称502‘A’的属性值503相匹配的事件500的数目。
通过示出具体示例来进行描述。例如,假设成为计算匹配率135
的目标的事件500是两个事件:‘EVENT(终端ID=“ID1”,地点=“东
京都港区芝5丁目”,时间=“10:10:25”)‘和‘EVENT(终端ID=
“ID2”,地点=“东京都港区芝5丁目”,时间=“10:10:25”)’。
在这种情况下,例如,在图3的事件模式510中,属性名称502‘终
端ID’的属性值503‘ID1’与第一事件500匹配,而与第二事件
500不匹配。因此,匹配率测量表131(稍后详细描述)中属性名称
132‘终端ID’的匹配率135将是1/2,其中NALL=2且N=1。
树相关匹配率测量部130保持如图12所示的匹配率测量表131。
图12是示出了匹配率测量表131的结构的图。匹配率测量表131
存储在树相关匹配率测量部130中未示出的存储器中。匹配率测量表
131包括任意数目的行,行包括列,列分别存储属性名称132、接收事
件数目133、匹配事件数目134和匹配率135。
在接收事件数目133中存储从事件模式匹配判定部110接收的匹
配结果的总数。即,该总数是,在每一个属性值匹配判定实例142中,
执行了事件匹配的事件500的总数,其中该每一个属性值匹配判定实
例142具有与属性名称132相同值的属性名称502,作为属性名称字
段143的值。
在匹配事件数目134中存储从事件模式匹配判定部110接收匹配
结果为‘1’的情况的总数。即,该总数是,在每一个属性值匹配判
定实例142中,当执行事件匹配时存在随后可以参考的实例540的情
况的数目,其中该每一个属性值匹配判定实例具有与属性名称132相
同值的属性名称502,作为属性名称字段143的值。
在匹配率135中存储匹配事件数目134除以接收事件数目133而
得到的值。此外,匹配率135不一定要包括在匹配率测量表131中。
即,可以在获取匹配率135时,通过将匹配事件数目134除以接收事
件数目133来获得匹配率135。
树相关匹配率测量部130接收属性名称502以及来自事件模式匹
配判定部110的匹配结果。
此外,树相关匹配率测量部130在匹配率测量表131中检测这样
的行:其中包含的属性名称132与接收的属性名称502匹配。
随后,在从事件模式匹配判定部110接收的匹配结果为‘1’的情
况下,树相关匹配率测量部130在检测到的行中增加接收事件数目133
和匹配事件数目134的值。
随后,树相关匹配率测量部130将匹配率135更新为与增加接收
事件数目133和匹配事件数目134的值的结果相对应。此外,在匹配
结果为‘0’的情况下,树相关匹配率测量部130在检测到的行中只增
加接收事件数目13的值。
随后,树相关匹配率测量部130将匹配率135更新为与增加接收
事件数目133的值的结果相对应。
事件模式匹配树保持部140保持事件模式匹配树141。
图8是示出了事件模式匹配树保持部140中保持的事件模式匹配
树141的结构的图。
如图8所示,事件模式匹配树141包括具有节点191的树结构。
节点191之中除叶子节点193之外的其他节点191是属性值匹配判定
实例142。此外,节点191之中的叶子节点193是事件通知实例146。
事件模式匹配树保持部140的初始状态是如下状态:属性值匹配
判定实例142和事件通知实例146根本不存在,且事件模式匹配树141
不存在。下文中,在无区分地表述属性值匹配判定实例142和事件通
知实例146的情况下,它们统一称为实例540。
图9是示出了属性值匹配判定实例142的结构的图。如图9所示,
属性值匹配判定实例142包括属性名称字段143、*字段144和哈希表
145。
属性名称字段143保持属性值匹配判定实例142作为判定目标的
属性名称502。
*字段144保持指向事件500的事件匹配处理中随后要参考的实例
540的指针194,而不管事件500中包括的属性值503如何。
此外,事件匹配是判定构成事件500的属性501是否与预先登记
的事件模式510中包括的部分事件模式511相匹配。
图10是示出了哈希表145的结构的图。哈希表145保持属性值
503作为键148,以及指针194作为值149,如图10所示。这里,指
针194是指向在事件500的属性值503与键148的值相同时随后要参
考的实例540的指针194。
图11是示出了事件通知实例146的结构的图。如图11所示,事
件通知实例146保持事件模式ID列表147,如随后所述,该事件模式
ID列表147包括事件模式ID 512。
在事件500与事件模式ID 512所标识的事件模式510匹配的情况
下,事件模式匹配判定部110将这些事件模式ID 512给予事件500,
并通知事件接收方830。
事件模式表保持部150在事件模式表151中保持事件模式匹配判
定系统100中预先登记的事件模式510及其事件模式ID 512。
图13是示出了事件模式表151的结构和内容示例的图。事件模式
表151包括任意数目的行,行包括列,列存储事件模式510以及对事
件模式510进行标识的事件模式ID 512。
在图13所示的示例中,事件模式表151包括如下三行。
第一行包括事件模式510‘Pattern(终端ID=“ID1”,地点=“东
京都千代田区丸之内1丁目”)’及其事件模式ID 512‘1’。
第一行包括事件模式510‘Pattern(终端ID=“ID2”,地点=“东
京都新宿区新宿3丁目”)’及其事件模式ID 512‘2’。
第三行包括事件模式510‘Pattern(终端ID=“ID1”,地点=″东京
都港区芝5丁目”)’及其事件模式ID 512‘3’。即,上述三个事件
模式510登记在事件模式匹配判定系统100中。
当从事件模式管理方840接收到事件模式登记请求513时,事件
模式接收部160在事件模式表保持部150的事件模式表151中记录事
件模式登记请求513中包括的事件模式510和事件模式ID 512。
接着,事件模式接收部160向事件模式匹配树生成部120传送事
件模式登记请求514。
此外,事件模式接收部160从事件模式管理方840接收事件模式
删除请求515。此时,事件模式接收部160参考事件模式表保持部150
的事件模式表151,并获取具有事件模式删除请求515中包括的事件
模式ID 512的事件模式510。
接下来,事件模式接收部160向事件模式匹配树生成部120传送
包括所获取的事件模式510的事件模式删除请求516。
然后,事件模式接收部160从事件模式表保持部150的事件模式
表151中删除记录了事件模式删除请求515中包括的事件模式ID 512
的行。
下面将参照附图详细描述该示例实施例的整体操作。该示例实施
例的操作可以大致分为两个操作。一个操作是事件500的事件匹配操
作。另一个操作是事件模式匹配树141的组织和重组操作。
首先,将描述事件500的事件匹配操作。
图14是示出了事件500的事件匹配操作之中当事件500输入至事
件模式匹配判定部110时的操作的流程图。
当输入事件500时,事件模式匹配判定部110确认实例540的存
在,该实例540是事件模式匹配树141的根节点192(步骤F70)。
在作为根节点192的实例540存在的情况下(步骤F70,是),事
件模式匹配判定部110参考作为根节点192的实例540,来执行属性
匹配判定(步骤F71)。
此外,在作为根节点192的实例540不存在的情况下(步骤F70,
否),事件模式匹配判定部110结束事件匹配。
将详细描述步骤F71的属性匹配判定。
图15和16是示出了事件500的事件匹配操作之中,在所参考的
实例540是属性值匹配判定实例142的情况下属性匹配判定的操作。
首先,事件模式匹配判定部110判定所参考的实例540是属性值
匹配判定实例142还是事件通知实例146(步骤F79)。
在是属性值匹配判定实例142的情况下(步骤F79,是),处理进
行至步骤F80。
此外,在是事件通知实例146的情况下(步骤F79,否),处理进
行至图17的步骤F90。
在步骤F80,事件模式匹配判定部110从输入事件500获取与所
参考的属性值匹配判定实例142的属性名称502相对应的属性值503
(步骤F80)。
接着,事件模式匹配判定部110参考将属性值503作为键148的
哈希表145,并获取值149(步骤F81)。
接着,事件模式匹配判定部110确认与属性值503对应的值149
(即,指向随后可以参考的实例540的指针194)是否存在(步骤F82)。
在指针194存在的情况下(步骤F82,是),处理进行至步骤F83,
在指针194不存在的情况下(步骤F82,否),处理进行至步骤F87。
在步骤F83,事件模式匹配判定部110向树相关匹配率测量部130
传送属性名称字段143的值、以及指示匹配的信息(例如,‘1’)(步
骤F83)。
接着,事件模式匹配判定部110参考步骤F82中确认存在的实例
540,来执行属性匹配判定(步骤F84)。此外,步骤F84与步骤F79
到F90的处理一起作为嵌套结构来操作。
接着,事件模式匹配判定部110确认所参考的属性值匹配判定实
例142的*字段144中是否存在指向可以参考的实例540的指针194(步
骤F85)。
如果指针194存在(步骤F85,是),事件模式匹配判定部110参
考步骤F85中确认存在的实例540,来执行属性匹配判定(步骤F86)。
此外,步骤F86与步骤F79到F90的处理一起作为嵌套结构来操作。
此外,如果指针194不存在(步骤F85,否),处理结束。
在步骤F87,事件模式匹配判定部110确认*字段144中是否存在
指向可以参考的实例540的指针194(步骤F87)。
如果指针194存在(步骤F87,是),处理进行至步骤F88,如果
指针194不存在(步骤F87,否),处理进行至步骤F89。
在步骤F88,事件模式匹配判定部110向树相关匹配率测量部130
传送属性名称字段143的值以及指示匹配的信息(例如,‘1’)(步骤
F88)。
在步骤F89,事件模式匹配判定部110向树相关匹配率测量部130
传送属性名称字段143的值以及指示不匹配的信息(例如,‘0’)(步
骤F89)。
接着,事件模式匹配判定部110参考步骤F85或步骤F87中确认
存在的实例540,来执行属性匹配判定(步骤F86)。
图17是示出了事件500的事件匹配操作之中,当所参考的实例
540是事件通知实例146时属性匹配判定操作的流程图。
在步骤F90,事件模式匹配判定部110向事件接收方830通知由
输入事件500以及所参考的事件通知实例146中记录的事件模式ID
列表147构成的对。
图18是示出了事件500的事件匹配操作之中,树相关匹配率测量
部130中更新与每个属性名称502相对应的匹配率135的操作的流程
图。
首先,树相关匹配率测量部130从事件模式匹配判定部110接收
属性名称502和匹配结果(步骤Fa0)。
接着,树相关匹配率测量部130判定匹配结果(步骤Fa1)。如果
匹配结果为‘1’(步骤Fa1,是),处理进行至步骤Fa2,如果匹配结
果为‘0’(步骤Fa1,否),处理进行至步骤Fa3。
在步骤Fa2,树相关匹配率测量部130在匹配率测量表131中,
增加包括与实例540的属性名称502相同的属性名称132在内的行中
的接收事件数目133和匹配事件数目134,并且树相关匹配率测量部
130更新匹配率135(步骤Fa2)。
在步骤Fa3,树相关匹配率测量部130在匹配率测量表131中,
增加包括与实例540的属性名称502相同的属性名称132在内的行中
的接收事件数目133,并且树相关匹配率测量部130更新匹配率135
(步骤Fa3)。
下面使用具体示例来描述事件500的事件匹配操作。
作为前提,假设在事件模式匹配判定系统100中登记了图22所示
的事件模式匹配树141。类似地,也假设树相关匹配率测量部130中
保持有图23所示的匹配率测量表131。
类似地,还假设事件模式匹配判定系统100在事件模式匹配判定
部110中接收到图2所示事件500‘EVENT(终端ID=“ID1”,地点=
“东京都港区芝5丁目”,时间=“1100:25”)’。
首先,接收到图2所示事件500的事件模式匹配判定部110确认
是否存在如图22所示的作为事件模式匹配树141的根节点192的属性
值匹配判定实例142‘INS1’(步骤F70)。
接着,事件模式匹配判定部110参考属性值匹配判定实例142
‘INS1’来执行属性匹配判定(步骤F71)。
在步骤F71,事件模式匹配判定部110如下操作。
首先,事件模式匹配判定部110判定实例540‘INS1’是属性值
匹配判定实例142还是事件通知实例146(步骤F79)。由于实例540
‘INS1’是属性值匹配判定实例142,所以处理进行至步骤F80。
接着,由于属性值匹配判定实例142‘INS1’的属性名称字段
143中保持的属性名称502是‘终端ID’,所以事件模式匹配判定部
110获取所接收事件500的属性名称502‘终端ID’的属性值503
‘ID1’(步骤F80)。
接着,事件模式匹配判定部110参考将属性值503‘ID1’作为
键148的哈希表145(步骤F81)。
由于属性值匹配判定实例142‘INS2’存在(步骤F82,是),
所以事件模式匹配判定部110向树相关匹配率测量部130传送属性名
称‘终端ID’和‘1’(步骤F83)。
接收到属性名称‘终端ID’和‘1’的树相关匹配率测量部130
在匹配率测量表131中属性名称132是‘终端ID’的行中,将接收
事件数目133的值从‘999’增加到‘1000’,并将匹配事件数目134
的值从‘499’增加到‘500’。随后,树相关匹配率测量部130将匹配
率135更新为(500/1000=)0.5(步骤Fa2)。
接着,事件模式匹配判定部110参考属性值匹配判定实例142
‘INS2’来执行属性匹配判定(步骤F84)。
在步骤F84(称为步骤F84(1)),事件模式匹配判定部110判定实
例540‘INS2’是属性值匹配判定实例142还是事件通知实例146(步
骤F79)。
由于实例540‘INS2’是属性值匹配判定实例142,所以处理进
行至步骤F80。
由于属性值匹配判定实例142‘INS2’的属性名称字段143中保
持的属性名称502是‘地点’,所以事件模式匹配判定部110获取所接
收事件500的属性名称502‘地点’的属性值503‘东京都港区芝5
丁目’(步骤F80)。
接着,事件模式匹配判定部110参考将属性值503‘东京都港区
芝5丁目’作为键148的哈希表145(步骤F81)。
由于事件通知实例146‘INS6‘存在(步骤F82,是),所以事
件模式匹配判定部110向树相关匹配率测量部130传送属性名称‘地
点’和‘1’(步骤F83)。
接收到属性名称502‘地点’和‘1’的树相关匹配率测量部130
在匹配率测量表131中属性名称132是‘地点’的行中,将接收事件
数目133的值从‘499’增加到‘500’,并将匹配事件数目134的值从
‘199’增加到‘200’。随后,树相关匹配率测量部130将匹配率135
更新为(200/500=)0.4(步骤Fa2)。
接着,事件模式匹配判定部110参考属性值匹配判定实例142
‘′INS6’来执行属性匹配判定(步骤F84)。
在步骤F84(称为步骤F84(2)),事件模式匹配判定部110判定实
例540‘INS6’是属性值匹配判定实例142还是事件通知实例146(步
骤F79)。
由于实例540‘INS6’是事件通知实例146,所以处理进行至步
骤F90。
事件模式匹配判定部110向事件接收方830通知事件500以及事
件通知实例146‘INS6’中保持的事件模式ID 512‘3’(步骤F90)。
之后,步骤F84(2)的处理结束。
接着,事件模式匹配判定部110确认所参考的属性值匹配判定实
例142‘INS2’的*字段144中是否存在指向可以参考的实例540的
指针194(步骤F85)。
由于指针194不存在(步骤F85,否),所以步骤F84(1)的处理结
束。
接着,事件模式匹配判定部110确认所参考的属性值匹配判定实
例142‘INS1’的*字段144中是否存在可以参考的实例540(步骤
F85)。
由于指针194不存在(步骤F85,否),所以步骤F71的处理结束,
事件匹配处理结束。
由此完成了对事件500的事件匹配操作的描述。
下面,将描述事件模式匹配树141的组织(organization)和重组
(reorganization)操作。
在初始状态下,即,事件模式匹配树141不存在的情况下,事件
模式匹配树生成部120通过下面的操作来组织事件模式匹配树141。
此外,例如,通过将接收到事件模式登记请求513作为触发,事件模
式匹配树生成部120执行以下操作。
在接收到事件模式登记请求513的情况下,事件模式匹配树生成
部120基于所接收的事件模式510生成属性值匹配判定实例142。
随后,事件模式匹配树生成部120生成事件通知实例146,该事
件通知实例146将接收的事件模式510的事件模式ID 512包括在了事
件模式ID列表147中。
随后,事件模式匹配树生成部120生成事件模式匹配树141,该
事件模式匹配树141将所生成的属性值匹配判定实例142和事件通知
实例146分别作为根节点192和叶子节点193。
接着,事件模式匹配树生成部120在事件模式匹配树保持部140
中记录所生成的事件模式匹配树141。
此外,例如,通过将已达到预先设定的时间或已经过了固定时间
作为触发,事件模式匹配树生成部120可以执行事件模式匹配树141
的重组。
或者,通过将在事件模式表151中登记具有预设编号的事件模式
510等作为触发,事件模式匹配树生成部120可以执行事件模式匹配
树141的重组。
此外,例如,在事件模式匹配判定系统100接收的事件500数量
较少的情况下,事件模式匹配树生成部120可以执行事件模式匹配树
141的重组。
此外,例如,在与事件模式匹配树141的根节点192保持的属性
名称相对应的匹配率135超过阈值时,事件模式匹配树生成部120可
以执行事件模式匹配树141的重组。
如果通过上述触发,事件模式匹配树生成部120执行事件模式匹
配树141的重组,处理从稍后描述的图19的步骤F12开始。
如果事件模式匹配树141已存在,事件模式匹配树生成部120通
过如下操作来重组事件模式匹配树141。
下文中,为方便说明,将重组之前的事件模式匹配树141称为当
前事件模式匹配树141,将重组之后的事件模式匹配树141称为新事
件模式匹配树141。
类似性,为方便说明,可能存在如下情况:将例如“第一”和“第
二”等前缀添加到例如每INS事件(per INS event)模式ID列表临时
保持字段和实例540。
此外,类似性,为方便说明,可能存在如下情况:将例如(1)和(2)
等后缀添加到例如匹配率135、每INS事件模式ID列表临时保持字段
和处理步骤。
图19是示出了事件模式匹配树生成部120重组事件模式匹配树
141的操作之中,生成作为根节点192的实例540的预处理和操作的
流程图。
事件模式匹配树生成部120参照树相关匹配率测量部130的匹配
率测量表131,获取匹配率135(1)和匹配率135(2)。
匹配率135(1)是作为当前事件模式匹配树141的根节点192的属
性值匹配判定实例142的属性名称字段143中保持的属性名称502的
匹配率135。
此外,匹配率135(2)是匹配率测量表131中包括的匹配率135之
中最低的匹配率135(步骤F10)。
接着,事件模式匹配树生成部120比较匹配率135(1)和匹配率
135(2)(步骤F11)。
如果匹配率135(1)和匹配率135(2)相等(步骤F11,是),处理结
束。即,如果匹配率135(1)是匹配率135(2),则由于树结构具有优良
的事件处理效率,所以事件模式匹配树生成部120不重组该树。
另一方面,如果匹配率135(1)和匹配率135(2)不相等(步骤F11,
否),处理进行至步骤F12。即,事件模式匹配树生成部120重组新事
件模式匹配树141。
在步骤F12,事件模式匹配树生成部120参考树相关匹配率测量
部130的匹配率测量表131,按照匹配率135的升序来排列属性名称
132,并将它们记录在属性名称列表临时保持字段中(步骤F12)。
此外,如果存在匹配率135相同的多个属性名称132,事件模式
匹配树生成部120按照参考匹配率135的顺序来排列这些属性名称
132。即,属性名称列表临时保持字段按照匹配率135的升序,保持事
件模式匹配判定系统100中登记的事件模式510中使用的属性名称
132,即,属性名称502。
接着,事件模式匹配树生成部120获取事件模式表保持部150中
记录的所有事件模式510及其事件模式ID 512。随后,事件模式匹配
树生成部120将所获取的事件模式510和对应事件模式ID 512成对,
并将它们记录在事件模式列表临时保持字段中(步骤F13)。
即,事件模式列表临时保持字段保持事件模式匹配判定系统100
中登记的所有事件模式510及其事件模式ID 512的对。
接着,事件模式匹配树生成部120从事件模式表保持部150获取
所有事件模式ID 512,并将它们记录在第一每INS事件模式ID列表
临时保持字段中(步骤F14)。
此外,针对每个实例540,相继地生成每INS事件模式ID列表临
时保持字段。
如果实例540是事件通知实例146,则每INS事件模式ID列表临
时保持字段保持实例540自身中登记的事件模式ID 512的集合。或者,
如果实例540是属性值匹配判定实例142,则每INS事件模式ID列表
临时保持字段保持实例540的子实例540中登记的事件模式ID 512的
集合。
接着,事件模式匹配树生成部120参考属性名称临时保持字段,
并生成作为属性值匹配评估实例142的第一实例540,该属性值匹配
判定实例142将具有最低匹配率135的属性名称502作为属性名称字
段143的值。接着,事件模式匹配树生成部120将所生成的属性值匹
配判定实例142作为根节点192,将其记录在新事件模式匹配树141
中(步骤F15)。
接下来,事件模式匹配树生成部120基于第一每INS事件模式ID
列表临时保持字段的值以及生成的第一实例540,执行实例更新(步
骤F16)。
图20和图21是示出了步骤F16的实例更新处理的详细操作的流
程图。
首先,事件模式匹配树生成部120确认第一实例540是否是属性
值匹配判定实例142(步骤F20)。
如果第一实例540是属性值匹配判定实例142(步骤F20,是),
处理进行至步骤F21。
如果第一实例540不是属性值匹配判定实例142(步骤F20,否),
即,第一实例540是事件通知实例146,处理进行至步骤F28。
在步骤F21,事件模式匹配树生成部120提取作为第一实例540
的属性值匹配判定实例142的属性名称字段143中登记的属性名称
502。
随后,事件模式匹配树生成部120基于所提取的属性名称502,
提取事件模式列表临时保持字段中存在的每个事件模式510的属性值
503。
再随后,事件模式匹配树生成部120针对所提取的属性值503之
中的每个单一属性值503,生成存储了相关事件模式ID 512的第二每
INS事件模式ID列表临时保持字段(步骤F21)。
接下来,对于每个每INS事件模式ID列表临时保持字段,事件
模式匹配树生成部120更新实例540的信息或者生成新实例540(步
骤F22-F26)。
接下来,事件模式匹配树生成部120针对生成的实例540,执行
实例更新(步骤F27)。此外,步骤F27与图20和图21的流程图所示
的实例更新处理一起作为嵌套结构来操作。
接下来,事件模式匹配树生成部120确认是否已经针对步骤F21
中生成的所有第二每INS事件模式ID列表临时保持字段执行了处理
(步骤F29)。
如果已经针对所有第二每INS事件模式ID列表临时保持字段执
行了处理(步骤F29,是),处理结束。
如果存在尚未执行处理的第二每INS事件模式ID列表临时保持
字段(步骤F29,否),处理返回步骤F22。
在步骤F28,事件模式匹配树生成部120将指定的每INS事件模
式ID列表临时保持字段中显示的事件模式ID 512添加至作为第一实
例540的事件通知实例146的事件模式ID列表147(步骤F28)。之
后,处理结束。
接着,通过具体示例来详细描述步骤F21-F27的处理。
首先,事件模式匹配树生成部120提取作为第一实例540的属性
值匹配判定实例142的属性名称字段143中登记的属性名称502。
随后,事件模式匹配树生成部120提取与所提取的属性名称502
相对应的事件模式列表临时保持字段中存在的每个事件模式510的属
性值503。
再随后,事件模式匹配树生成部120针对所提取的属性值503之
中的每个不同属性值503,生成第二每INS事件模式ID列表临时保持
字段。
事件模式匹配树生成部120在生成的第二每INS事件模式ID列
表临时保持字段中存储相关事件模式ID 512。
此外,事件模式匹配树生成部120还针对事件模式510之中与第
一实例540的属性名称字段143中的属性名称50相对应的属性值503
为不存在的事件模式510,生成第二每INS事件模式ID列表临时保持
字段。
事件模式匹配树生成部120在生成的第二每INS事件模式ID列
表临时保持字段中存储相关事件模式ID 512(步骤F21)。
将通过具体示例描述上述步骤F21的操作。
例如,假设事件模式临时保持字段中存储了以下四种事件模式。
{1,Pattern(终端ID=“ID1”,地点=“东京都千代田区丸之内1
丁目”)};
{2,Pattern(终端ID=“ID2”,地点=“东京都新宿区新宿3丁目”)};
{3,Pattern(终端ID=“ID1”,地点=“东京都港区芝5丁目”)};
{4,Pattern(地点=“东京都涉谷区道玄坂1丁目”)}。
此外,假设属性值匹配判定实例142的属性名称字段143中存储
的属性名称502是‘终端ID’。
此时,事件模式匹配树生成部120生成分别包括以下值的三个第
二每INS事件模式ID列表临时保持字段。
“1,3”(其属性名称502‘终端ID’是“ID1”的事件模式ID
512的集合);
“2”(其属性名称502‘终端ID’是“ID2”的事件模式ID 512
的集合);
“4”(对于属性名称502‘′终端ID’无属性值503的事件模式
ID 512的集合)。
接下来,对于每个所生成的第二每INS事件模式ID列表临时保
持字段,事件模式匹配树生成部120执行步骤F22-F27的处理。
在步骤F22,对于与第二每INS事件模式ID列表临时保持字段中
包括的事件模式ID 512相对应的事件模式510,事件模式匹配树生成
部120参考属性名称列表临时保持字段,并确认第一实例504中包括
的属性名称之后是否存在匹配率135为最低的属性名称502(步骤
F22)。
如果存在这种属性名称502(步骤F22,是),事件模式匹配树生
成部120生成作为第二实例540的属性值匹配判定实例142,并将步
骤F22中确认存在的属性名称502存储在属性名称字段143中(步骤
F24)。
如果不存在这种属性名称502(步骤F22,否),事件模式匹配树
生成部120生成作为第二实例540的事件通知实例146(步骤F25)。
接下来,事件模式匹配树生成部120在事件模式匹配树141中记
录步骤F24或F25中生成的第二实例540(步骤F26)。
具体而言,如果步骤F22中确认存在的属性名称502存在于第二
实例540中,事件模式匹配树生成部120利用第一属性值匹配判定实
例142的哈希表145中属性名称502的属性值503的值,生成键148。
事件模式匹配树生成部120在值149中记录指向第二实例540的指针
194。
此外,如果步骤F22中确认存在的属性名称502不存在于第二属
性值匹配判定实例142中,事件模式匹配树生成部120在第一属性值
匹配判定实例142的*字段144中记录指向第二实例540的指针194。
此外,如果第二实例540是事件通知实例146,事件模式匹配树
生成部120参考与事件通知实例146相对应的每INS事件模式ID列
表临时保持字段。
随后,事件模式匹配树生成部120参考该每INS事件模式ID列
表临时保持字段的事件模式ID 512中包括的事件模式510。
随后,事件模式匹配树生成部120利用事件模式510中在步骤F22
中确认存在的属性名称502的属性值503的值来生成键148,并在值
149中记录指向第二实例540的指针194。
接下来,事件模式匹配树生成部120指定第二每INS事件模式ID
列表临时保持字段和第二实例540,并执行实例更新(步骤F27)。
下面通过具体实例描述上述事件模式匹配树141的重组操作。
作为前提,假设事件模式匹配树保持部140保持图22所示事件模
式匹配树141。
类似地,假设事件模式表保持部150保持的事件模式表151处于
图13所示状态。
类似地,还假设树相关匹配率测量部130保持的匹配率测量表131
处于图24所示状态。
此外,还假设事件模式匹配树生成部120例如一天一次来重组事
件模式匹配树141。
重组频率可以不限于一天一次,可以通过将树相关匹配率测量部
130的某一属性名称132的匹配率135达到阈值作为触发,来执行重
组。此外,可以通过将来自事件输入操作方820的事件输入频率达到
阈值作为触发,来执行重组。
事件模式匹配树生成部120参考树相关匹配率测量部130的匹配
率测量表131(图24),并获取作为事件模式匹配树141根节点192
的实例540的属性名称字段143中的属性名称502‘终端ID’的匹配
率135‘0.500’、以及匹配率测量表131中的最低匹配率135‘0.400’
(步骤F10)。
由于属性名称132‘终端ID’的匹配率135与匹配率测量表131
中的最低匹配率135不相等(步骤F11,否),所以事件模式匹配树生
成部120重组事件模式匹配树141。
首先,事件模式匹配树生成部120参考树相关匹配率测量部130
的匹配率测量表131,按照匹配率135的升序排列属性名称132,并将
它们记录在属性名称列表临时保持字段中(步骤F12)。此时,属性名
称列表临时保持字段将是‘{地点,终端ID}’。
随后,事件模式匹配树生成部120从事件模式表保持部150获取
事件模式510及其事件模式ID 512。随后,事件模式匹配树生成部120
在事件模式列表临时保持字段中记录所获取的对(步骤F13)。
该示例的前提在于,事件模式列表临时保持字段为:‘{1,
Pattern(终端ID=“ID1”,地点=″东京都千代田区丸之内1丁目”)},{2,
Pattern(终端ID=“ID2”,地点=“东京都新宿区新宿3丁目”)},{3,
Pattern(终端ID=“ID1”,地点=“东京都港区芝5丁目”)}’。
接下来,事件模式匹配树生成部120从事件模式表保持部150获
取所有事件模式ID 512并记录在第一每INS事件模式ID列表临时保
持字段中(步骤F14)。该示例的前提在于,第一每INS事件模式ID
列表临时保持字段为‘{1,2,3}’。
接着,事件模式匹配树生成部120参考属性名称列表临时保持字
段,并生成如图25所示的属性值匹配判定实例142‘INS1’,作为第
一实例540,在第一实例540中,具有最低匹配率135的属性名称502
‘地点’作为属性名称字段143的值(步骤F15)。属性值匹配判定实
例142‘INS1’是新事件模式匹配树141的根节点192。
接下来,事件模式匹配树生成部120基于第一每INS事件模式ID
列表临时保持字段的值‘{1,2,3}’以及所产生的第一实例540‘属性
值匹配判定实例142‘INS1”,执行实例更新(步骤F16)。
在步骤F16的第一步骤F20,事件模式匹配树生成部120确认第
一实例540是否是属性值匹配判定实例142。由于第一实例540是属
性值匹配判定实例142‘INS1’(步骤20,是),所以处理进行至步骤
F21。
在步骤F21,事件模式匹配树生成部120针对属性值匹配判定实
例142‘INS1’的属性名称字段143中登记的属性名称502‘地点’,
生成第二每INS事件模式ID列表临时保持字段。
与第一每INS事件模式ID列表临时保持字段中包括的事件模式
ID 512‘1’、‘2’和‘3’相对应的每个事件模式510的属性名称502
‘地点’的每个属性值503均不相同。因此,事件模式匹配树生成部
120生成下面三种第二每INS事件模式ID列表临时保持字段:
与属性值503“东京都千代田区丸之内1丁目”相对应的第二每
INS事件模式ID列表临时保持字段(1);
与属性值503“东京都新宿区新宿3丁目”相对应的第二每INS
事件模式ID列表临时保持字段(2);
与属性值503“东京都港区芝5丁目”相对应的第二每INS事件
模式ID列表临时保持字段(3)。
事件模式匹配树生成部120在这些第二每INS事件模式ID列表
临时保持字段(1)、(2)和(3)中存储相关事件模式ID 512。
具体而言,第二每INS事件模式ID列表临时保持字段(1)、(2)
和(3)和要存储的事件模式ID 512的对应关系:第二每INS事件模
式ID列表临时保持字段(1)={1},第二每INS事件模式ID列表临
时保持字段(2)={2},以及第二每INS事件模式ID列表临时保持字
段(3)={3}(步骤F21)。
接着,事件模式匹配树生成部120针对与第二每INS事件模式ID
列表临时保持字段(1)中包括的事件模式ID 512相对应的事件模式
510,参考属性名称列表临时保持字段,并确认属性值匹配判定实例
142‘INS1’的属性名称502‘地点’之后匹配率135为最低的属性名
称502的存在(步骤F22)。
由于在与第二每INS事件模式ID列表临时保持字段(1)中包括
的事件模式ID 512相对应的事件模式510中存在属性名称502‘终端
ID’(步骤F22,是),所以事件模式匹配树生成部120生成属性值匹
配判定实例142‘INS2’,作为第二实例540,如图26所示。
随后,事件模式匹配树生成部120将步骤F22中确认存在的属性
名称502‘终端ID’存储在属性值匹配判定实例142‘INS2’的属性
名称字段143中(步骤F24)。
接下来,事件模式匹配树生成部120在属性值匹配判定实例142
(INS1)的哈希表145中记录键“东京都千代田区丸之内1丁目”及
其值‘INS2’(步骤F26)。此时,新事件模式匹配树141处于图26
所示状态。
接着,事件模式匹配树生成部120基于第二每INS事件模式ID
列表临时保持字段(1)以及属性值匹配判定实例142‘INS2’,执行
实例更新(步骤F27)。
在步骤F27(称为步骤F27(1)),事件模式匹配树生成部120将第
二每INS事件模式ID列表临时保持字段(1)以及属性值匹配判定实
例142‘INS2’分别作为第一每INS事件模式ID列表临时保持字段
以及第一实例540,来进行如下操作。
由于指定的第一实例540是属性值匹配判定实例142‘INS2’(步
骤F20,是),所以事件模式匹配树生成部120提取属性值匹配判定实
例142‘INS2’的属性名称字段143中登记的属性名称502‘终端ID’。
随后,事件模式匹配树生成部120针对属性名称502‘终端ID’,
生成与事件模式510的属性名称502‘终端ID’的属性值503‘ID1’
相对应的第二每INS事件模式ID列表临时保持字段(4),其中事件
模式510与第一每INS事件模式ID列表临时保持字段‘{1}’中包括
的事件模式ID 512‘1’相对应。
随后,事件模式匹配树生成部120在每INS事件模式ID列表临
时保持字段(4)中存储相关事件模式ID 512‘1’。具体而言,即第
二每INS事件模式ID列表临时保持字段(4)={1}(步骤F21)。
接着,对于与第二每INS事件模式ID列表临时保持字段(4)中
包括的事件模式ID 512相对应的事件模式510,事件模式匹配树生成
部120确认在属性值匹配判定实例142‘INS2’的属性名称502‘终
端ID’之后匹配率135为最低的属性名称502的存在(步骤F22)。
在与第二每INS事件模式ID列表临时保持字段(4)中包括的事
件模式ID 512相对应的事件模式510中,在属性名称502‘终端ID’
之后不存在匹配率135为最低的属性名称502(步骤F22,否)。因
此,事件模式匹配树生成部120生成作为第二实例540的事件通知实
例146‘INS3’,如图27所示(步骤F25)。
接着,事件模式匹配树生成部120在属性值匹配判定实例142
(INS2)的哈希表145中记录键‘ID1’及其值‘INS3’(步骤F26)。
此时,新事件模式匹配树141处于图27所示状态。
接下来,事件模式匹配树生成部120基于第二每INS事件模式ID
列表临时保持字段(4)以及事件通知实例146‘INS3’,执行实例更
新(步骤F27)。
在步骤F27(称为步骤F27(2)),事件模式匹配树生成部120将第
二每INS事件模式ID列表临时保持字段(4)以及事件通知实例146
‘INS3’分别作为第一每INS事件模式ID列表临时保持字段以及第
一实例540,来进行如下操作。
由于指定的第一实例540是事件通知实例146‘INS3’(步骤F20,
否),所以事件模式匹配树生成部120在与事件通知实例146相对应的
事件模式ID列表147中记录‘1’。步骤F27(2)的处理结束。此时,
新事件模式匹配树141处于图27所示状态。
如上所述的步骤F27(1)结束。
此外,如上所述,针对每INS事件模式ID列表临时保持字段(1)
的步骤F22-F27的处理结束。
事件模式匹配树生成部120还针对每INS事件模式ID列表临时
保持字段(2)和(3)执行类似处理(步骤F29)。
如上所述,步骤F16的处理结束。此时,新事件模式匹配树141
处于图28所示状态,事件模式匹配树生成部120结束事件模式匹配树
141的重组。
上述示例实施例的效果在于,可以生成对于高效执行模式匹配判
定而言最优的事件模式匹配树。
这是因为,事件模式匹配树生成部120参考树相关匹配率测量部
130,并生成事件模式匹配树141,其中将包括具有低匹配率135的属
性名称502在内的实例540排列在较高级别。
因此,当事件模式匹配判定系统100接收到事件500时,事件模
式匹配判定部110能够在事件模式匹配树141的较高级别上的处理中
较早地检测到不匹配的事件500并结束匹配。
[第二示例实施例]
下面,将参照附图具体描述本发明的第二示例实施例。下文中,
在不会导致本示例实施例的描述不清楚的前提下,省略了与前文描述
重复的内容。
在第一示例实施例中,事件模式匹配判定部110判定每个属性的
匹配,树相关匹配率测量部130基于该判定来测量匹配率。但是,在
第二示例实施例中,匹配率测量部270从事件接收部280接收事件并
测量每个属性的匹配率。
图29是示出了第二示例实施例的结构的框图。
参照图29,在根据第二示例实施例的事件模式匹配判定系统200
中,相比于第一示例实施例的事件模式匹配判定系统100,用事件模
式匹配判定部210取代了事件模式匹配判定部110。
类似地,用事件模式匹配树生成部220取代了事件模式匹配树生
成部120,并且用事件模式接收部260取代了事件模式接收部160。
此外,在事件模式匹配判定系统200中,相比于事件模式匹配判
定系统100,删除了树相关匹配率测量部130,添加了匹配率测量部
270和事件接收部280。
事件模式接收部260从事件模式管理方840接收事件模式登记请
求513。此时,事件模式接收部260在事件模式表保持部150中记录
事件模式登记请求513中包括的事件模式510和事件模式ID 512。
接着,事件模式接收部260向匹配率测量部270传送事件模式登
记请求513中包括的事件模式510和事件模式ID 512。
同时,事件模式接收部260向事件模式匹配树生成部220传送事
件模式登记请求514。
此外,事件模式接收部260从事件模式管理方840接收事件模式
删除请求515。此时,事件模式接收部260向匹配率测量部270传送
事件模式删除请求515中包括的事件模式ID 512。
接着,事件模式接收部260从事件模式表保持部150中删除记录
了具有事件模式删除请求515中包括的事件模式ID 512的事件模式
510的行。
接着,事件模式接收部260向事件模式匹配树生成部220传送事
件模式删除请求516。
事件接收部280从事件输入操作方820接收事件500。此外,事
件接收部280将所接收的事件500传送给事件模式匹配判定部210和
匹配率测量部270。
事件模式匹配判定部210从事件接收部280接收事件500。
此外,事件模式匹配判定部210基于事件模式匹配树保持部140
中保持的事件模式匹配树141,执行所接收事件500的事件匹配。
此外,在所接收的事件500匹配的情况下,事件模式匹配判定部
210向事件接收方830传送事件500。
匹配率测量部270从事件接收部280接收事件500。此外,与上
述事件模式匹配判定部210的处理并行地,匹配率测量部270测量与
事件模式510中包括的所有部分事件模式511相对应的匹配率275。
此外,匹配率测量部270保持匹配率测量表271。
图30是示出了匹配率测量表271的结构和内容示例的图。匹配率
测量表271包括任意数目的行,行包括列,列分别存储属性名称272、
部分事件模式列表276、接收事件数目273、匹配事件数目274和匹配
率275,如图30所示。
部分事件模式列表276登记了任意数目的对的列表。这里,所述
对是,所包括属性名称502与属性名称272相同的部分事件模式511
和包括部分事件模式511的事件模式510的事件模式ID的对。
例如,在事件模式登记请求513是‘事件模式登记请求1,
Pattern(终端ID=“ID1”,地点=“东京都千代田区丸之内1丁目”)’
的情况下,匹配率测量部270在匹配率测量表271的具有属性名称272
‘终端ID’的行中登记部分事件模式列表276(1,‘终端ID=“ID1”’)。
类似地,匹配率测量部270在具有属性名称272‘地点’的行中登记
部分事件模式列表276(1,‘地点=“东京都千代田区丸之内1丁目”’)。
从事件接收部280接收的事件500的总数存储在接收事件数目
273中。
所接收的事件500之中与部分事件模式列表276的至少一个部分
事件模式511匹配的事件500的总数存储在匹配事件数目274中。匹
配事件数目274除以接收事件数目273得到的值存储在匹配率275中。
事件模式匹配树生成部220参考匹配率测量表271,并生成事件
模式匹配树141,其中将具有与匹配率275较低的属性名称272相同
的属性名称502的实例540排列在较高级别。
下面参照附图详细描述该示例实施例的操作。
图32是示出了匹配率测量部270的事件模式登记操作的流程图。
匹配率测量部270从事件模式接收部260接收事件模式510和事
件模式ID 512(步骤Fe0)。
此时,匹配率测量部270基于接收的事件模式510和事件模式ID
512,生成部分事件模式511,并将其记录在未示出的部分事件模式临
时保持部中(步骤Fe1)。
接着,对于匹配率测量表271的每一行,匹配率测量部270向部
分事件模式列表276添加部分事件模式511和事件模式ID 512的对,
该部分事件模式511包括的属性名称502与该行的属性名称272的值
相同,该事件模式ID 512是包括该部分事件模式511的事件模式510
的事件模式ID。此外,匹配率测量部270从部分事件模式临时保持部
中删除部分事件模式511(步骤Fe2)。
接着,匹配率测量部270确认部分事件模式临时保持部是否为空
(步骤Fe3)。如果部分事件模式临时保持部为空(步骤Fe3,是),处
理结束。如果部分事件模式临时保持部不为空(步骤Fe3,否),处理
进行至步骤Fe4。
在步骤Fe4,匹配率测量部270针对部分事件模式临时保持部的
每个元素,在匹配率测量表271中生成新的行。
随后,匹配率测量部270在属性名称272中记录部分事件模式511
的属性名称502。
随后,匹配率测量部270在部分事件模式列表276中记录包括了
部分事件模式511的事件模式510的事件模式ID 512与部分事件模式
511的对。
随后,匹配率测量部270在接收事件数目273中记录‘0’,在匹
配事件数目274中记录‘0’,并在匹配率275中记录‘0’。进一步随
后,匹配率测量部270从部分事件模式临时保持部中删除部分事件模
式511(步骤Fe4)。
将使用具体示例描述匹配率测量部270的事件模式登记操作。
作为前提,假设在事件模式匹配判定系统200中登记了事件模式
510‘Pattern(终端ID=“ID1”,地点=“东京都千代田区丸之内1丁目”)’
以及‘Pattern(终端ID=“ID2”,地点=“东京都新宿区新宿3丁目”)’。
类似地,假设匹配率测量表271处于如图30所示状态。
类似地,假设事件模式匹配判定系统200在事件模式接收部260
中接收到事件模式登记请求513‘事件模式登记请求3Pattern(终端
ID=“ID1”,地点=“东京都港区芝5丁目”)’。
事件模式接收部260向匹配率测量部270传送事件模式登记请求
513中包括的事件模式510和事件模式ID 512。
匹配率测量部270接收事件模式510‘Pattern(终端ID=“ID1”,
地点=“东京都港区芝5丁目”’和事件模式ID 512‘2’(步骤Fe0)。
此时,匹配率测量部270从接收的事件模式510中提取部分事件
模式511‘终端ID=“ID1”,地点=“东京都港区芝5丁目”’,并将它
们记录在部分事件模式临时保持部中(步骤Fe1)。
接着,对于匹配率测量表271的每一行,匹配率测量部270向部
分事件模式列表276添加部分事件模式511与包括部分事件模式511
的事件模式510的事件模式ID 512的对,其中该部分事件模式511包
括的属性名称502与该行的属性名称272具有相同值(步骤Fe2)。
将更加详细地描述步骤Fe2的操作示例。首先,由于匹配率测量
表271的第一行中属性名称272是‘终端ID’,所以匹配率测量部270
向部分事件模式列表276添加事件模式ID 512‘3’与部分事件模式
511‘终端ID=“ID1”’的对。
随后,匹配率测量部270从部分事件模式临时保持部中删除‘终
端ID=“ID1”’,并使部分事件模式临时保持部的内容为{‘地点=“东
京都港区芝5丁目”’}。
接着,在匹配率测量表271的第二行中,由于属性名称272是‘地
点’,所以匹配率测量部270向部分事件模式列表276添加事件模式
ID 512‘3’与部分事件模式511‘地点=“东京都港区芝5丁目”’
的对。随后,匹配率测量部270从部分事件模式临时保持部中删除‘地
点=“东京都港区芝5丁目”’,部分事件模式临时保持部变为空。
接着,匹配率测量部270判定部分事件模式临时保持部是否为空。
由于部分事件模式临时保持部为空(步骤Fe3,是),处理结束。
此时,匹配率测量表271处于图31所示状态。
图33是匹配率测量部270的事件模式删除操作的流程图。
匹配率测量部270从事件模式接收部260接收事件模式ID 512(步
骤Ff0)。
接着,在匹配率测量表271每一行中的部分事件模式列表276中,
匹配率测量部270删除值与所接收的事件模式ID 512的值相同的事件
模式ID 512与部分事件模式511的对(步骤Ff1)。
接着,匹配率测量部270确认删除了事件模式ID 512与部分事件
模式511对的行中的部分事件模式列表276是否为空(步骤F步骤F2)。
如果为空(步骤Ff2,是),匹配率测量部270删除部分事件模式
列表276为空的那一行(步骤Ff3)。此外,在不为空的情况下(步骤
Ff2,否),处理进行至步骤F步骤F4。
接着,匹配率测量部270确认是否针对匹配率测量表271的所有
行执行了从步骤Fe1到步骤Fe3的处理(步骤Ff4)。
如果针对所有行执行了处理(步骤Ff4,是),处理结束。如果存
在没有执行处理的行(步骤Ff4,否),处理返回至步骤Ff1。
将使用具体示例描述匹配率测量部270的事件模式删除操作。
作为前提,假设匹配率测量表271处于如图31所示状态。
类似地,假设事件模式匹配判定系统200在事件模式接收部260
中接收到事件模式删除请求515‘事件模式删除请求3’。
事件模式接收部260向匹配率测量部270传送所接收的事件模式
删除请求515中包括的事件模式ID 512‘3’。
匹配率测量部270从匹配率测量表271的每一行的部分事件模式
列表276中删除值与所接收事件模式ID 512相同的事件模式ID 512
以及部分事件模式511的对。
具体地,从匹配率测量表271中的部分事件模式列表276中删除
了‘(3,‘终端ID=“ID1”’)’,并从部分事件模式列表276的第一行
中删除‘(3,‘地点=“东京都港区芝5丁目”’)’。
如上,匹配率测量部270的事件模式删除操作结束。
此时,匹配率测量表271处于图30的状态。
接着,将描述该示例实施例中事件500的事件匹配操作。
当从事件输入操作方820向事件接收部280输入事件500时,事
件接收部280将事件500传送给事件模式匹配判定部210和匹配率测
量部270。
事件模式匹配判定部210执行事件匹配,将匹配的事件模式510
的事件模式ID 512给予事件500,并将其通知给事件接收方830。此
外,匹配率测量部270更新与每个属性名称502相对应的匹配率。
在事件500的事件匹配操作之中,当输入事件500时,该示例实
施例中事件模式匹配判定部210的操作与第一示例实施例所述的图14
的流程图所示的事件模式匹配判定部110的操作相同。
图34是示出了在所参考的实例540是属性值匹配判定实例142
的情况下,事件500的事件匹配操作之中,属性匹配判定操作的流程
图。
图34所示事件模式匹配判定部210的属性匹配判定的操作不同于
图15和16所示事件模式匹配判定部110的操作,不同之处在于,不
存在事件模式匹配判定部210向树相关匹配率测量部130传送属性名
称502和匹配结果的操作。
因此,在图15和图34中,步骤F79和步骤Fh9、步骤F80和步
骤Fh0、步骤F81和步骤Fh1、步骤F84和步骤Fh4、步骤F85和步
骤Fh5、步骤F86和步骤Fh6分别是相同的操作。
此外,不同之处在于,在图15的步骤F82中为否时,处理进行
至图16的步骤F87,在图34的步骤Fh2中为否时,处理进行至步骤
Fh5。此外,不同之处在于,在图15的步骤F82中为是时,处理进行
至图16的步骤F83,在图34的步骤Fh2中为是时,处理进行至步骤
Fh4。
此外,图34中不存在与图15的步骤F83、图16的步骤F87、步
骤F88和步骤F89相对应的操作。
下面描述匹配率测量部270的匹配率更新处理。
当接收到事件500时,匹配率测量部270使用匹配率测量表271
的每一行中的部分事件模式列表276来执行事件500的事件匹配。随
后,匹配率测量部270基于事件匹配结果来更新匹配率测量表271。
图35是示出了事件500的事件匹配操作之中,更新与每个属性名
称502相对应的匹配率的操作的流程图。
匹配率测量部270从事件接收部280接收事件500(步骤Fg0)。
接着,匹配率测量部270针对匹配率测量表271的所有行,执行
下述步骤Fg1、步骤Fg2和步骤Fg3的处理。
首先,匹配率测量部270判定所接收的事件500是否与匹配率测
量表271的一行的部分事件模式列表276中的至少一个部分事件模式
511相匹配(步骤Fg1)。
如果所接收的事件500匹配(步骤Fg1,是),匹配率测量部270
增加该行的接收事件数目273和匹配事件数目274的值,并更新匹配
率275(步骤Fg2)。
此外,如果所接收的事件500不与部分事件模式列表276中的任
何部分事件模式511相匹配(步骤Fg1,否),则匹配率测量部270增
加该行的接收事件数目273的值,并更新匹配率275(步骤Fg3)。
接着,匹配率测量部270判定是否针对匹配率测量表271的所有
行执行了处理(步骤Fg4)。
接着,将使用具体示例描述事件500的事件匹配操作。
作为前提,假设事件模式匹配判定系统200中登记了事件模式510
‘Pattern(终端ID=“ID1”,地点=“东京都千代田区丸之内1丁目”)’,
‘Pattern(终端ID=“ID2”,地点=“东京都新宿区新宿3丁目”)’和
‘Pattern(终端ID=“ID1”,地点=“东京都港区芝5丁目”)’。
类似地,假设事件模式匹配树141处于图22所示状态,匹配率测
量表271处于图31所示状态。
类似地,假设事件模式匹配判定系统200在事件接收部280中接
收到图2所示的事件500‘EVENT(终端ID=“ID1”,地点=“东京都
港区芝5丁目”,时间=“1100:25”)’。
事件接收部280将接收的事件500传送给事件模式匹配判定部
210和匹配率测量部270。
事件模式匹配判定部210执行所接收的事件500的匹配判定。事
件模式匹配判定部210向事件500的事件接收方830通知图22的INS6
中保持的事件模式ID 512。
由于除了不向树相关匹配率测量单元130发送属性名称502和匹
配结果之外,事件模式匹配判定部210的操作与第一示例实施例所示
事件模式匹配判定部110的操作相同,所以省略详细描述。
将描述匹配率测量部270的操作。首先,在匹配率测量表271的
第一行中,事件500与部分事件模式列表276的‘终端ID=“ID1”’
相匹配(步骤Fg1,是)。因此,匹配率测量部270将接收事件数目
273更新为‘1000’,将匹配事件数目274更新为‘500’,以及将匹配
率275更新为(500/1000=)‘0.500’。
接着,在匹配率测量表271的第二行中,事件500与与部分事件
模式列表276的‘地点=“东京都港区芝5丁目”’相匹配(步骤Fg1,
是)。因此,匹配率测量部270将接收事件数目273更新为500,将匹
配事件数目274更新为‘200’,以及将匹配率275更新为(200/500=)
‘0.400’。
如上,事件500的事件匹配操作的具体示例描述结束。
在上述示例实施例中,匹配率测量部270针对从事件接收部280
接收的所有事件500以及针对匹配率测量表271的所有行,执行事件
模式匹配判定。
然而,匹配率测量部270也可以例如针对匹配率测量部270或事
件接收部280随机或根据预先设定的标准而选择的事件500,来执行
事件模式匹配判定。
或者,匹配率测量部270也可以针对匹配率测量表271的所有行
之中,随机或根据预先设定的标准而选择的行中的部分事件模式511,
来执行事件模式匹配判定。
上述该示例实施例的第一效果在于,除了第一示例实施例的效果,
还可以获得优化更加正确的事件模式匹配树141。
这是因为匹配率测量部270独立于事件模式匹配树141来测量与
每个属性名称502相对应的匹配率275。
下文中,将具体描述上述效果。
根据第一示例实施例,使用事件模式匹配树141的每个属性值匹
配判定实例142来测量每个属性名称502的匹配率。因此,在与事件
模式匹配树141的父节点191和子节点191分别保持的属性名称502
相对应的属性501中存在依赖关系时,出现以下情况:可能没有正确
地测量与子节点191相对应的属性501的匹配率。
在属性名称502‘年龄’的属性501与属性名称502‘业余爱好’
之间存在依赖关系意味着,同代人的业余爱好相同是常见情况等等,
例如,十几岁年龄的人的业余爱好通常是游戏,而二十几岁年龄的人
的业余爱好通常是旅行等。
在这种情况下,如果事件模式510包括属性名称502‘年龄’和
‘业余爱好’的部分事件模式511,则与属性名称502为‘年龄’的
部分事件模式511相匹配的事件500也与属性名称502为‘业余爱好’
的部分事件模式511相匹配。
参照图36和37,通过具体示例描述上述内容。图36和37描述
了该实施例的效果,并示出了第一示例实施例中的事件模式匹配树
141以及与每个属性名称502相对应的匹配率135的示例。
作为前提,假设在年龄与业余爱好之间存在依赖关系,并在事件
模式匹配判定系统100和事件模式匹配判定系统200中登记了事件模
式510‘Pattern(年龄=“十几岁”,业余爱好=“游戏”)’,‘Pattern(年
龄=“二十几岁”,业余爱好=“旅行”)’以及‘Pattern(年龄=“七十
几岁”,业余爱好=“盆景”)’。
假设事件模式匹配树保持部140保持根据事件模式510生成的如
图36或图37所示的事件模式匹配树141。
类似地,作为前提,假设从事件输入操作方820向事件模式匹配
判定系统100或事件模式匹配判定系统200传送四个事件500
‘EVENT1(年龄=十几岁,业余爱好=游戏)’,‘EVENT2(年龄=二十
几岁,业余爱好=旅行)’,‘EVENT3(年龄=三十几岁,业余爱好=购
物)’、以及‘EVENT4(年龄=四十几岁,业余爱好=阅读)’。
在图36所示事件模式匹配树141中,作为根节点192的属性值匹
配判定实例142具有属性名称502‘年龄’,下一属性值匹配判定实例
142具有属性名称502‘业余爱好’。在使用图36所示的事件模式匹配
树141来测量每个属性名称502的匹配率135的情况下,事件模式匹
配判定系统100测量属性名称502‘年龄’的匹配率为2/4=0.5,属性
名称502‘业余爱好’的匹配率为2/2=1。
另一方面,在图37所示的事件模式匹配树141中,作为根节点
192的属性值匹配判定实例142具有属性名称502‘业余爱好’,下一
属性值匹配判定实例142具有属性名称502‘年龄’。
在使用图37所示的事件模式匹配树141来测量每个属性名称502
的匹配率135的情况下,事件模式匹配判定系统100测量属性名称502
‘年龄’的匹配率为2/2=1,属性名称502‘业余爱好’的匹配率为
2/4=0.5。即,事件模式匹配判定系统100测量的每个属性名称502的
匹配率135依据事件模式匹配树141的结构而改变。
在事件模式匹配判定系统200中测量每个属性名称502的匹配率
275的情况下,独立于事件模式匹配树141,在匹配率测量部270中测
量每个属性名称502的匹配率275。
因此,无论事件模式匹配树141是图36所示情况还是图37所示
情况,属性名称502‘年龄’的匹配率都为2/4=0.5,属性名称502‘业
余爱好’的匹配率都为2/4=0.5。
即,即使两个属性501之间存在依赖关系,事件模式匹配判定系
统200也能够测量与每个属性501相对应的属性名称502的正确匹配
率。
因此,即使在属性501有依赖关系的情况下,事件模式匹配判定
系统200也能够基于正确的匹配率275来生成事件模式匹配树141。
因此,与每个属性501相对应的属性名称502按照匹配率的升序,从
事件模式匹配树141的根节点192到叶子节点193而出现。
事件模式匹配判定系统200基于事件模式匹配树141执行事件模
式匹配判定。因此,在事件模式匹配树141的较高级别处丢弃不与事
件模式510匹配的事件500,可以高速进行事件处理。
上述示例实施例的第二效果在于,可以降低匹配率测量部270的
负荷。
原因在于在匹配率测量部270通过选择从事件接收部280接收的
事件500,并选择在匹配率测量表271中的行,来执行事件模式匹配
判定。
[第三示例实施例]
下面,将参照附图具体描述本发明的第三示例实施例。下文中,
在不会导致本示例实施例的描述不清楚的前提下,省略了与前文描述
重复的内容。
该示例实施例的事件模式匹配判定系统600用与第一示例实施例
的事件模式匹配判定系统100相同方法在树相关匹配率测量部130中
测量每个属性名称502的匹配率135。同时,该示例实施例的事件模
式匹配判定系统600用与第二示例实施例的事件模式匹配判定系统
200相同方法在匹配率测量部670中测量特定属性名称502的匹配率
275。
图38是示出了第三示例实施例的结构的框图。
参照图38,相比于第一示例实施例的事件模式匹配判定系统100,
在事件模式匹配判定系统600中用事件模式匹配树生成部620取代了
事件模式匹配树生成部120。
此外,相比于第一示例实施例的事件模式匹配判定系统100,向
事件模式匹配判定系统200添加了匹配率测量部670、树重组管理部
630和事件接收部680。
事件接收部680从事件输入操作方820接收事件500,并在初始
状态下将接收的事件500传送给事件模式匹配判定部110。
此外,在从匹配率测量部670接收事件传送开始请求的情况下,
事件接收部680将随后(在变为非初始状态之后)接收的事件500传
送给事件模式匹配判定部110和匹配率测量部670。
在从匹配率测量部670接收事件传送结束请求的情况下,事件接
收部680将随后接收的事件500传送给事件模式匹配判定部110,而
不传送给匹配率测量部670。
匹配率测量部670对从树重组管理部630请求的属性名称502的
匹配率275进行测量。匹配率测量部670保持如图30所示匹配率测量
表671。
匹配率测量部670从树重组管理部630接收匹配率测量开始请求,
该请求包括不少于一个的属性名称502作为自变量。
接着,匹配率测量部670从事件模式表保持部150获取所有部分
事件模式511,并将它们存储在匹配率测量表271中,其中该部分事
件模式511包括匹配率测量开始请求中作为自变量而包括的属性名称
502。具体地,匹配率测量部670针对所接收的每个属性名称502,在
匹配率测量表271中生成一行。
随后,匹配率测量部670在每行的属性名称132中存储接收的属
性名称502。同时,匹配率测量部670存储所有部分事件模式511的
列表,其中将接收的属性名称502的值包括在部分事件模式列表276
中。
随后,匹配率测量部670在接收事件数目273中存储‘0’,在匹
配事件数目274中存储‘0’,并在匹配率275中存储‘0’。例如,如
果事件模式表保持部150如图13所示,当从树重组管理部630接收到
属性名称502‘地点’的匹配率开始请求时,匹配率测量部670在匹
配率测量表271中存储图45所示的行。
接下来,为了接收来自事件接收部680的事件500,匹配率测量
部670向事件接收部680传送事件传送开始请求。因此,从事件接收
部680传送事件500,且匹配率测量部670基于接收的事件500,测量
匹配率275。
如果从树重组管理部630接收到匹配率测量结束请求,匹配率测
量部670向树重组管理部630返回所测量的匹配率275的列表。
接下来,为了结束从事件接收部680接收事件500,匹配率测量
部670向事件接收部680传送事件传送结束请求。最后,匹配率测量
部670删除匹配率测量表271的每一行并结束匹配率测量。
树重组管理部630基于树相关匹配率测量部130中测量的匹配率
135和匹配率测量部670中测量的匹配率275,决定是否重组事件模式
匹配树141。
接着,如果决定重组事件模式匹配树141,则树重组管理部630
向事件模式匹配树生成部620传送树重组请求。
树重组管理部630以固定的时间间隔从树相关匹配率测量部130
获取除了根属性名称之外的其他所有属性名称132及其匹配率135。
这里,根属性名称指示作为事件模式匹配树141的根节点192的属性
值匹配判定实例142的属性名称字段143中存储的属性名称502。
如果所获取的属性名称132和匹配率135中存在不少于一个的属
性名称132且这些属性名称132的匹配率135不大于固定值,则树重
组管理部630向匹配率测量表670传送匹配率测量开始请求。
接着,匹配率测量表670测量属性名称132的匹配率275。通过
向匹配率测量表670传送匹配率测量结束请求,树重组管理部630获
取匹配率测量表670所测量的匹配率275。
如果存在不少于一个的属性名称132且这些属性名称132的所获
取的匹配率275不大于固定值,树重组管理部630向事件模式匹配树
生成部620传送树重组请求,以请求事件模式匹配树141的重组。
事件模式匹配树生成部620生成事件模式匹配树141。当从树重
组管理部630接收到树重组请求时,事件模式匹配树生成部620生成
树,在该树中,保持有对应匹配率275较低的属性名称502的实例540
被置于树的较高级别。
事件模式匹配树生成部620在事件模式匹配树保持部140中记录
新生成的事件模式匹配树141。此外,当接收到事件模式登记请求514
和事件模式删除请求516时的处理与第一示例实施例的一样,所以省
略对其描述。
接下来将参照附图详细描述该示例实施例的操作。
由于事件500的事件匹配处理与第一示例实施例的相同,所以省
略对其描述。
树重组管理部630基于树相关匹配率测量部130和匹配率测量部
670测量的匹配率,决定是否重组事件模式匹配树141。
此外,树重组管理部630向事件模式匹配树生成部620传送树重
组请求。
图39是示出了树重组管理部630请求重组事件模式匹配树141
的操作的流程图。
此外,树重组管理部630从事件模式匹配树保持部140预先获取
属性值匹配判定实例142的属性名称字段143中存储的属性名称502,
其中该属性值匹配判定实例142是事件模式匹配树141根节点192。
树重组管理部630将其登记在根属性名称中。此外,在树重组管
理部630中,预先登记由匹配率测量部670用来判断是否测量匹配率
275的匹配率测量开始阈值。
此外,在树重组管理部630中,预先登记用于判断是否执行事件
模式匹配树141的重组的树重组开始阈值。
树重组管理部630以固定时间间隔从树相关匹配率测量部130作
为列表获取属性名称132及其匹配率135的对。随后,树重组管理部
630从所获取的列表中删除其中属性名称132与根属性名称一致的属
性名称132及其匹配率135的对,并生成删除完成列表(步骤Fi0)。
接着,树重组管理部630判定删除完成列表中是否存在相应匹配
率135不大于匹配率测量开始阈值的不少于一个的属性名称132(步
骤Fi1)。
如果存在不少于一个的相关属性名称132(步骤Fi1,是),为了
测量相关属性名称132的匹配率275,树重组管理部630向匹配率测
量部670传送匹配率测量开始请求(步骤Fi2)。具体地,将相关属性
名称132做成列表传送给匹配率测量部670。
此外,如果根本不存在相关属性名称132(步骤Fi1,否),处理
结束。
接下来,在预设的固定时间之后,树重组管理部630向匹配率测
量部670传送匹配率测量结束请求,并作为列表获取步骤Fi2中传送
的属性名称132及其匹配率275的对(步骤Fi3)。
接着,树重组管理部630判定所接收的匹配率275中是否存在不
大于树重组开始阈值的不少于一个的属性名称132。
如果存在相关属性名称132(步骤Fi4,是),树重组管理部630
向事件模式匹配树生成部620传送请求重组事件模式匹配树141的树
重组请求(步骤Fi5)。
如果不存在相关属性名称132(步骤Fi4,否),处理结束。
图40是示出了匹配率测量部670从树重组管理部630接收到匹配
率测量开始请求的情况下匹配率测量部670的操作的流程图。
匹配率测量部670从树重组管理部630接收到包括不少于一个属
性名称132在内的匹配率测量开始请求(步骤Fj0)。
接着,匹配率测量部670针对所接收的匹配率测量开始请求中包
括的每个属性名称132,执行步骤Fj1和步骤Fj2的处理。
首先,匹配率测量部670从事件模式表保持部150中获取包括与
属性名称132值相同的属性名称502的所有部分事件模式511(步骤
Fj1)。
接着,匹配率测量部670在匹配率测量表271中生成新的行,并
在属性名称272中存储属性名称502,在部分事件模式列表276中存
储获取的部分事件模式511的列表。随后,匹配率测量部670在接收
事件数目273中存储‘0’,在匹配事件数目274中存储‘0’,并在匹
配率275中存储‘0’(步骤Fj2)。
接着,匹配率测量部670确认是否针对所接收的匹配率测量开始
请求中包括的所有属性名称132执行了处理(步骤Fj3)。
针对所有属性名称132执行了处理(步骤Fj3,是),处理进行至
步骤Fj4。
如果存在未执行处理的属性名称132(步骤Fj3,否),处理返回
步骤Fj1。
接着,为了从事件接收部680接收事件500,匹配率测量部670
向事件接收部680传送事件传送开始请求(步骤Fj4)。
由此,从事件接收部680传送事件500,且匹配率测量部670测
量所接收的事件500的匹配率275(步骤Fj5)。
由于匹配率275的测量处理与第二示例实施例的相同,因此省略
对其描述。
图41是示出了匹配率测量部670从树重组管理部630接收到匹配
率测量结束请求的情况下匹配率测量部670的操作的流程图。
匹配率测量部670从树重组管理部630接收匹配率测量结束请求
(步骤Fk0)。
接着,为了结束从事件接收部680接收事件,匹配率测量部670
向事件接收部680传送事件传送结束请求(步骤Fk1)。
接着,匹配率测量部670向树重组管理部630传送所测量的匹配
率的列表(步骤Fk2)。
最后,匹配率测量部670删除匹配率测量表271中的所有行(步
骤Fk3)。
图42是示出了事件接收部680从匹配率测量部670接收到事件传
送开始请求时操作的流程图。
事件接收部680从匹配率测量部670接收事件传送开始请求(步
骤Fl0)。
接着,事件接收部680在传送模式存储部(未示出)中存储‘开
始’,以表示接收到传送开始请求(步骤Fl1)。
图43是示出了事件接收部680从匹配率测量部670接收到事件传
送结束请求时操作的流程图。
事件接收部680从匹配率测量部670接收事件传送结束请求(步
骤Fm0)。
接着,事件接收部680在传送模式存储部(未示出)中存储‘接
收’,以表示接收到传送接收请求(步骤Fm1)。
此外,传送模式存储部的初始状态是存储了‘结束’的状态。
图44是事件接收部680接收事件500时操作的流程图。
事件接收部680从事件输入操作方820接收事件500(步骤Fq0)。
事件接收部680确认传送模式存储部中是否存储了‘开始’(步骤
Fq1)。
如果存储了‘开始’(步骤Fq1,是),事件接收部680向树重组
管理部630传送事件500(步骤Fq2)。如果存储了‘结束’(步骤Fq1,
否),处理进行至步骤Fq3。
在步骤Fq3,事件接收部680向事件模式匹配判定部110传送事
件500(步骤Fq3)。
当接收到来自树重组管理部630的树重组请求时事件模式匹配树
生成部620执行事件模式匹配树141重组的处理与第一示例实施例的
相同,所以省略对其描述。
除了第一和第二示例实施例的效果,上述第三示例实施例的效果
还包括减少了事件模式匹配判定系统600的处理负荷。
原因在于如下结构。在该示例实施例中,匹配率测量部670部测
量所有属性名称502的匹配率275。取而代之,匹配率测量部670参
考树相关匹配率测量部130中测量的匹配率135,并选择具有相对较
低匹配率135的属性名称272。
匹配率测量部670只针对与属性名称272相对应的属性名称502,
正确地测量匹配率275。
[第四示例实施例]
下面,将参照附图具体描述本发明的第四示例实施例。下文中,
在不会导致本示例实施例的描述不清楚的前提下,省略了与前文描述
重复的内容。
在作为多个事件模式匹配树保持部中保持的事件模式匹配树141
的根节点192的属性值匹配判定实例142中,第四示例实施例测量属
性值匹配判定实例142中出现的属性名称502的匹配率135。
图46是第四示例实施例的结构框图。
参照图46,事件模式匹配判定系统700包括事件接收部780、树
管理部401和多个事件处理部402。
当从事件输入操作方820接收到事件500时,事件接收部780随
机选择多个事件处理部402之一。随后,事件接收部780向所选的事
件处理部402传送所接收到事件500。
树管理部401包括事件模式接收部160、事件模式表保持部150、
事件模式匹配树生成部740、全事件模式匹配树保持部750和树重组
管理部760。
树重组管理部760基于稍后所述的树根属性匹配率测量部(也称
为匹配率测量部)790中测量的匹配率135,决定是否重组事件模式匹
配树141。
树重组管理部760以固定时间间隔从所有的树根属性匹配率测量
部790获取匹配率135。
此外,树重组管理部760基于获取的匹配率135,决定是否重组
事件模式匹配树141。
此外,树重组管理部760基于获取的匹配率135,决定要在每个
事件处理部402的事件模式匹配树保持部140中保持的事件模式匹配
树141。随后,树重组管理部760针对所决定的事件模式匹配树141,
向事件模式匹配树生成部740传送树重组请求。
此外,树重组管理部760从全事件模式匹配树保持部750获取所
决定的事件模式匹配树141。随后,树重组管理部760将所决定的事
件模式匹配树141记录在每个事件处理部402的事件模式匹配树保持
部140中。
此外,树重组管理部760向树根属性匹配率测量部790传送属性
名称502,该属性名称存储在传送给事件模式匹配树保持部140的事
件模式匹配树141的根节点192中。
通过上述处理,可以使每个事件处理部302的树根属性匹配率测
量部790仅测量与事件模式匹配树保持部140中新记录的事件模式匹
配树141的根节点192中保持的属性名称502相对应的匹配率135。
事件模式匹配树生成部740基于接收到的树重组请求,执行事件
模式匹配树141的生成。随后,事件模式匹配树生成部740将生成的
事件模式匹配树141记录在全事件模式匹配树保持部750中。这样,
事件模式匹配树生成部740组织或重组事件模式匹配树141。
全事件模式匹配树保持部750保持与从事件模式匹配树生成部
740接收到的事件模式匹配树141的数目一样多的事件模式匹配树
141。
事件处理部402包括事件模式匹配判定部710、树根属性匹配率
测量部790和事件模式匹配树保持部140。
事件模式匹配判定部710执行事件500的匹配。
事件模式匹配判定部710从事件输入操作方820接收事件500。
随后,事件模式匹配判定部710使用事件模式匹配树保持部140
中保持的事件模式匹配树141,执行所接收的事件500的事件匹配。
随后,如果事件500与事件模式510匹配,事件模式匹配判定部
710将事件500传送给事件接收方830。
此外,如果基于作为事件模式匹配树141的根节点192的属性值
匹配判定实例142的数据来处理事件500,为了更新与属性值匹配判
定实例142所参考的属性名称502相对应的匹配率135,事件模式匹
配判定部710将属性值匹配判定实例142的属性名称字段143中存储
的属性名称502及其相应匹配结果传送给树根属性匹配率测量部790。
此外,由于匹配结果与第一示例实施例的匹配结果相同,所以在
此省略对其描述。
树根属性匹配率测量部790测量作为事件模式匹配树141的根节
点192的属性值匹配判定实例142中包括的属性名称502的匹配率
135。
树根属性匹配率测量部790保持图12所示结构的匹配率测量表
131,其与第一示例实施例的树相关匹配率测量部130相同。
然而,在树根属性匹配率测量部790保持的匹配率测量表131中,
作为事件模式匹配树141的根节点192的属性值匹配判定实例142中
包括的属性名称502存储在属性名称132中的第一行中。
由于匹配率测量表131的更新方法与第一示例实施例中描述的相
同,所以省略对其描述。
下面,将参照附图详细描述该示例实施例的操作。
作为前提,根据第四示例实施例,假设存在不少于属性名称502
的总数数目的事件处理部402。
首先,描述事件500的事件匹配操作。
当从事件输入操作方820向事件接收部780输入事件500时,事
件接收部780随机选择多个事件模式匹配判定部710之一。事件接收
部780将事件500传送给选定的事件模式匹配判定部710。
接着,事件模式匹配判定部710执行事件匹配并向事件500给予
所匹配的事件模式510的事件模式ID 512。事件模式匹配判定部710
向事件接收方830通知已给予了事件模式ID 512的事件500。
此外,事件模式匹配判定部710仅更新与事件模式匹配树141的
根节点192的属性名称502相对应的匹配率135。
即,相比于第一示例实施例的事件模式匹配判定部110,事件模
式匹配判定部710的不同之处仅在于下面的操作。
事件模式匹配判定部710只有在目标的属性值匹配判定实例142
是事件模式匹配树141的根节点192时,才在图15的步骤F83、图
16的步骤F88和步骤F89更新匹配率测量表131。
接下来,描述事件模式匹配树141的重组操作。
树重组管理部760基于树根属性匹配率测量部790测量的匹配率
135,决定要设定到每个事件处理部402的事件模式匹配树141。随后,
树重组管理部760向事件模式匹配树生成部740传送树重组请求,以
请求所决定的事件模式匹配树141。
图47是树重组管理部760请求重组事件模式匹配树141的操作的
流程图。
作为前提,假设树管理部401预先掌握了每个事件处理部402、
每个事件处理部402的树根属性匹配率测量部790和事件模式匹配树
保持部140的标识符(未示出),从而树管理部401能够传送这些标识
符。
树重组管理部760以固定时间间隔从所有的树根属性匹配率测量
部190获取匹配率135(步骤Fn0)。
接着,树重组管理部760针对事件模式匹配判定系统700保持的
所有属性名称502,决定其中相应的属性名称502被设定到根节点192
的事件模式匹配树141的数目,使得可以满足下面的第一和第二条件。
第一条件是使保持了匹配率135相对较低的属性名称502的实例
540尽可能地与作为事件模式匹配树141的根节点192的实例一样多。
第一条件的目的是使尽可能多的事件模式匹配判定部710可以参
考将保持了匹配率135相对较低的属性名称502的实例540作为根节
点192的事件模式匹配树141。
第二条件是,对于所有属性名称502,使保持每个属性名称502
的实例540是作为至少一个事件模式匹配树141的根节点192的实例
540。
第二条件的目的是针对所有属性名称502来测量匹配率135(步
骤Fn1)。
例如,在属性名称502的总数为n,事件处理部402的总数为m
的情况下,树重组管理部760决定事件模式匹配树141的数目为
(m-n+1),这些事件模式匹配树141将保持了具有最低对应匹配率135
的属性名称502作为根节点192。此外,类似地,树重组管理部760
决定将保持了具有最低对应匹配率135的属性名称502之外的其他属
性名称502作为根节点192的事件模式匹配树141的数目分别为1。
此外,树重组管理部760可以通过其他方法来决定上述事件模式
匹配树141的数目,使得例如这些数目可以与每个属性名称502具有
的匹配率135的倒数成比例。
接着,树重组管理部760向事件模式匹配树生成部740传送树重
组请求(步骤Fn2)。
接着,事件模式匹配树生成部740基于接收的树重组请求来执行
事件模式匹配树141的生成。随后,事件模式匹配树生成部740在全
事件模式匹配树保持部750中记录所生成的事件模式匹配树141(步
骤Fn3)。
接着,树重组管理部760随机决定要在每个事件处理部402的事
件模式匹配树保持部140中记录的事件模式匹配树141(步骤Fn4)。
接着,树重组管理部760对每个事件处理部402执行下面步骤
Fn5、步骤Fn6和步骤Fn7的处理。
首先,树重组管理部760从全事件模式匹配树保持部750获取要
在事件处理部402中的事件模式匹配树保持部140中记录的事件模式
匹配树141(步骤Fn5)。
接着,树重组管理部760在事件模式匹配树保持部140中记录所
获取的事件模式匹配树141(步骤Fn6)。
接着,树重组管理部760向事件处理部402中的树根属性匹配率
测量部790传送作为事件模式匹配树141的根节点192的实例540中
存储的属性名称502(步骤Fn7)。
接着,树重组管理部760判定是否针对所有事件处理部402执行
了处理(步骤Fn8)。如果已经针对所有事件处理部402完成了处理(步
骤Fn8,是),处理结束。此外,如果存在尚未完成处理的事件处理部
402,处理返回步骤Fn5。
图48是示出了树根属性匹配率测量部790更新匹配率测量表131
的操作的流程图。
树根属性匹配率测量部790从树重组管理部760接收事件模式匹
配树141的根节点192中存储的属性名称502(步骤Fp0)。
接着,树根属性匹配率测量部790删除在匹配率测量表131中登
记的行(步骤Fp1)。
接着,树根属性匹配率测量部790在匹配率测量表131中生成新
的行。树根属性匹配率测量部790分别在属性名称132中存储在步骤
Fp0接收的属性名称502,在接收事件数目133中存储‘0’,在匹配
事件数目134中存储‘0’,在匹配率135中存储‘0’(步骤Fp2)。
上述示例实施例的效果在于,除了第一示例实施例的效果,还减
少了事件模式匹配判定系统700的处理负荷。
原因在于,在作为多个事件模式匹配树保持部中保持的事件模式
匹配树141的根节点192的属性值匹配判定实例142中,测量事件模
式510中出现的属性名称502的匹配率135。
[第五示例实施例]
下面,将参照附图具体描述本发明的第五示例实施例。该示例实
施例是仅包括本发明基本元素的示例实施例。下文中,在不会导致本
示例实施例的描述不清楚的前提下,省略了与前文描述重复的内容。
图49是第五示例实施例的结构框图。
参照图49,该示例实施例包括事件模式匹配树生成部120、匹配
率测量部130和事件模式表保持部150。
事件模式表保持部150保持包括部分事件模式511的至少一个事
件模式510,该部分事件模式511包括属性名称502和属性值503。
匹配率测量部130基于包括属性501的事件以及事件模式表保持
部150中保持的事件模式510,测量与属性名称502相对应的匹配率
135,其中该属性501包括属性名称502和属性值503。
事件模式匹配树生成部120基于事件模式表保持部150中保持的
事件模式510以及匹配率测量部130测量的匹配率135,生成事件模
式匹配树141,该事件模式匹配树141将包括具有相对较低的相应匹
配率135的属性名称502在内的属性值匹配判定实例142排列在相对
较高级别。
上述示例实施例的效果在于,能够生成对于高效执行模式匹配判
定而言最优的事件模式匹配树。
原因在于,通过基于测量的匹配率135将包括具有较低的相应匹
配率135的属性名称502在内的实例540排列在较高级别节点191中,
来生成事件模式匹配树141。
因此,能够在事件模式匹配树的较高部分的处理中,即,在模式
匹配的较早阶段,发现所接收的事件与事件模式不匹配,即,高速执
行模式匹配判定。
上述每个示例实施例中描述的每个部分例如可以通过程序使计算
机执行预定处理。
这里,可以如图51所示通过通用计算机设备310来构造事件模式
匹配判定系统100、200、600和700。图51是示出了本发明的使用计
算机设备的示例实施例的结构的框图。
参照图51,计算机设备310包括CPU(中央处理单元)311、RAM
(随机存取存储器)312、ROM(只读存储器)313和存储设备(也
成为存储介质,例如硬盘设备)314。
此外,计算机设备310包括输入/输出接口部315。
在这种情况下,事件模式匹配判定系统100、200、600和700中
包括的每个部件对应于CPU 311、RAM 312、ROM 313和存储设备
314。类似地,第五示例实施例的事件模式匹配树生成部120和匹配率
测量部130对应于CPU 311、RAM 312、ROM 313和存储设备314。
CPU 311执行的程序存储在存储设备314中。此外,上述每个程序的
一部分可以存储在ROM 313。
CPU 311将存储设备314中存储的程序读入到RAM 312中,并基
于读取的程序,执行通过使用示出了每个示例实施例的操作的流程图
而描述的预定处理。
输入/输出接口部315基于CPU 311的指示,执行事件输入操作方
820、事件接收方830、事件模式管理方840、以及事件模式匹配判定
系统100、200、600和700之间的数据发送和接收。输入/输出接口部
315可以包括在事件模式匹配判定部110、210和710、事件模式接收
部160和260、以及事件接收部280、680和780中。
上述每个示例实施例中描述的每个部件不一定是独立的。例如,
每个部件可以实现为使得由一个模块实现多个部件,或者由多个模块
实现一个部件。每个部件的结构可以使得某一部件是其他部件的一部
分,或者某一部件的一部分和其他部件的一部分交叠。
此外,根据上述每个示例实施例,虽然以流程图形式顺序地描述
了多个操作,然而描述的顺序并不限制执行多个操作的顺序。因此,
当执行每个示例实施例时,在不破坏内容的情况下可以改变多个操作
的顺序。
此外,根据上述每个示例实施例,多个操作不限于在彼此不同的
时间来执行。例如,在执行某一操作期间,可以进行其他操作,或者
某一操作和其他操作的执行时间可以部分或完全交叠。
此外,根据上述每个示例实施例,虽然描述了某一操作为其他操
作的触发,然而本说明书不限制某一操作与其他操作之间的所有关系。
因此,当实施每个示例实施例时,在不破坏内容的情况下可以改变多
个操作的关系。此外,每个部件的每个操作的具体描述不限制每个部
件的每个操作。因此,当实施每个示例实施例时,在不破坏每个示例
实施例的情况下,可以在功能、性能和其他特性方面改变每个部件的
每个具体操作。
此外,可以按需和在可能情况下,通过硬件、软件或硬件和软件
的组合来实现上述每个示例实施例中的每个部件。
此外,每个部件的物理结构不限于上述示例实施例的描述,而可
以独立存在、组合式存在,或者可以分立构造。
上述示例实施例的部分或全部也可以描述为下面的补充说明,然
而它们不限于下述内容。
(补充说明1)
一种模式匹配装置,包括:
事件模式表保持部,保持包括部分事件模式的至少一个事件模式,
所述部分事件模式包括第一属性名称和属性值;
第一匹配率测量部,基于包括属性的事件和事件模式表保持部中
保持的所述事件模式,测量与所述第一属性名称相对应的第一匹配率,
其中所述属性包括第二属性名称和属性值;以及
事件模式匹配树生成部,基于事件模式表保持部中保持的所述事
件模式以及所述第一匹配率,生成事件模式匹配树,所述事件模式匹
配树将包括相应匹配率相对较低的所述第一属性名称在内的属性值匹
配判定实例排列在相对较高级别。
(补充说明2)
补充说明1中描述的模式匹配装置,其中,其特征在于所述第一
匹配率测量部执行所述属性与事件模式表保持部中保持的所述事件模
式中包括的部分或全部所述部分事件模式之间的匹配,并基于该匹配
的结果,测量每个所述第一属性名称的所述第一匹配率。
(补充说明3)
补充说明1中描述的模式匹配装置,其特征在于还包括:事件模
式匹配判定部,基于所述事件模式匹配树,执行所述事件的事件匹配;
其中
所述第一匹配率测量部基于事件模式匹配判定部的所述结果,测
量每个所述第一属性名称的所述第一匹配率。
(补充说明4)
补充说明3中描述的模式匹配装置,其特征在于还包括:树重组
管理部,基于所述第一匹配率,选择所述第一属性名称中的至少一个;
以及
第二匹配率测量部,执行所述属性与包括树重组管理部选择的属
性名称在内的部分事件模式之间的匹配,并基于该匹配的结果,测量
每个所述第一属性名称的第二匹配率;其中
所述事件模式匹配树生成部基于所述第二匹配率,生成所述事件
模式匹配树。
(补充说明5)
补充说明3中描述的模式匹配装置,其特征在于还包括:所述事
件模式匹配判定部;
多个事件处理部,包括所述第一匹配率测量部,所述第一匹配率
测量部测量与作为所述事件模式匹配树的根节点的属性值匹配判定实
例中包括的属性名称相对应的第一匹配率;
事件接收部,基于预先设定的标准,选择多个事件处理部之一,
并向该事件处理部传送接收的事件;
全事件模式匹配树保持部,保持事件模式匹配树生成部生成的所
述事件模式匹配树;以及
树重组管理部,基于事件处理部测量的每个所述第一匹配率,分
别决定向所述事件处理部传送的事件模式匹配树。
(补充说明6)
补充说明1到5之一中描述的模式匹配装置,其特征在于包括:
事件模式匹配树保持部,保持事件模式匹配树生成部生成的所述事件
匹配树。
(补充说明7)
一种模式匹配方法,包括:基于包括属性的事件以及事件模式表
保持部中保持的包括部分事件模式的事件模式,测量与所述部分事件
模式中包括的第一属性名称相对应的匹配率,其中所述属性包括第二
属性名称和属性值,所述部分事件模式包括所述第一属性名称和属性
值;以及
基于事件模式表保持部中保持的所述事件模式以及所述第一匹配
率,生成事件模式匹配树,所述事件模式匹配树将包括相应匹配率相
对较低的所述第一属性名称在内的属性值匹配判定实例排列在相对较
高级别。
(补充说明8)
补充说明7中描述的模式匹配方法,其中,其特征在于所述第一
匹配率的测量执行所述属性与所述事件模式表保持部中保持的所述事
件模式中包括的部分或全部所述部分事件模式之间的匹配,并基于该
匹配的结果,测量每个所述第一属性名称的所述第一匹配率。
(补充说明9)
补充说明7中描述的模式匹配方法,其特征在于还包括:基于所
述事件模式匹配树,执行所述事件的事件匹配;其中
所述第一匹配率的测量基于所述事件匹配的结果,测量每个所述
第一属性名称的所述匹配率。
(补充说明10)
补充说明9中描述的模式匹配方法,其特征在于还包括:基于所
述第一匹配率,选择所述第一属性名称中的至少一个;
执行所述属性与包括所选的第一属性名称在内的部分事件模式之
间的匹配,并基于该匹配的结果,测量每个所述第一属性名称的第二
匹配率;其中
所述事件模式匹配树的生成基于所述第二匹配率,生成所述事件
模式匹配树。
(补充说明11)
补充说明9中描述的模式匹配方法,其中,其特征在于所述事件
模式匹配树的生成将生成的所述事件模式匹配树传送给全事件模式匹
配树保持部,以及
基于每个所述第一匹配率,在所述全事件模式匹配树保持部中保
持的事件模式匹配树之中,决定要传送给所述事件模式匹配判断步骤
的事件模式匹配树,
所述基于所述事件模式匹配树的事件模式的匹配基于所决定的事
件模式匹配树,执行所述事件的匹配;以及
所述第一匹配率的测量基于该匹配的结果,测量与作为所述事件
模式匹配树的根节点的属性值匹配判定实例中包括的属性名称相对应
的第一匹配率。
(补充说明12)
一种记录有模式匹配程序的介质,所述模式匹配程序使计算机执
行如下处理:基于包括属性的事件以及事件模式表保持部中保持的包
括部分事件模式的事件模式,测量与所述部分事件模式中包括的第一
属性名称相对应的匹配率,其中所述属性包括第二属性名称和属性值,
所述部分事件模式包括所述第一属性名称和属性值;以及
基于事件模式表保持部中保持的所述事件模式以及所述第一匹配
率,生成事件模式匹配树,所述事件模式匹配树将包括相应匹配率相
对较低的所述第一属性名称在内的属性值匹配判定实例排列在相对较
高级别。
(补充说明13)
补充说明12中描述的记录有模式匹配程序的介质,其特征在于使
计算机执行处理,其中所述第一匹配率的测量执行所述属性与所述事
件模式表保持部中保持的所述事件模式中包括的部分或全部所述部分
事件模式之间的匹配,并基于该匹配的结果,测量每个所述第一属性
名称的所述第一匹配率。
(补充说明14)
补充说明12中描述的记录有模式匹配程序的介质,其特征在于使
计算机执行如下处理:基于所述事件模式匹配树,执行所述事件的事
件匹配;其中
所述第一匹配率的测量基于所述事件匹配的结果,测量每个所述
第一属性名称的所述第一匹配率。
(补充说明15)
补充说明14中描述的记录有模式匹配程序的介质,其特征在于使
计算机执行如下处理:基于所述第一匹配率,选择所述第一属性名称
中的至少一个;
执行所述属性与包括所选的第一属性名称在内的部分事件模式之
间的匹配,并基于该匹配的结果,测量每个所述第一属性名称的第二
匹配率;其中
所述事件模式匹配树的生成基于所述第二匹配率,生成所述事件
模式匹配树。
(补充说明16)
补充说明14中描述的记录有模式匹配程序的介质,其特征在于使
计算机执行处理,其中,所述事件模式匹配树的生成将生成的所述事
件模式匹配树传送给全事件模式匹配树保持部,以及
基于每个所述第一匹配率,在全事件模式匹配树保持部中保持的
事件模式匹配树之中,决定要传送给所述事件模式匹配判定步骤的事
件模式匹配树,
所述基于决定的事件模式匹配树的事件模式的匹配基于所决定的
事件模式匹配树,执行所述事件的事件匹配;以及
所述第一匹配率的测量基于该匹配的结果,测量与作为所述事件
模式匹配树的根节点的属性值匹配判定实例中包括的属性名称相对应
的第一匹配率。
(补充说明17)
一种模式匹配系统,包括:
事件模式表保持部,保持包括部分事件模式的至少一个事件模式,
所述部分事件模式包括第一属性名称和属性值;
第一匹配率测量部,基于包括属性的事件和事件模式表保持部中
保持的所述事件模式,测量与所述第一属性名称相对应的匹配率,其
中所述属性包括第二属性名称和属性值;以及
事件模式匹配树生成部,基于事件模式表保持部中保持的所述事
件模式以及所述第一匹配率,生成事件模式匹配树,所述事件模式匹
配树将包括相应匹配率相对较低的所述第一属性名称在内的属性值匹
配判定实例排列在相对较高级别。
(补充说明18)
补充说明17中描述的模式匹配系统,其中,其特征在于所述第一
匹配率测量部执行所述属性与所述事件模式表保持部中保持的所述事
件模式中包括的部分或全部所述部分事件模式之间的匹配,并基于该
匹配的结果,测量每个所述第一属性名称的所述第一匹配率。
(补充说明19)
补充说明17中描述的模式匹配系统,其特征在于还包括:事件模
式匹配判定部,基于所述事件模式匹配树,执行所述事件的事件匹配;
其中
所述第一匹配率测量部基于所述事件模式匹配判定部的匹配结
果,测量每个所述第一属性名称的所述第一匹配率。
(补充说明20)
补充说明19中描述的模式匹配系统,其特征在于还包括:树重组
管理部,基于所述第一匹配率,选择所述第一属性名称中的至少一个;
以及
第二匹配率测量部,执行所述属性与包括树重组管理部选择的属
性名称在内的部分事件模式之间的匹配,并基于该匹配的结果,测量
每个所述第一属性名称的第二匹配率;其中
所述事件模式匹配树生成部基于所述第二匹配率,生成所述事件
模式匹配树。
(补充说明21)
补充说明19中描述的模式匹配系统,其特征在于还包括:所述事
件模式匹配判定部;
多个事件处理部,包括所述第一匹配率测量部,所述第一匹配率
测量部测量与作为所述事件模式匹配的树根节点的属性值匹配判定实
例中包括的属性名称相对应的第一匹配率;
事件接收部,基于预先设定的标准,选择多个事件处理部之一,
并向该事件处理部传送接收的事件;
全事件模式匹配树保持部,保持事件模式匹配树生成部生成的所
述事件模式匹配树;以及
树重组管理部,基于事件处理部测量的每个所述第一匹配率,分
别决定向所述事件处理部传送的事件模式匹配树。
(补充说明22)
补充说明17到21之一中描述的模式匹配系统,其特征在于包括:
事件模式匹配树保持部,保持事件模式匹配树生成部生成的所述事件
匹配树。
虽然参照以上示例实施例描述了本发明,然而本发明不限于上述
示例实施例。可以在本发明的组成和细节上进行在本发明范围内本领
域技术人员能够理解的多种改变。
本申请要求2010年3月1日提交的日本专利申请No.2010-043954
的优先权,其公开全部结合在此。
工业应用性
本发明可以应用于例如广告分发系统和约会支持服务(存在服务)
等用途,其中广告分发系统将广告分发给与条件匹配的个人,在约会
支持服务中,当约定伙伴到达约定地点时进行通知。
附图标记说明
100 事件模式匹配判定系统
110 事件模式匹配判定部
120 事件模式匹配树生成部
130 树相关匹配率测量部
131 匹配率测量表
133 接收事件数目
134 匹配事件数目
135 匹配率
140 事件模式匹配树保持部
141 事件模式匹配树
142 属性值匹配判定实例
143 属性名称字段
144 *字段
145 哈希表
146 事件通知实例
147 事件模式ID列表
148 键
149 值
192 根节点
193 叶子节点
194 指针
150 事件模式表保持部
151 事件模式表
160 事件模式接收部
200 事件模式匹配判定系统
210 事件模式匹配判定部
220 事件模式匹配树生成部
260 事件模式接收部
270 匹配率测量部
271 匹配率测量表
272 属性名称
273 接收事件数目
274 匹配事件数目
275 匹配率
276 部分事件模式列表
280 事件接收部
310 计算机设备
311 CPU
312 RAM
313 ROM
314 存储设备
315 输入/输出接口部
500 事件
501 属性
502 属性名称
503 属性值
510 事件模式
511 部分事件模式
512 事件模式ID
513 事件模式登记请求
514 事件模式登记请求
515 事件模式删除请求
516 事件模式删除请求
600 事件模式匹配判定系统
620 事件模式匹配树生成部
630 树重组管理部
670 匹配率测量部
680 事件接收部
700 事件模式匹配判定系统
710 事件模式匹配判定部
740 事件模式匹配树生成部
760 树重组管理部
780 事件接收部
790 树根属性匹配率测量部
820 事件输入操作方
830 事件接收方
840 事件模式管理方
900 系统
901 节点
902 根节点
903 叶子节点
904 边
905 属性名称
906 属性值
907 订阅