Wednesday, June 4, 2014

ODM8.5.1 new Decision Engine

I noticed that BlueMix provide rule service is based on ODM8.5.1.It provide a new Decision Engine to help improve load time and execution time of decision services within Decision Server.But few people know how to use it.So today I just give a short introduction for you. ODM8.5.1  provide three rule engines, classic rule engine,decsion engine with intermddiate code,decision engine with java byte code.
Based on the official document it said:
The decision engine compiles rule artifacts into an archive that contains compiled and optimized code that becomes executable when translated to Java bytecode.
In comparison, a ruleset that is built with the classic rule engine contains a set of textual files that must be parsed before any compilation and optimization. Parsing, compiling and optimizing code are demanding tasks when you load a ruleset.
Therefore, the ruleset loading in the decision engine is faster because no code is parsed or interpreted at run time. All the code is already compiled (to intermediate code or Java bytecode) and fully optimized for rule execution.

So how do we choose use which rule engine,it is very simple.Open the rule designer,choose rule project -->Ruleset Build Mode-->Choose Decision engine.
So when you export you ruleset ,you can choose use java byte code for decision engine or not.

For the ruleset archive ,their might be different file structure.
The ruleset archive .jar file contains the rules in IRL text files.(CRE)The ruleset archive .dsar file consists of binary files that contain execution code for the rules and ruleflows.(DE)










Also for Decision Engine,you might need another API to invoke the rule engine,so the POJO code invoke classic rule engine might not work for Decision Engine,since if you work on the BlueMix rule service,you can use HTDS or rule rest api to invoke the rules,so you can avoid some unfamiliar DE java API to do that.

No comments:

Post a Comment