I think you've basically answered your own question. POJOs that contains simple property getters and setters will always be faster than a hash lookup. They would also be smaller in size, assuming you avoid complicated reference hierarchies, because hash maps create container objects behind the scene. POJOs also help avoid the need to convert objects to specific types. Lastly, if a POJO is more likely to be maintainable because your java and drools compiler can tell you when you've made a mistake, but a compiler cannot check for the correct key or value of a hash map.
HonorGod wrote: > Hi, > > Can someone plz help me understand performance and maintainability in the > following scenario - ? > > I load tons of rows of data from database and store them in an object fact > model [POJO based] and apply the rules using decision tables and finally > persist data. > > vs > > I load tons of rows of data from database and store them in an object fact > model [HashMap - Key - Value] and apply the rules using decision tables and > finally persist data. > > The difference in the above two scenarios is that one of them is pojo based > and the other is key-value pairs that are used on LHS of the decision > tables. When I use Key-Value approach I had to do lot of conversion in terms > converting the conditions into eval statements and validations but where as > the pojo approach is very straight forward and less validations. > > Which approach gives me better performance and maintainability? > > I would consider the following before I make a decision - > > 1 - size of data > 2 - frequency at which the data changes [in terms of adding new conditions / > adding new columns / removal of new columns etc] > 3 - re-usability > > Thank You! > > -- Scott Embler Software Engineer, ERT Inc., Government Contractor Climate Monitoring Branch National Climatic Data Center 151 Patton Ave. Asheville, NC 28801-5001 scott.emb...@noaa.gov (828)350-2027 _______________________________________________ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users