`
w800927
  • 浏览: 118132 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

drools 规则引擎 over window:time(1d)的问题

阅读更多

drl文件中定义

 

package com.sample


declare Activity
@role( event )
@timestamp(txTime)
end

 

rule "totaltimessrule"
salience 1
when
$account:Account($accountnumber:accountnumber) from entry-point ActivityStream
$totaltimes:Number(intValue >= 20)from accumulate(
$Activity:Activity() over window:time(1d) from entry-point ActivityStream, count($Activity))
then
System.out.println($accountnumber);
System.out.println(drools.getRule().getName());
end

 

然后在java代码中插入的Activity的txtime(规则引擎的时间戳)全为 2011-6-1

时钟采用realtime实时时钟,执行时间为2011-6-7

采用滑动窗口over window:time(1d)按说应该取自实时时钟2011-6-7当天数据作为活动窗口数据,也就是说没有数据,按说将不会触发该规则,为啥触发了呢,而且每次执行结果具有不确定性

分享到:
评论
2 楼 w800927 2011-06-08  
据说是drools的一个bug
http://drools.46999.n3.nabble.com/Re-Using-Sliding-Time-Window-usage-in-Drools-Fusion-v5-0-1-td415473.html
最后采用了

declare CurrentTime
    @role( event )
end

declare MyEvent
    @role( event )
    @timestamp(eventDateTime)
end

rule "Rule1"
when
    $now: CurrentTime() from entry-point "My Stream"
    //The following should fetch all events occurred in the last 2 seconds)
    $event: MyEvent(this before[2s, 2s] $now) from entry-point "My Stream"
then
    System.out.println($event.getEventName() + ": Event Occured!!!" +      $event.getEventDateTime().toString());
end

作为权宜之计
1 楼 w800927 2011-06-08  
后来改为stream mode还是没有解决,还在解决中

相关推荐

    Drools规则引擎从入门到精通

    1 Drools简介1.1 Drools的作用1.2 使用规则引擎的优势1.3 规则引擎应用场景2 Drools初体验2.1 构建项目2.2 案例描述 2.3 代码实现3 Drools语法介绍3.1 规则文件的组成3.2 规则体语法结构3.3 Pattern模式匹配 ...

    Drools规则引擎从入门到精通源码

    从基础讲起,结合应用场景,由浅到深细化讲解drools规则引擎的的相关知识,并结合具体实例,演示功能的使用和注意事项。后面通过搭建具体的项目并结合springboot框架联合使用Drools的相关知识包括决策表的使用,囊括...

    Drools规则引擎Drools规则引擎

    Drools是Jboss公司旗下一款开源的规则引擎,它完整的实现了Rete 算法;提供了强大的Eclipse Plugin开发支持; 通过使用其中的DSL(Domain Specific Language),可以实现用自然语言方式来描述业务规则,使得业务分析...

    Drools 规则引擎的介绍及应用

    Drools 规则引擎的介绍及应用,全面介绍了Drools的规则集文件语法

    Drools规则引擎及教程

    Drools规则引擎及教程,需在jdk1.6下运行,不缺jar包

    Drools规则引擎实现原理及示例

    Drools规则引擎是一种嵌套在应用程序中的组件, 是用Java语言编写的开放源码规则引擎,使用Rete算法对所编写的规则求值。 它实现了将业务规则从程序代码忠分离出来,规则引擎使用特定的语法编写业务规则,规则引擎...

    drools规则引擎系统概要设计.pdf

    drools规则引擎系统概要设计.pdf

    Drools规则引擎介绍.ppt

    drools规则引擎,了解规则匹配,专家系统的可以学习一下,java的同学也可以学习一下,各大厂也在用哦

    Drools规则引擎手册.zip

    一个关于drools规则引擎的说明文档,说明的很详细,包括对drools的简介,运行方式介绍,语言编写教程,集成和测试教程,同时包括一些案例,应该是由外文文档进行的翻译

    Drools规则引擎

    描述Drools规则引擎的相关内容,并讲述java环境下如何集成drools工具实现规则的推理

    规则引擎Drools入门实战案例

    4、规则引擎是相对独立的,只关心业务规则,使得业务分析人员也可以参与编辑、维护系统的业务规则 5、减少了硬编码业务规则的成本和风险 6、使用规则引擎提供的规则编辑工具,使复杂的业务规则实现变得的简单 对于...

    Drools规则引擎介绍

    Drools规则引擎介绍,Drools规则引擎介绍,Drools规则引擎介绍

    Drools规则引擎样例系统

    基于Drools规则引擎开发的一个规则验证样例系统,包含java代码源码、规则源码及所依赖的jar包。

    从Drools规则引擎到风控反洗钱系统V0.2.3

    从Drools规则引擎到风控反洗钱系统V0.2.3

    drools规则引擎实例

    该技术指南为开源的,内容少一些, 但做入门是没有什么问题的,如果有需要可以联系我 特此声明: 小编出新版本的Drools技术指南的文档啦,相比之前的免费版添加了如下特点: 1. 内容更加全面,更多细节,更多知识点...

    Drools 规则引擎开发教程

    Drools(JBoss Rules )具有一个易于访问企业策略、易于调整以及易于管理的开源业务规则引擎,符合业内标准,速度快、效率高。业务分析师或审核人员可以利用它轻松查看业务规则,从而检验是否已编码的规则执行了所需...

    Drools规则引擎.ppt

    Drools规则引擎

    基于Drools的规则引擎实例(完整、可运行eclipse工程)

    基于Drools的规则引擎实例(完整、可运行eclipse工程)。 Drools 规则引擎

Global site tag (gtag.js) - Google Analytics