GraphDB-SE Management and Control

Version 1 by barry.bishop
on Nov 16, 2012 16:38.

compared with
Version 2 by Dimitar Manov
on Jul 17, 2014 17:24.

This line was removed.
This word was removed. This word was added.
This line was added.

Changes (7)

View Page History

h1. Managing OWLIM GraphDB through the JMX interface

OWLIM GraphDB offers a number of management and control functions using [Java Management Extensions (JMX)|]. OWLIM GraphDB uses this interface to provide information about its internal state and behaviour, including trend information, as well as operations for intervening in certain database activities.

After initialisation, OWLIM GraphDB will register a number of JMX MBeans for each repository each providing a different set of information and functions for specific features. The JMX endpoint is configured using special system properties when starting the Java virtual machine (JVM) in which OWLIM GraphDB is running. For example, the following command line parameters will set the JMX server endpoint to listen on port 8089, not require authentication and will not use a secure socket layer:


If using OWLIM GraphDB with Tomcat, then these parameters must be passed to Tomcat's JVM by setting either the {{JAVA_OPTS}} or {{CATALINA_OPTS}} environment variable, e.g.

For some Linux distributions, you can also edit the file {{/etc/default/tomcat6}} and set {{JAVA_OPTS}} there.

Once OWLIM GraphDB is loaded, use any compliant JMX client, e.g. {{jconsole}} that is part of the Java development kit, to access the JMX interface on the configured port.

h1. Cache/index statistics

Statistics are kept for the main index data structures and includes information such as: cache hits/misses, file reads/writes, etc. This information can be used to fine tune OWLIM-SE's GraphDB-SE's memory configuration and can be useful for 'debugging' certain situations, such as understanding why load performance changes over time or with particular data sets.

For each index, there will be a CollectionStatistics MBean published that shows the cache and file I/O values updated in real-time:
| nsTotalSpentInNext | cumulative time spent in (has)Next calculations (in nanoseconds) ||
| state | current state of the iterator, values are: ACTIVE, IN_NEXT, IN_HAS_NEXT, IN_REMOVE, IN_CLOSE, CLOSED ||
| trackId | a unique id for this iterator - if debug.level is used to increase the detail of OWLIM GraphDB output, then this value is used to identify queries when logging query execution plan and optimisation information ||