比较数据集而不重新比较的最佳方法

时间:2018-08-04 06:25:16

标签: javascript rule-engine nools

我正在针对多个节点运行规则引擎。运行规则时,如果找到结果,它将创建更多节点,归类为“结果”。

我的问题是,如果我想再次运行规则引擎,这可能与新数据,已经运行的旧数据或两者的混合在一起,不重复节点规则的最佳方法是什么?已经比较过?

规则引擎如何工作:

您传入一个数据集,在这种情况下为节点。这些都是“事实”。然后,您针对两个“事实”定义一条规则,例如nodeA.name == nodeB.name。如果返回true,则将其添加到结果中。

现在,如果我有一个庞大的数据集,则对已经比较过的数据重新运行规则不是一个好主意。

现在有很多因素可以做到这一点。如果我比较了两个节点,但是第一次比较它们的“名称”,而下次我比较它们的“颜色”,该怎么办?在这种情况下,我想在这些节点上重新运行规则。我不能只是将一个数组放到与该节点比较过的其他节点上。

我想知道是否有任何有关这一理论的文章?或者有人知道最好的处理方式,基本上是检查两个数据是否已经比较。

0 个答案:

没有答案