我正在编写一些代码来评估数据库中的数据,以查看传入事件流中的实例是否符合一组协议。我们的想法是使用pyDatalog来完成这个任务。理想情况下,我们希望能够根据几个独立的规则集来评估数据,这些规则集定义了事件应该遵循的单独协议。
换句话说,是否有可能创建几个逻辑独立的pyDatalog会话,每个会话都有自己的规则集,但从相同的底层数据库获取数据?
发布于 2013-08-27 15:45:10
计划在0.14版中支持多个规则集,以及线程安全。
对于当前和以前的版本,只要没有谓词名称冲突,就可以将不同的规则集存储在同一个pyDatalog会话中。例如,您可以在每个谓词前面加上它所属的规则集的标识符。然后,通过调用适当的谓词,您将激活相关的规则集,而不会造成明显的性能损失。
对于前缀谓词(引用python类,例如Employee.idX==Y),您需要创建具有适当前缀的python子类。你可以看到一些性能下降,但应该是很小的。
https://stackoverflow.com/questions/18333973
复制相似问题