Hey Edson,
Right now we use only one builder and we add one large file. In the past
we used multiple builders and files but using a single builder with one
large file is much faster. I will have to gather the timing for the
differences for the package call versus adding to the kbase. Right now
we only collect the combined time.
We are still on an older version but are upgrading now to 5.2. I'll let
you know if the new API helps. I'll give trunk a shot but I won't be
able to use it because we are targeting having this large rulebase in
production in mid-February.
For reference our current largest production rulebase is ~76,000 rules.
Those rules take around 7 minutes to add to the package and the rulebase
in a JVM with 2GB of allocated heap.
Thanks
Joe
This message is confidential. It may also be privileged or otherwise
protected by work product immunity or other legal rules. If you have
received it by mistake, please let us know by e-mail reply and delete it
from your system. You may not copy this message or disclose its contents
to anyone. The integrity and security of this message cannot be
guaranteed on the Internet.
From: rules-users-bounces(a)lists.jboss.org
[mailto:rules-users-bounces@lists.jboss.org] On Behalf Of Edson Tirelli
Sent: Thursday, January 13, 2011 10:14 AM
To: Rules Users List
Subject: Re: [rules-users] large rulebase load time
Joe,
To be honest, I don't know. My guess is it would be a bit faster as
the consequence would be compiled only once, but I have no numbers to
compare... question: are you using a single builder and adding multiple
files/rules to it, or are you using one builder per file? Is your
application spending most of the time on the builder or adding rules to
the kbase? I see you are still using the old API (method
addPackageFromDRL())... does the new API make any difference? Also, I
know Tihomir was improving perf in trunk by caching the configuration
file... did you tried trunk? Does it make difference for you?
Edson
2011/1/13 Joe White <Joe.White(a)recondotech.com>
For a large rulebase (200k+ rules) will the call to
addPackageFromDrl(drlString) run faster if the number of rules is
smaller but the rules include more || statements between predicates?
There is only one type of object ever inserted in working memory and I
have many rules with the same RHS. I can collapse those rules into one
LHS with ors between the predicates in the object, but I would only go
through the effort of optimizing if it would improve load time.
Thanks for your help.
Joe
This message is confidential. It may also be privileged or otherwise
protected by work product immunity or other legal rules. If you have
received it by mistake, please let us know by e-mail reply and delete it
from your system. You may not copy this message or disclose its contents
to anyone. The integrity and security of this message cannot be
guaranteed on the Internet.
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
--
Edson Tirelli
JBoss Drools Core Development
JBoss by Red Hat @
www.jboss.com