[rules-users] Re: Drools performance issue
Mark Proctor
mproctor at redhat.com
Mon Jun 1 02:54:23 EDT 2009
Please send these emails to the user list (in cc) so everyone can help,
not directly to me.
Mark
jayadevan m wrote:
>
> Hi
>
> We have one performance(memory) issue in drools-5
>
> Our Scenario
>
> We have 3 entities
>
> Trip - Entity representing details about trip
>
> Driver - Entity for driver , it contain details about driver
>
> Assignments - details about each assignments (one driver may assigned
> to many trip)
>
> The rule is to find ,"Find overlapping between trip assignments"
>
> For Implementing this we take the Trip ,Driver And Assignments
> entities from Data base and put it into working memory
>
> For Small number of records this rule work well ,
>
> But we want to check it against 15000 driver ,331176 assignments and
> 12745 trips
>
> In that case it take huge amount of time for execution (rule firing )
>
>
>
> Rule is
>
> rule "Assignment Check"
>
> when
>
> $creVo: DriverAssignVO($drId: driverId ,$tid: tripId);
>
> $tripAssignment: TripVO(
>
> $tpid: tripId,
>
> $startDtmUtc: startDtmUtc,
>
> $endDtmUtc: endDtmUtc)
>
> and
>
> $trvo: TripVO(
>
> tripId != $tpid,
>
> tripId in ($tid),
>
> ((startDtmUtc >= $startDtmUtc &&
> startDtmUtc <= $endDtmUtc) ||
>
> (endDtmUtc >= $startDtmUtc && endDtmUtc <=
> $endDtmUtc)));
>
> $crvo: DriverAssignVO($drvrId: driverId , driverId ==
> $drId , tripId != $tid, tripId == $tpid)
>
> then
>
> System.out.println("TRIP ID: " + $crvo.getTripId());
>
> end
>
>
>
> thanks and regards
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20090601/dd02c036/attachment.html
More information about the rules-users
mailing list