[rules-users] optimization on a lot of simple rules
nesta
nesta.fdb at 163.com
Mon Jul 20 02:29:38 EDT 2009
I have one idea, which convert 1000 rules into 1000 Product facts, insert
these Product facts first. And I can use pool to manager the working memory.
In runtime, I can insert another Consumption fact into working memory.
So I can change 1000 rules into one rule:
rule "product_matching"
when
Consumption ($id : productId)
Product ( id == $id)
then
decision.setPrice($id);
end
Do you think that this is a good way?
Wolfgang Laun-2 wrote:
>
> It's difficult to suggest an optimized form for your rules 1-infinity,
> since
> we do not know what you want to achieve.
>
> The crude duplication of rules where only the constant to be matched with
> Product.id varies can, most likely, be avoided.
>
> -W
>
>
>
> On Sun, Jul 19, 2009 at 3:15 PM, nesta <nesta.fdb at 163.com> wrote:
>
>>
>> Hi,
>>
>> I am a newbie in drools. There are a lot of simple rules in a scenario.
>> For example
>> rule 1
>> when
>> Product( id ==1, usage == 1)
>> $decision : Decision()
>> then
>> $decision.setValue(1);
>> end
>>
>> rule 2
>> when Product( id ==2, usage == 1)
>> $decision : Decision()
>> rule 3
>> when Product( id ==3, usage == 1)
>> $decision : Decision()
>> rule 4
>> when Product( id ==4, usage == 1)
>> $decision : Decision()
>> rule 5
>> when Product( id ==5, usage == 1)
>> $decision : Decision()
>> ......
>>
>> I have a Product fact whose id = 5 and usage = 1, in my first thinking,
>> only
>> rule 5 is matched, there should be not much more different between 1 rule
>> and a lot of rules in runtime.
>>
>> But the result shows that they are different. More rules will cost more
>> time. If there are 1 thousand rules, some Node and Sink will execute 1
>> thousand times.
>>
>> My question is how to optimize this scenario?
>> --
>> View this message in context:
>> http://www.nabble.com/optimization-on-a-lot-of-simple-rules-tp24556724p24556724.html
>> Sent from the drools - user mailing list archive at Nabble.com.
>>
>> _______________________________________________
>> rules-users mailing list
>> rules-users at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/rules-users
>>
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
--
View this message in context: http://www.nabble.com/optimization-on-a-lot-of-simple-rules-tp24556724p24564616.html
Sent from the drools - user mailing list archive at Nabble.com.
More information about the rules-users
mailing list