首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用具有大型(100万或更多)规则的Drools

使用具有大型(100万或更多)规则的Drools
EN

Stack Overflow用户
提问于 2018-02-16 00:56:33
回答 1查看 379关注 0票数 2

我们正在为一个医疗相关的软件应用程序评估Drools。我们最初的规则集大约是25k,但随着时间的推移,这个规则集将增长到超过一百万。下面是典型规则的结构:

代码语言:javascript
复制
when item contains the codes "1234" AND "5678" 
  AND does not include "ABC123" 
then [show some message]

被评估的项目将包含一个代码数组作为它的事实。我们正在尝试做的是创建一个推荐引擎来指导用户对项目进行合规性更改。我担心的是,如果Drools不评估所有"when“语句来查找匹配的规则,我们就不能有选择地过滤应该触发的规则。如果我们有数百万条规则(我们的一些竞争对手估计有300多万条),这是Drools可以处理的吗,还是我们应该寻找其他地方?

事务负载并不重,这意味着一个事务可能只有几十到几百个项目需要通过该过程。这里的大多数帖子都提到了相反的问题,评估了数百万条记录的数百条规则。

任何指导都是非常感谢的!

EN

回答 1

Stack Overflow用户

发布于 2018-08-13 17:44:17

这是陈旧的,但我还是想回答。考虑到Drools有一个RETE实现,它的目标是优化和排除不相关的规则。但是,要实现这一点,您的数据模型必须是兼容的,并且在条件中使用更简单的属性。

也就是说,你应该先做一个分类,然后定义像<object>.<property>这样的事实,然后在它上面执行规则,而不是<array> [NOT] contains <x>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48812474

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档