I've seen the recommendations on when to use a rule base system (RBS) (re.
thread "JESS: Need of a Rule Based System!!!" started by Sachin and the thread
"JESS: Data constraint management " started by Robert Quillen.)  I wonder,
though, about when you have a REALLY big system.  I am now working on a project
for a time and attendance system.  I can imagine it handling ten to twenty
thousand employees.  (So that would be ten to twenty thousand facts.)  The rules
to pay these individuals are very complex (on the order of hundreds of rules).
Each employee would have two to six "clocking events" per day.  (That would
potentially be six times twenty thousand more facts.)  There can be ten to a
hundred different people adding/changing facts at any given time.

So I'd like to use an RBS, but can it handle it?  I can't imagine keeping all
that data in memory.  So how efficient would the engine be at
reading/representing this information in an SQL table?  I've seen Thomas
Barkenow's RDBS extension.  It basically is wrapper for creating individual
SELECT statements for each rule to find it's facts.  But I can't imagine that is
very efficient.  It gets the job done, but it would be murder for a large
system.   I can see a case where it would use two SELECT statements instead of
using a JOIN.

How efficient are these RBS when there is a large number of facts being
added/changed?  What would happen if power was suddenly lost.  Would anything
get lost?  (That would be a bad thing, especially since we are dealing with
people's pay!)  How would it recover?

In the case of JESS, how thread safe is it?

-Chuck.


---------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the
list (use your own address!) List problems? Notify [EMAIL PROTECTED]
---------------------------------------------------------------------

Reply via email to