Starting in 6.0.6.1, we introduced a new feature for customers using Rational Quality Manager with configuration management called database partitioning. This is not a product feature but the necessary configuration steps to enable table partitioning in your enterprise database.
Note Database partitioning is an
enterprise feature, which means you need to determine if the version/license of your enterprise database supports this feature before you attempt to turn it on. The best resource to determine the features your enterprise database supports is your database administrator.
What is partitioning?
Partitioning is the division of a logical table (or database) into distinct independent parts. It is normally done for manageability, performance, availability or load balancing. In our case, we are partitioning tables for data scale. Meaning, we partition the table to keep the same levels of performance as data grows.
In this case, we are partitioning the version table based on artifact type. Future releases will include other high growth tables, but we decided to focus on one for our initial release of this feature.
How to check for growth
There are two ways to determine how much data you have in your version table. We provide a managed bean, Project Metrics MBean that you can enable and monitor for data growth. In addition, we provide vendor specific queries that can be run to check the number of rows in the version table. These queries can be run from the repodebug User Interface in Rational Quality Manager. Either of these approaches will tell you the size of the version table, which is the key factor on when to consider enabling table partitioning.
Project Metrics MBean
How to enable the mbean
The specific attribute
Repodebug Queries
Microsoft SQL Server
Oracle DB
DB2
When considering whether to enable partitioning, you need to evaluate the size of the version table. As the size of the table grows beyond 5GB, it is recommended by database vendors that you consider data growth strategies for your table. In our case,
25 million rows in the version table is approximately 4.5 gb and you should consider partitioning your version table.
How to enable partitioning
Enabling table partitioning is done while the system is shut down using a repotools command.
repotools-qm.sh -partitioning [teamserver.properties=tspFile] [logfile=logFile] enable [noPrompt]
How to disable partitioning
Disabling table partitioning is done the same way. The system is shut down and a repotools command is executed to disable the table partition.
repotools-qm.sh -partitioning [teamserver.properties=tspFile] [logfile=logFile] disable [noPrompt]
Related topics
Deployment web home,
Project Metrics MBean
repotools-qm -partitioning command
External links:
Additional contributors: Michael Afshar, Susan Yeshin, Chris Austin