Re: [rules-users] [planner] Problem setting configuration file
I was wondering now if I can achieve the same with the drools rule file. That's a bit harder, but not that hard. Look in the Drools Planner manual for setRuleBase() (as an alternative to using scoreDrl's in your SolverConfig.xml) and look in the Drools Expert manual on how to create a RuleBase. Op 13-10-11 15:37, Guilherme Kunigami schreef: Geoffrey, Thank you, that worked! I was wondering now if I can achieve the same with the drools rule file. The method below wouldn't work because it's not me who load the file (I think it's at AbstractSolverConfig.buildRuleBase, which seems to use getResourceAsStream too). 2011/10/11 Geoffrey De Smet ge0ffrey.s...@gmail.com mailto:ge0ffrey.s...@gmail.com Hi Guilharme, There's an overloaded method called configure(InputStream in) and configure(Reader reader) too, use either of those instead: try { InputStream in = new FileInputStream(/path/to/xml/file/SolverConf.xml); configurer.configure(in); } finally { IOUtils.closeSilently(in); } Op 11-10-11 15:01, Guilherme Kunigami schreef: Hi, I'm trying to load a configuration file (namely SolverConf.xml) into XmlSolver with the code below: XmlSolverConfigurer configurer = new XmlSolverConfigurer(); configurer.configure(SOLVER_CONFIG); Solver solver = configurer.buildSolver(); If I bundle SolverConf.xml file with the application .jar file, then using SOLVER_CONFIGas /path/to/xml/file/SolverConf.xmlworks fine. But I want to use SolverConf.xml outside the .jar, so I can easiliy edit it, but I don't know what path should I pass to it. I know it's a Java related question, but I was wondering if anyone had a similar problem when configuring drools planner. (I've asked on stackoverflow, but none of the answers worked for me: http://stackoverflow.com/questions/7718807/can-getresourceasstream-find-files-outside-the-jar-file) (Supposing my .jar is in /some/path and the SolverConf.xml will be on /some/path/conf for example) Thanks, ___ rules-users mailing list rules-users@lists.jboss.org mailto:rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users -- With kind regards, Geoffrey De Smet ___ rules-users mailing list rules-users@lists.jboss.org mailto:rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users -- With kind regards, Geoffrey De Smet ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users
Re: [rules-users] [planner] The presumed score is corrupted
A corrupted score normally indicates a problem with the Move implementation (or sometimes the score drl). Basically this happened: for a number of moves, it did the move, calculated the score and undo the move. One of those move was associated with a score -10hard/0soft, that was the best one. Now, it does that move (which is now called the step) and when it calculates the score it's a different score 0hard/0soft. Try TRACE environment and see if it crashes sooner. Copy paste your Move implementation here. In Planner 5.4 there will be 2 out-of-the-box Move implementations to use, so writing Move's become optional. Op 13-10-11 16:37, Guilherme Kunigami schreef: Hi, I've implemented a very simple application using drools planner consisting of a bunch of activities. My rule file is very simple too and just counts the number of activities not assigned. When I run Solver.solve(), I get the following error message: Exception in thread AWT-EventQueue-0 java.lang.IllegalStateException: The presumedScore (-10hard/0soft) is corrupted because it is not the realScore (0hard/0soft). Presumed workingMemory: Score rule (remainingActivitiesCount) has count (1) and weight total (11). Real workingMemory: Score rule (remainingActivitiesCount) has count (1) and weight total (0). I've tracked down this message and found this piece of code @DefaultLocalSearchSolver.solveImplementation(): // there is no need to recalculate the score, but we still need to set it localSearchSolverScope.getWorkingSolution().setScore(localSearchStepScope.getScore()); if (assertStepScoreIsUncorrupted) { localSearchSolverScope.assertWorkingScore(localSearchStepScope.getScore()); } It seems that the working score is never updated along the algorithm, but the score in the working memory changes. Thus, when we use the DEBUG environment, assertStepScoreIsUncorrupted is turned on and the assertion fails. Should the score be updated or am I using the library incorrectly? Thanks, ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users -- With kind regards, Geoffrey De Smet ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users
Re: [rules-users] [planner] The presumed score is corrupted
Probably you forgot to notify the workingMemory.update in the doMove method: public void doMove(WorkingMemory workingMemory) { FactHandle factHandle = workingMemory.getFactHandle(activity); activity.setAssignee(...); workingMemory.update(factHandle, activity); } Op 14-10-11 09:21, Geoffrey De Smet schreef: A corrupted score normally indicates a problem with the Move implementation (or sometimes the score drl). Basically this happened: for a number of moves, it did the move, calculated the score and undo the move. One of those move was associated with a score -10hard/0soft, that was the best one. Now, it does that move (which is now called the step) and when it calculates the score it's a different score 0hard/0soft. Try TRACE environment and see if it crashes sooner. Copy paste your Move implementation here. In Planner 5.4 there will be 2 out-of-the-box Move implementations to use, so writing Move's become optional. Op 13-10-11 16:37, Guilherme Kunigami schreef: Hi, I've implemented a very simple application using drools planner consisting of a bunch of activities. My rule file is very simple too and just counts the number of activities not assigned. When I run Solver.solve(), I get the following error message: Exception in thread AWT-EventQueue-0 java.lang.IllegalStateException: The presumedScore (-10hard/0soft) is corrupted because it is not the realScore (0hard/0soft). Presumed workingMemory: Score rule (remainingActivitiesCount) has count (1) and weight total (11). Real workingMemory: Score rule (remainingActivitiesCount) has count (1) and weight total (0). I've tracked down this message and found this piece of code @DefaultLocalSearchSolver.solveImplementation(): // there is no need to recalculate the score, but we still need to set it localSearchSolverScope.getWorkingSolution().setScore(localSearchStepScope.getScore()); if (assertStepScoreIsUncorrupted) { localSearchSolverScope.assertWorkingScore(localSearchStepScope.getScore()); } It seems that the working score is never updated along the algorithm, but the score in the working memory changes. Thus, when we use the DEBUG environment, assertStepScoreIsUncorrupted is turned on and the assertion fails. Should the score be updated or am I using the library incorrectly? Thanks, ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users -- With kind regards, Geoffrey De Smet ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users -- With kind regards, Geoffrey De Smet ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users
Re: [rules-users] Regession in 5.3.0-CR1: .drl file ending in a single line comment w/o EOL not accepted
Do you want a new Jira issue raised for this? From: rules-users-boun...@lists.jboss.org [mailto:rules-users-boun...@lists.jboss.org] On Behalf Of Swindells, Thomas Sent: 12 October 2011 11:09 To: Rules Users List (rules-users@lists.jboss.org) Subject: [rules-users] Regession in 5.3.0-CR1: .drl file ending in a single line comment w/o EOL not accepted While in the process of upgrading to the latest version of drools I've just been hit by a regression where .drl file ending in a single line comment w/o EOL not accepted (https://issues.jboss.org/browse/JBRULES-2041) This was fixed and works in 5.1.1 but appears to be broken again :( The original Jira appears to be an exactly the same as what I'm experiencing now. Thomas ** This message is confidential and intended only for the addressee. If you have received this message in error, please immediately notify the postmas...@nds.commailto:postmas...@nds.com and delete it from your system as well as any copies. The content of e-mails as well as traffic data may be monitored by NDS for employment and security purposes. To protect the environment please do not print this e-mail unless necessary. NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18 4EX, United Kingdom. A company registered in England and Wales. Registered no. 3080780. VAT no. GB 603 8808 40-00 ** ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users
[rules-users] Fwd: Ocassional Refresh of Knowledgeagent (Only If There is any Change)
Open for comment. -- Forwarded message -- From: ayon.chakrabo...@genworth.com Date: 14 October 2011 12:43 Subject: Ocassional Refresh of Knowledgeagent (Only If There is any Change) Hi Michael, I am using ResourceChangeScannerService to scan the resources in our application. But it seems that after every specified interval we get a new KnowledgeAgent(whether it is changed or not). Is there any way where I can check using some Listener only if there is any change or the package is built in guvnor only then we can get a new Knowledgeagent. Thanks, Ayon ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users
Re: [rules-users] Fwd: Ocassional Refresh of Knowledgeagent (Only If There is any Change)
But wouldn't the KnowledgeAgent be created as part of an application, by application code. Why should it ever be recreated, changes in the knowledge base or no changes? -W 2011/10/14 Michael Anstis michael.ans...@gmail.com Open for comment. -- Forwarded message -- From: ayon.chakrabo...@genworth.com Date: 14 October 2011 12:43 Subject: Ocassional Refresh of Knowledgeagent (Only If There is any Change) Hi Michael, I am using ResourceChangeScannerService to scan the resources in our application. But it seems that after every specified interval we get a new KnowledgeAgent(whether it is changed or not). Is there any way where I can check using some Listener only if there is any change or the package is built in guvnor only then we can get a new Knowledgeagent. Thanks, Ayon ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users
Re: [rules-users] [planner] The presumed score is corrupted
2011/10/14 Geoffrey De Smet ge0ffrey.s...@gmail.com ** Probably you forgot to notify the workingMemory.update in the doMove method: public void doMove(WorkingMemory workingMemory) { FactHandle factHandle = workingMemory.getFactHandle(activity); activity.setAssignee(...); workingMemory.update(factHandle, activity); } Op 14-10-11 09:21, Geoffrey De Smet schreef: A corrupted score normally indicates a problem with the Move implementation (or sometimes the score drl). Basically this happened: for a number of moves, it did the move, calculated the score and undo the move. One of those move was associated with a score -10hard/0soft, that was the best one. Now, it does that move (which is now called the step) and when it calculates the score it's a different score 0hard/0soft. Try TRACE environment and see if it crashes sooner. Copy paste your Move implementation here. Using the TRACE environment gave the same results of DEBUG. Here's my move implementation, as well as the snipet of drools rule file that calculates the score based on remaining activities: http://pastebin.mozilla.org/1355014 In Planner 5.4 there will be 2 out-of-the-box Move implementations to use, so writing Move's become optional. Cool! By the way, I'm using Drools 5.2.0 final. Thanks, Op 13-10-11 16:37, Guilherme Kunigami schreef: Hi, I've implemented a very simple application using drools planner consisting of a bunch of activities. My rule file is very simple too and just counts the number of activities not assigned. When I run Solver.solve(), I get the following error message: Exception in thread AWT-EventQueue-0 java.lang.IllegalStateException: The presumedScore (-10hard/0soft) is corrupted because it is not the realScore (0hard/0soft). Presumed workingMemory: Score rule (remainingActivitiesCount) has count (1) and weight total (11). Real workingMemory: Score rule (remainingActivitiesCount) has count (1) and weight total (0). I've tracked down this message and found this piece of code @DefaultLocalSearchSolver.solveImplementation(): // there is no need to recalculate the score, but we still need to set it localSearchSolverScope.getWorkingSolution().setScore(localSearchStepScope.getScore()); if (assertStepScoreIsUncorrupted) { localSearchSolverScope.assertWorkingScore(localSearchStepScope.getScore()); } It seems that the working score is never updated along the algorithm, but the score in the working memory changes. Thus, when we use the DEBUG environment, assertStepScoreIsUncorrupted is turned on and the assertion fails. Should the score be updated or am I using the library incorrectly? Thanks, ___ rules-users mailing listrules-users@lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/rules-users -- With kind regards, Geoffrey De Smet ___ rules-users mailing listrules-users@lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/rules-users -- With kind regards, Geoffrey De Smet ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users
Re: [rules-users] Fusion appears to be working properly, but...
Wolfgang is correct. Just an additional distinction that is important: expiring an event is different then retracting an event/fact. Imagine that there was a computer with infinite processing power and infinite memory. In that case, we would never need to expire any events, we would just keep them all in memory forever. This is obviously not the case, but it gives us the sense of truth. An event represents something that happened and as so it is true. Since the past can't be changed, it will be true forever. So expiring an event is a way to optimize the resource consumption of the limited hardware we have, but it does not make events false. So any activation created due to events, will remain active until they are fired, even if the events that created it expire. In other words: if your event has an expiration policy of 2 seconds, it comes into the system and activates rules for the next 2 seconds. After that time, that event will no longer create any other activation. Also: * If you are running fireUntilHalt(), the rules will fire asap, depending on the conflict resolution with other rules. * If you are running fireAllRules(), even if it takes 10 minutes for your application to fire the rules, they will still fire, because **expiration** of events do not cancel activations. **Retraction** of facts/events and **modifications** of facts might cause activations to be cancelled. Hope it is clear. Edson 2011/10/14 Wolfgang Laun wolfgang.l...@gmail.com On 14 October 2011 06:31, slyfox bobby.richa...@gmail.com wrote: thanks for the response, that makes a little more sense. That is an issue because the whole idea of CEP is to process events as they happen. My next step is adding camel support so that I can consume the amqp feed without manually inserting into the session. I guess fireuntilhalt is my only option. But what does fire until halt do, is it just a continuous loop or is is smart enough to only process events when they come in? There is one reasons for the thread running a Drools engine until halt to become active: when a fact is inserted. After doing the work resulting from this, the thread falls back into suspension. so what would happen if the event is given an expiration of say 2 seconds? if you were calling fireallrules in anything over a 2 second interval you would miss a lot. An event that has expired any time before you fireAllRules is discarded soon after this call is entered. What could you miss in the time between the scheduled expiry and the actual removal? Note that any application that expects to produce real-time reactions is bound to fireUntilHalt. I do not really see the benefit of fusion then, seems like its redundant? I hope that I am missing something. There isn't really a Fusion thing. (Think of it as a marketing gag.) The Drools Rule Engine is capable of dealing with facts that have the distinct traits of what is called event: timestamp, duration and expiry; the Engine is clever enough to retract stale events automatically, and there's a set of operators for comparing numbers that may represent points in time with some fancy overlap options. If you don't need anything of this, don't use it; OTOH, if you compare dates, just using the temporal operators may help. -W -- View this message in context: http://drools.46999.n3.nabble.com/Fusion-appears-to-be-working-properly-but-tp3420043p3420701.html Sent from the Drools: User forum mailing list archive at Nabble.com. ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users -- Edson Tirelli JBoss Drools Core Development JBoss by Red Hat @ www.jboss.com ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users
Re: [rules-users] Expected release date for 5.3.0.Final and 5.2.1.Final?
Any day now- a couple of days ago they said the end of this week. Thomas -Original Message- From: rules-users-boun...@lists.jboss.org [mailto:rules-users- boun...@lists.jboss.org] On Behalf Of itchupe Sent: 14 October 2011 14:59 To: rules-users@lists.jboss.org Subject: [rules-users] Expected release date for 5.3.0.Final and 5.2.1.Final? Hello there I will check out the latest drools version in novembre or decembre... when is the next final release to expect approximately? should I see it here? https://issues.jboss.org/browse/JBRULES Cheers. itchupe 3 drools :) -- View this message in context: http://drools.46999.n3.nabble.com/Expected- release-date-for-5-3-0-Final-and-5-2-1-Final-tp3421763p3421763.html Sent from the Drools: User forum mailing list archive at Nabble.com. ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users ** This message is confidential and intended only for the addressee. If you have received this message in error, please immediately notify the postmas...@nds.com and delete it from your system as well as any copies. The content of e-mails as well as traffic data may be monitored by NDS for employment and security purposes. To protect the environment please do not print this e-mail unless necessary. NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18 4EX, United Kingdom. A company registered in England and Wales. Registered no. 3080780. VAT no. GB 603 8808 40-00 ** ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users
Re: [rules-users] Fwd: Ocassional Refresh of Knowledgeagent (Only If There is any Change)
Did you mean that you are getting a new KnowledgeBase from the agent? Best Regards, Esteban Aliverti - Developer @ http://www.plugtree.com - Blog @ http://ilesteban.wordpress.com 2011/10/14 Wolfgang Laun wolfgang.l...@gmail.com But wouldn't the KnowledgeAgent be created as part of an application, by application code. Why should it ever be recreated, changes in the knowledge base or no changes? -W 2011/10/14 Michael Anstis michael.ans...@gmail.com Open for comment. -- Forwarded message -- From: ayon.chakrabo...@genworth.com Date: 14 October 2011 12:43 Subject: Ocassional Refresh of Knowledgeagent (Only If There is any Change) Hi Michael, I am using ResourceChangeScannerService to scan the resources in our application. But it seems that after every specified interval we get a new KnowledgeAgent(whether it is changed or not). Is there any way where I can check using some Listener only if there is any change or the package is built in guvnor only then we can get a new Knowledgeagent. Thanks, Ayon ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users
Re: [rules-users] [planner] The presumed score is corrupted
In your doMove you're doing: crew.addActivity(activity); remainingActivities.remove(activity); If crew and/or remainingActivities are used by your score rules, the working memory should be notified of their changes. That's causing the corruption Extra advice: I think you're making your moves too complex and your domain model too complex. If you upgrade to 5.3, it will be hard to identify the planning entities. There will be many (and I doubt you need more than 1). Read http://docs.jboss.org/drools/release/5.3.0.CR1/drools-planner-docs/html_single/index.html#d0e1411 and specificly this note in that chapter: /Do not create unnecessary planning entity classes./This leads to difficult |Move| implementations and slower score calculation. For example, do not create a planning entity class to hold the total free time of a teacher, which needs to be kept up to date as the |Lecture| planning entities change. Instead, calculate the free time in the score constraints and put the result per teacher into a logically inserted score object. If historic data needs to be considered too, then create problem fact to hold the historic data up to, but /not including/, the planning window (so it doesn't change when a planning entity changes) and let the score constraints take it into account. Op 14-10-11 15:48, Guilherme Kunigami schreef: 2011/10/14 Geoffrey De Smet ge0ffrey.s...@gmail.com mailto:ge0ffrey.s...@gmail.com Probably you forgot to notify the workingMemory.update in the doMove method: public void doMove(WorkingMemory workingMemory) { FactHandle factHandle = workingMemory.getFactHandle(activity); activity.setAssignee(...); workingMemory.update(factHandle, activity); } Op 14-10-11 09:21, Geoffrey De Smet schreef: A corrupted score normally indicates a problem with the Move implementation (or sometimes the score drl). Basically this happened: for a number of moves, it did the move, calculated the score and undo the move. One of those move was associated with a score -10hard/0soft, that was the best one. Now, it does that move (which is now called the step) and when it calculates the score it's a different score 0hard/0soft. Try TRACE environment and see if it crashes sooner. Copy paste your Move implementation here. Using the TRACE environment gave the same results of DEBUG. Here's my move implementation, as well as the snipet of drools rule file that calculates the score based on remaining activities: http://pastebin.mozilla.org/1355014 In Planner 5.4 there will be 2 out-of-the-box Move implementations to use, so writing Move's become optional. Cool! By the way, I'm using Drools 5.2.0 final. Thanks, Op 13-10-11 16 tel:13-10-11%2016:37, Guilherme Kunigami schreef: Hi, I've implemented a very simple application using drools planner consisting of a bunch of activities. My rule file is very simple too and just counts the number of activities not assigned. When I run Solver.solve(), I get the following error message: Exception in thread AWT-EventQueue-0 java.lang.IllegalStateException: The presumedScore (-10hard/0soft) is corrupted because it is not the realScore (0hard/0soft). Presumed workingMemory: Score rule (remainingActivitiesCount) has count (1) and weight total (11). Real workingMemory: Score rule (remainingActivitiesCount) has count (1) and weight total (0). I've tracked down this message and found this piece of code @DefaultLocalSearchSolver.solveImplementation(): // there is no need to recalculate the score, but we still need to set it localSearchSolverScope.getWorkingSolution().setScore(localSearchStepScope.getScore()); if (assertStepScoreIsUncorrupted) { localSearchSolverScope.assertWorkingScore(localSearchStepScope.getScore()); } It seems that the working score is never updated along the algorithm, but the score in the working memory changes. Thus, when we use the DEBUG environment, assertStepScoreIsUncorrupted is turned on and the assertion fails. Should the score be updated or am I using the library incorrectly? Thanks, ___ rules-users mailing list rules-users@lists.jboss.org mailto:rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users -- With kind regards, Geoffrey De Smet ___ rules-users mailing list rules-users@lists.jboss.org mailto:rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users -- With kind regards, Geoffrey De Smet ___ rules-users mailing list rules-users@lists.jboss.org mailto:rules-users@lists.jboss.org
Re: [rules-users] Fusion appears to be working properly, but...
Thank you both, that helps a lot. So fusion really helps to just manage the lifetime of a fact? I am trying to migrate my hand coding trading and analysis application to drools. I think it will work fine for currencies, perhaps only 100 messages per second, but I am worried about equity options data which could be 100k+ messages a second. Do you guys have any tips or trick for dealing with that amount of data, like a messages per second to rule ratio? Granted I know that is arbitrary because its based on the rule complexity. But perhaps simple two - three line basic rules. Is it even possible to answer this? Are there any metrics on the capabilities of drools for high message, high rule count scenarios? Thanks again. Bobby -- View this message in context: http://drools.46999.n3.nabble.com/Fusion-appears-to-be-working-properly-but-tp3420043p3421986.html Sent from the Drools: User forum mailing list archive at Nabble.com. ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users
Re: [rules-users] Fusion appears to be working properly, but...
You need to analyze if you can handle 100k objects creation per second in java first.. I think that will be the first bottle neck :) On Fri, Oct 14, 2011 at 12:16 PM, slyfox bobby.richa...@gmail.com wrote: Thank you both, that helps a lot. So fusion really helps to just manage the lifetime of a fact? I am trying to migrate my hand coding trading and analysis application to drools. I think it will work fine for currencies, perhaps only 100 messages per second, but I am worried about equity options data which could be 100k+ messages a second. Do you guys have any tips or trick for dealing with that amount of data, like a messages per second to rule ratio? Granted I know that is arbitrary because its based on the rule complexity. But perhaps simple two - three line basic rules. Is it even possible to answer this? Are there any metrics on the capabilities of drools for high message, high rule count scenarios? Thanks again. Bobby -- View this message in context: http://drools.46999.n3.nabble.com/Fusion-appears-to-be-working-properly-but-tp3420043p3421986.html Sent from the Drools: User forum mailing list archive at Nabble.com. ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users -- - CTO @ http://www.plugtree.com - MyJourney @ http://salaboy.wordpress.com - Co-Founder @ http://www.jugargentina.org - Co-Founder @ http://www.jbug.com.ar - Salatino Salaboy Mauricio - ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users
Re: [rules-users] Fusion appears to be working properly, but...
And before the object creation, you'll have to get the data into your system... -W 2011/10/14 Mauricio Salatino sala...@gmail.com: You need to analyze if you can handle 100k objects creation per second in java first.. I think that will be the first bottle neck :) On Fri, Oct 14, 2011 at 12:16 PM, slyfox bobby.richa...@gmail.com wrote: Thank you both, that helps a lot. So fusion really helps to just manage the lifetime of a fact? I am trying to migrate my hand coding trading and analysis application to drools. I think it will work fine for currencies, perhaps only 100 messages per second, but I am worried about equity options data which could be 100k+ messages a second. Do you guys have any tips or trick for dealing with that amount of data, like a messages per second to rule ratio? Granted I know that is arbitrary because its based on the rule complexity. But perhaps simple two - three line basic rules. Is it even possible to answer this? Are there any metrics on the capabilities of drools for high message, high rule count scenarios? Thanks again. Bobby -- View this message in context: http://drools.46999.n3.nabble.com/Fusion-appears-to-be-working-properly-but-tp3420043p3421986.html Sent from the Drools: User forum mailing list archive at Nabble.com. ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users -- - CTO @ http://www.plugtree.com - MyJourney @ http://salaboy.wordpress.com - Co-Founder @ http://www.jugargentina.org - Co-Founder @ http://www.jbug.com.ar - Salatino Salaboy Mauricio - ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users
Re: [rules-users] Fusion appears to be working properly, but...
ok bad example. Are there any metrics on drools performance that I could reference? -- View this message in context: http://drools.46999.n3.nabble.com/Fusion-appears-to-be-working-properly-but-tp3420043p3422055.html Sent from the Drools: User forum mailing list archive at Nabble.com. ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users
[rules-users] Antw.: Expected release date for 5.3.0.Final and 5.2.1.Final?
excellent. Looking forward to it. Thanx. - Reply message - Von: Swindells, Thomas [via Drools] ml-node+s46999n3421853...@n3.nabble.com An: itchupe itch...@gmail.com Betreff: [rules-users] Expected release date for 5.3.0.Final and 5.2.1.Final? Datum: Fr., Okt. 14, 2011 16:27 Any day now- a couple of days ago they said the end of this week. Thomas -Original Message- From: [hidden email] [mailto:rules-users- [hidden email]] On Behalf Of itchupe Sent: 14 October 2011 14:59 To: [hidden email] Subject: [rules-users] Expected release date for 5.3.0.Final and 5.2.1.Final? Hello there I will check out the latest drools version in novembre or decembre... when is the next final release to expect approximately? should I see it here? https://issues.jboss.org/browse/JBRULES Cheers. itchupe 3 drools :) -- View this message in context: http://drools.46999.n3.nabble.com/Expected- release-date-for-5-3-0-Final-and-5-2-1-Final-tp3421763p3421763.html Sent from the Drools: User forum mailing list archive at Nabble.com. ___ rules-users mailing list [hidden email] https://lists.jboss.org/mailman/listinfo/rules-users** This message is confidential and intended only for the addressee. If you have received this message in error, please immediately notify the [hidden email] and delete it from your system as well as any copies. The content of e-mails as well as traffic data may be monitored by NDS for employment and security purposes. To protect the environment please do not print this e-mail unless necessary. NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18 4EX, United Kingdom. A company registered in England and Wales. Registered no. 3080780. VAT no. GB 603 8808 40-00 ** ___ rules-users mailing list [hidden email] https://lists.jboss.org/mailman/listinfo/rules-users If you reply to this email, your message will be added to the discussion below: http://drools.46999.n3.nabble.com/Expected-release-date-for-5-3-0-Final-and-5-2-1-Final-tp3421763p3421853.html To unsubscribe from Expected release date for 5.3.0.Final and 5.2.1.Final?, click here. -- View this message in context: http://drools.46999.n3.nabble.com/Expected-release-date-for-5-3-0-Final-and-5-2-1-Final-tp3421763p3422061.html Sent from the Drools: User forum mailing list archive at Nabble.com.___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users
Re: [rules-users] Fusion appears to be working properly, but...
No such thing, just like there is no metrics on the performance of a C program. Reason: it depends. Before you invest heavily, rig up a set of rules according to what you'll need, create some data and benchmark *your application*, or at least as close as possible. The speed of Drools for solving the Zebra puzzle or Sudokus is irrelevant for you. -W On 14 October 2011 17:43, slyfox bobby.richa...@gmail.com wrote: ok bad example. Are there any metrics on drools performance that I could reference? -- View this message in context: http://drools.46999.n3.nabble.com/Fusion-appears-to-be-working-properly-but-tp3420043p3422055.html Sent from the Drools: User forum mailing list archive at Nabble.com. ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users
Re: [rules-users] Fusion appears to be working properly, but...
Unfortunately, it is a hard question to answer, because it is the same as asking: what is the performance of a database (postgreSQL, Oracle, etc)? It is totally dependent on the data you load, the queries you write and the indexes you use. So you need to think about overhead and pay-off of using such a technology. If you are considering performance alone, an nothing else (ease of rule maintenance, knowledge management lifecycle, time to market, training costs, etc) and you have 10 rules, the optimizations that the engine bring into place will probably not pay off in terms of performance and it would be more performant to write the 10 rules in java. If you have 10k rules, then the optimizations will pay off multiple times and you will have better performance than coding the rules in java (unless you are coding your rules like a rules engine compiler does). The more rules you have, the more advantage you have using a rules engine. Finally, when talking about high volumes, you will have to think about horizontal scalability as it vertical scalability is much more expensive to achieve. Using multiple agents is an easy way to do that, as long as you can partition your data. I can tell you I've personally worked with customers with knowledge bases in the order of several tens of thousands of rules large, as well as customers with millions of facts simultaneously in memory. So it is possible to scale, but the performance of your system will depend on your use case and the more rules you have, the more benefits you get. Edson 2011/10/14 slyfox bobby.richa...@gmail.com ok bad example. Are there any metrics on drools performance that I could reference? -- View this message in context: http://drools.46999.n3.nabble.com/Fusion-appears-to-be-working-properly-but-tp3420043p3422055.html Sent from the Drools: User forum mailing list archive at Nabble.com. ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users -- Edson Tirelli JBoss Drools Core Development JBoss by Red Hat @ www.jboss.com ___ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users