Performance tuning
Learn about performance tuning for the IBM MobileFirst™ Platform Operational Analytics.
Java™ virtual machine (JVM) swapping
The underlying technology that is
used by the IBM MobileFirst Platform Operational
Analytics is
called Elasticsearch. Elasticsearch performs poorly when the JVM starts
swapping. To ensure that the JVM never swaps, the following JNDI property
can be set to true:
<jndiEntry jndiName="analytics/bootstrap.mlockall" value="true" />
Setting the Field Cache Size
The underlying technology used by the analytics platform loads several field values into memory to provide fast access to those documents. This is known as the field cache. By default, the amount of data loaded into memory by the field cache is unbounded. If the field cache becomes too large, it can cause an out of memory exception and crash the analytics platform. You can put an upper limit on the field cache to prevent this from happening. The field cache can be set using the following JNDI property:<jndiEntry jndiName="analytics/indices.fielddata.cache.size" value="80%"/>
<jndiEntry jndiName="analytics/indices.fielddata.cache.size" value="10GB"/>
Note: The
field cache can be set using a hardcoded value (such as 10GB) or it
can be set to a percentage of the heap (such as 80%).
Placing
an upper limit on the cache will prevent the field cache from causing
an out of memory exception. However, when the limit is reached, the
analytics platform will begin to take longer to perform search queries.
At this point, you can either add additional memory to your machine
or add an additional node to your cluster.