VoltDB is an in-memory operational database which uses a share-nothing architecture to achieve database parallelism. Troubleshoot all your database performance issues using key metrics presented as detailed graphs and data.
This document details how to configure the Oracle VoltDB plugin and the monitoring metrics for providing in-depth visibility into the performance, availability, and usage stats of VoltDB servers.
VoltDB performance monitoring metrics:
Take informed troubleshooting decisions by keeping track of critical VoltDB metrics including:
Java memory
The metric java_memory gives us the total amount of memory that has been allocated for Java in the database as well as the total amount that has been used.
Tuple memory
Tuples represent the total number of records that are present in a database. Use the metric "tuple_memory" and calculate the total amount of memory that has been allocated for tuples in the database.
Indexed memory
Using the metric indexed_memory you can get the total amount of memory indexed for handling large data sets.
RSS
Enabling Recieve Side Scaling allows a system to distribute the recieve side data processing to multiple processors rather than overloading a single one. The metric "RSS" gives us the Recieve Side Scaling of tables in a VoltDB server.
Pooled memory
A memory pool is a preallocated memory space with a fixed size. Use the metric "pooled_memory" and get the total amount of memory pooled for dynamic memory allocation.
Tuple count
Tuples represent the total number of records that are present in a database. Use the metric "tuple_count" and get the total number of tuples present in the database.
How it works?
- Log-in to your Site24x7 account. Sign up here if you don't have one
- Download and install the latest version of Site24x7 Linux agent
- Install the VoltDB plugin
- The agent will execute the VoltDB plugin and push the data to the Site24x7 server.
Prerequisites:
- Download the voltdbclient.py file and place it in the plugins directory "voltdb_memory".
VoltDB plugin installation:
- Create a directory with the name "voltdb_memory", under the Site24x7 Linux agent's plugin directory - /opt/site24x7/monagent/plugins/
cd /opt/site24x7/monagent/plugins/sudo mkdir voltdb_memory
- Download the file ""voltdb_memory.py" from our GitHub repository and place it under the "voltdb_memory" directory
cd voltdb_memorysudo wget https://raw.githubusercontent.com/site24x7/plugins/master/voltdb_memory/voltdb_memory.py
- Download and install "voltdbclient.py" from our GitHub repository and place it inside the "voltdb_memory" directory
cd voltdb_memorysudo wget https://raw.githubusercontent.com/site24x7/plugins/master/voltdb_memory/voltdbclient.py
VoltDB plugin configuration:
- The default python path given in the plugin script is #!/usr/bin/python. If you wish to provide an alternate python path, replace the existing one preceded by the shebang character "#!".
- Configure host and port values for the VoltDB plugin
- Save the changes and restart the agent.
/etc/init.d/site24x7monagent restart
Eg :
VOLTDB_HOST = 'localhost'
VOLTDB_PORT = '21212'
Monitor additional metrics:
- To monitor additional metrics, edit the "voltdb_memory.py" file and add the new metrics that need monitoring
- Increment the plugin version value in the file "voltdb_memory.py" to view the newly added metrics ( For e.g., change the default plugin version from PLUGIN_VERSION = "1" to "PLUGIN_VERSION = "2")
Related plugins:
- Redis plugin - Monitor performance metrics of your Redis databases
- MongoDB plugin - Monitor performance metrics of your MongoDB databases
- Memcached plugin - Analyze performance of your Memcached server
- Nagios plugin - Execute thousands of Nagios plugins in Site24x7 without the need of running a Nagios server
- Out-of-the-box plugins - Monitor your entire app stack with our extensive list of integrations
- Create custom plugins - Create custom Linux and Windows plugins and monitor custom attributes