是否有运行out of core的产生式规则系统的实现
我已经检查了像CLIPS和Jess这样的开源实现,但这些实现只在内存中运行,所以当操作大量的事实和规则(例如数十亿/万亿)时,它们往往会崩溃或强制进行大量的磁盘交换。
我正在尝试使用Django的对象关系映射来移植一个简单的规则引擎,比如Pychinko到SQL后端。然而,支持在剪辑中找到的功能级别将是非常重要的,我不想重新发明轮子。
有没有扩展生产规则系统的替代方案?
发布于 2011-06-12 23:37:07
您可以查看JENA和类似的RDF规则引擎,它们是为处理非常大的事实数据库而设计的。
发布于 2011-06-24 01:04:01
这不是对你问题的直接回答,但它可能会给你提供一个解决问题的思路。
早在80年代和90年代,我们就部署了一种信息检索系统,允许非常大量的标准查询。具体地说,我们的系统有64MB的内存(这在当时是一个沉重的负担),每天接收超过一百万条消息,并针对该流应用10,000个100,00+标准查询。
如果我们所做的一切只是针对最新的文档迭代地应用每个标准查询,那么我们就死定了。我们所做的是执行一种查询的inversion,特别是识别查询中必须具有和可能具有的术语。然后,我们使用文档中的术语列表来查找那些有可能成功的查询。客户学会了创建具有很强差异性的查询,因此,有时只需要对10到20个查询进行全面评估。
我不知道您的数据集,也不知道您的规则是什么样子,但您可以尝试一些类似的东西。
https://stackoverflow.com/questions/6311829
复制相似问题