[rules-users] Shadow Facts - What you always wanted to know...

Godmar Back godmar at gmail.com
Wed Feb 20 21:13:17 EST 2008


I'm replying to this thread without having read your blog post.

When revising your design for how to represent facts, consider uses of
Drools. Currently, all facts need to be mapped to beans; either via
custom Java classes, either static or dynamically generated ones. Mark
indicated that he leans towards a runtime bean generation for the
performance advantages that would entail. Clearly, performance is
important for many uses of Drools - particularly large rule bases in
which facts are repeatedly inserted, updated, and retracted and in
which truth maintenance is performed.

I'm however using Drools for tasks that are somewhat ad-hoc, but
nevertheless in my view are best expressed as rules. I collect some
facts, throw them in working memory, fire all rules once, harvest the
results and discard the working memory. I do that repeatedly, but
during each iteration the structure of the facts inserted may change.
In such a scenario, any runtime generation would not pay off. You may
say that a rule engine such as Drools is not appropriate for this
application, but I'd disagree - I find declarative rules the best way
to express the application logic I'd otherwise have to implement (I do
use, for instance, insertLogical). In short, I'm using Drools not for
its performance in dealing with large rule bases and working memories,
but for the ease of expression and integration with the rest of the
Java platform. Drools should support such ease of expression and
integration.

 - Godmar

On Wed, Feb 20, 2008 at 8:35 PM, Edson Tirelli <tirelli at post.com> wrote:
>
>    ... but was afraid to ask.
>
>     Following up on our discussions here in the mailing list, I decided to
> write a blog throwing some light on this shadowy subject.
>
> http://blog.athico.com/2008/02/shadow-facts-what-you-always-wanted-to.html
>
>    Hope things are a bit clear now. Let me know if you have suggestions,
> questions or (constructive) criticism. :)
>
>     []s
>     Edson
>
> --
>   Edson Tirelli
>   JBoss Drools Core Development
>   Office: +55 11 3529-6000
>    Mobile: +55 11 9287-5646
>   JBoss, a division of Red Hat @ www.jboss.com
> _______________________________________________
>  rules-users mailing list
>  rules-users at lists.jboss.org
>  https://lists.jboss.org/mailman/listinfo/rules-users
>
>



More information about the rules-users mailing list