Database Capacity Planning

The Importance of Database Capacity Planning

For most organizations, growth is sign of success. Along with the growth of the business comes a growth in the amount of data that is stored and the number of users accessing that data. Properly estimating the capacity of a database system allows the organization to minimize system downtime and performance bottlenecks that come along with this increased growth of data and users.

The concept behind database capacity planning is simple, but the mechanics can be a bit more difficult. As requirements on a data platform increase, properly forecasting the amount of resources needed to keep the system performing at its peak without interruption become all the more important.

database capacity planning

Main components of database capacity planning:

  • CPUs (number and speed)
  • Servers
  • Memory
  • Storage
  • Network Capacity

While there are several tools available to assist in the process of capacity planning, this cannot replace the need to perform a proper analysis of the systems in question.

At Parthian Systems we follow a systematic approach to database capacity planning.

  1. State Goals
    How much load of for certain business activities can the database support, before running the system performance is affected?
    What performance is expected and what user and data growth rates can be expected?
    If the workload grows by 50%, when we will need to add more capacity to the system?
  2. Define the System Configuration
    Database software version and options + Server(s) # of CPUs/speed, total memory
    (e.g.) PostgreSQL 9.2 database running on system with 16 CPUs and 32 GB of memory
  3. List Database Services
    Database type OLTP, DSS, Data Warehouse, Data Mart
    (e.g.) Database is primarily part of an Order management system in an OLTP environment or a Data Warehouse running daily report metrics between 8AM and 6PM EST
  4. Identify Right Metrics
    By discussing with different user groups and divisions, you can learn how they measure business growth. Having this information can help you predict the data types and amounts that will be stored. This will further allow you to determine which database tables and data types will best hold the data.
  5. Collect data
    Collect CPU and memory utilization usage statistics, sample data sets, access methods and number of users. Gather all data to be collected where necessary to make proper capacity estimates.
  6. Analyze and Model Data
    Thorough analysis of current database performance along tied to concurrent application metrics and the data model will allow further refinements in determining CPU and memory utilization on the underlying database system.
  7. Interpret the Data and Results
    After careful measurement and sampling of the data you should be able to derive an accurate estimate for future growth and capacity.
  8. Present Results
    The final step is to present your key findings to the relevant people or teams. Specifics such as number of additional CPUs, storage capacity, memory, servers and other hardware and software which will be required to meet projected growth.

Plan Ahead

Database capacity planning is part of a comprehensive strategy to be proactive in eliminating potential database problems. Running short of database storage or processing power is something that should never happen. Parthian Systems has the experience to help with database capacity planning and all of your database needs. Get a grip on your database systems by contacting us today!