When you define Persistence object management settings for a project, especially one that has multiple rule sessions (inference agents), the following tuning controls are available in the engine property file (be-engine.tra). These settings enable you to control how JVM memory is used for the persistence data cache.
be.engine.om.berkeleydb.internalcachepercent Percentage of JVM memory to set aside for use by the persistence layer’s internal cache. This memory is set aside when the engine starts up.For projects with multiple rule sessions, you can also set be.engine.om.berkeleydb.cacheweight.rule_session be.engine.om.berkeleydb.cacheweight.RuleSession For projects with multiple rule sessions, you can provide a weight for one or more rule sessions. The weight enables the system to calculate what percentage of the memory set aside using be.engine.om.berkeleydb.internalcachepercent to allocate to each rule session.Session cache percent = internalcachepercent * (cache.weight.RuleSession / total of all session cacheweight values).This value is an integer. Any fractional part resulting from the formula is truncated.For example, if you want to provide a lot of the allocated memory to a certain rule session, you can add a line in your be-engine.tra file for that rule session providing a higher weight value, and the rest of the rule sessions will be assigned the default weight. be.engine.om.eventcache.defaultmaxsize Defines the maximum number of events that are kept in JVM memory for a rule session.Sets the default maximum event cache size. This default is used if be.engine.om.eventcache.maxsize.rule_session is not specified for a rule session.Default value: -1 (which means, do not use this setting. See below for default behavior).If you do not set either of the event cache maximum size properties (be.engine.om.eventcache.defaultmaxsize or be.engine.om.eventcache.maxsize.rule_session) then the value of the Object Management tab setting Property Cache Size is used.Note, however, that the Property Cache Size applies to the number of concept properties. Events store their properties inside the event. The event cache maximum size settings refer to the entire event, not its individual properties. Defines the maximum number of events that are kept in JVM memory for the specified rule session.The default value is provided by the be.engine.om.eventcache.defaultmaxsize property.When the persistence layer performs cleanup, the least recently used (LRU) events are moved to the persistence store, to reduce the number of events in memory to the specified number.If your system has sufficient memory, you can improve performance by increasing the number of events kept in memory. When determining how many events to keep in memory, consider the size of the events — some may be quite large. Also consider your other requirements for memory. be.engine.om.berkeleydb.dbenv At deploy time, directories are created for each rule session (using rule session names) under the directory you specify.Default value: ./dbSee Default Location of Log Files and Other Files and Directories for more on how working directory (indicated by the dot in the default value) is determined.
Copyright © TIBCO Software Inc. All Rights Reserved.