Skip to content
ERP Migration

Performance Benchmarking: Comparing Legacy vs. New ERP Query Execution Times

A practical guide for CIOs and IT directors on how to benchmark ERP query performance during migration. Learn how to define metrics, set up staging environments, and validate that the new system meets business SLAs before cutover.

11 min readSysGenPro Editorial
Performance Benchmarking: Comparing Legacy vs. New ERP Query Execution Times

How to Benchmark Legacy vs. New ERP Query Performance

Performance benchmarking during an ERP migration involves systematically measuring and comparing the execution times of critical business queries in the legacy system against the new target system. This process is essential to validate that the new environment meets or exceeds the performance standards required for operational continuity. The primary risk of skipping rigorous benchmarking is discovering unacceptable latency or throughput issues only after go-live, which can disrupt business operations and erode user confidence. To execute this effectively, you must establish a controlled staging environment that mirrors production hardware and data volumes. You should define a representative set of high-impact queries, such as financial closing reports, inventory valuation, and order processing transactions. By measuring baseline performance in the legacy system and comparing it to the new system under identical conditions, you can identify regressions early. This approach allows IT directors and CIOs to make informed decisions about hardware scaling, query optimization, or configuration adjustments before the cutover window. It is critical to verify that the new ERP version and database engine are compatible with the specific workload patterns of your organization, as vendor documentation may not cover all custom or legacy-specific performance characteristics.

Defining Performance Metrics and Success Criteria

Before executing any tests, you must define what constitutes acceptable performance. This requires collaboration between IT leadership and business stakeholders to establish Service Level Agreements (SLAs) for key processes. Common metrics include average response time, 95th percentile response time, throughput (transactions per second), and resource utilization (CPU, memory, disk I/O). For example, a financial report that takes 30 seconds in the legacy system should not take longer than 30 seconds in the new system, ideally with an improvement margin. You should categorize queries into critical, high, and medium priority. Critical queries are those that block business operations if they fail or are too slow, such as real-time inventory checks. High-priority queries include daily management reports. Medium-priority queries might be historical data analysis. Documenting these criteria ensures that the benchmarking results are objective and actionable. It is also important to define the load profile. Will the new system be tested under peak load, average load, or stress conditions? Peak load testing simulates the highest expected user concurrency, which is crucial for identifying bottlenecks that may not appear under normal conditions.

Preparing the Staging Environment for Accurate Comparison

The validity of your benchmarking results depends entirely on the fidelity of the staging environment. A common mistake is testing in a development environment that has significantly less hardware power or a smaller dataset than production. To ensure a fair comparison, the staging environment should replicate the production hardware specifications, including CPU cores, RAM, storage type (SSD vs. HDD), and network bandwidth. If the new ERP system is planned to run on cloud infrastructure, the staging environment should use the same cloud instance types and regions. Data volume is another critical factor. You should load a representative subset of production data into the staging environment. This subset should include enough historical data to test complex queries that span multiple years, but it does not need to be the entire production database if that is impractical. Ensure that the data distribution matches production patterns, such as the ratio of active to inactive records. Additionally, you must configure the new ERP system with the same parameter settings as the legacy system where possible, or document any intentional changes. This includes database configuration parameters, application server settings, and cache configurations. Any deviation must be noted to avoid misattributing performance differences to the software version rather than configuration changes.

Selecting Representative Query Workloads

Not all queries are created equal. To make the benchmarking meaningful, you must select a workload that reflects actual business usage. Start by analyzing the legacy system's database logs to identify the most frequently executed and most resource-intensive queries. These are your top candidates for benchmarking. Include a mix of transactional queries (inserts, updates, deletes) and analytical queries (complex selects with joins and aggregations). For example, in a manufacturing ERP, you might benchmark the query that calculates work-in-progress inventory, the query that generates a purchase order, and the query that runs a monthly financial close report. In a retail ERP, you might focus on real-time stock availability checks and end-of-day sales reporting. It is also important to include queries that involve custom modules or third-party add-ons, as these are often the source of performance regressions during migration. Ensure that the test scripts for these queries are identical in both the legacy and new environments. This means using the same input parameters, the same user roles, and the same session contexts. If the new system uses a different API or interface, you must ensure that the underlying database operations are equivalent to allow for a fair comparison.

Executing the Benchmarking Tests

Once the environment and workloads are prepared, you can begin executing the tests. It is recommended to run multiple iterations of each query to account for variability. A single run is not sufficient to establish a reliable baseline. You should perform at least three to five runs for each query and record the average, minimum, and maximum execution times. Use automated testing tools to execute the queries and capture the results. These tools can also monitor system resources during the test, providing insights into CPU, memory, and disk usage. It is important to run the tests in a controlled manner, ensuring that no other processes are running on the staging environment that could interfere with the results. For example, disable background jobs, scheduled tasks, and other user sessions during the benchmarking window. Record the results in a structured format, such as a spreadsheet or a performance monitoring dashboard. Include metadata for each test run, such as the date, time, user, query ID, and system configuration. This documentation will be valuable for troubleshooting and for communicating results to stakeholders. If you are testing under load, use load testing tools to simulate multiple concurrent users executing the queries. This will help identify how the system performs under stress and whether it can handle peak business periods.

Analyzing Results and Identifying Regressions

After collecting the data, you must analyze the results to identify any performance regressions. Compare the execution times of each query in the legacy system against the new system. Calculate the percentage difference for each query. A query that is 20% slower in the new system may be acceptable if it is not a critical business process, but a 50% slowdown in a critical transactional query is a significant risk. Look for patterns in the data. Are all queries slower, or only specific types? If analytical queries are slower but transactional queries are faster, it may indicate a difference in how the new database engine optimizes different types of operations. If all queries are slower, it may indicate a hardware issue or a configuration problem. Investigate the root cause of any regressions. This may involve analyzing the query execution plans in both systems. The new system may be using a different execution plan that is less efficient for your specific data distribution. You may need to adjust indexes, statistics, or query hints to improve performance. It is also important to consider the impact of data volume. If the new system is tested with a smaller dataset, the performance may appear better than it would be in production. Ensure that your analysis accounts for this difference.

Optimizing the New ERP System

If the benchmarking results show unacceptable performance, you must take steps to optimize the new ERP system before proceeding with the migration. This may involve several actions. First, review the database configuration. Ensure that the database is tuned for the new ERP version. This may include adjusting memory allocation, cache sizes, and connection limits. Second, review the indexing strategy. The new system may require different indexes to support the new data model or query patterns. You may need to create new indexes or drop unused ones. Third, review the application configuration. Some ERP systems have performance-related settings that can be adjusted, such as batch sizes, timeout values, and logging levels. Fourth, consider hardware upgrades. If the software is optimized but the hardware is insufficient, you may need to upgrade the CPU, RAM, or storage. It is important to document all optimization steps and re-run the benchmarking tests to verify that the changes have improved performance. This iterative process of testing, optimizing, and re-testing is crucial for ensuring that the new system meets the required performance standards. Do not proceed to the next phase of the migration until the performance issues are resolved.

Documenting and Reporting Benchmarking Results

Clear documentation and reporting are essential for communicating the results of the performance benchmarking to stakeholders. Create a report that summarizes the key findings, including the performance of each critical query, the percentage difference between the legacy and new systems, and any optimizations that were performed. Include the methodology used for the benchmarking, such as the hardware specifications, data volume, and load profile. This transparency helps build trust in the results and ensures that stakeholders understand the basis for the go/no-go decision. The report should also include recommendations for the production environment. For example, if the new system requires more memory than the legacy system, the report should recommend a hardware upgrade. If the new system performs better, the report should highlight the benefits of the migration. Use visual aids, such as charts and graphs, to make the data easier to understand. Present the report to the project steering committee and obtain their approval to proceed with the migration. This formal sign-off is an important part of the risk management process and helps ensure that all parties are aligned on the performance expectations.

Integrating Performance Testing into the Migration Plan

Performance benchmarking should not be a one-time activity. It should be integrated into the overall migration plan as a continuous process. As the migration progresses, new features may be added, configurations may change, and data volumes may increase. Each of these changes can impact performance. Therefore, you should re-run the benchmarking tests at key milestones, such as after data migration, after custom module development, and before the final cutover. This ongoing monitoring helps identify performance issues early and allows for timely adjustments. It is also important to include performance testing in the user acceptance testing (UAT) phase. Business users should be involved in validating that the system performs as expected for their specific workflows. Their feedback can provide valuable insights into real-world performance issues that may not be captured by automated tests. By integrating performance testing into the migration plan, you can ensure that the new ERP system is not only functionally correct but also performant and reliable.

Managing Risks and Ensuring Business Continuity

Performance regressions are one of the most significant risks in an ERP migration. If the new system is too slow, it can disrupt business operations, reduce productivity, and erode user confidence. To manage this risk, you must have a clear plan for addressing performance issues. This includes having a rollback plan in place in case the new system fails to meet the performance criteria. The rollback plan should specify the conditions under which the rollback will be triggered, such as if critical queries exceed a certain execution time threshold. It should also specify the steps for rolling back to the legacy system, including data restoration and system configuration. Having a well-defined rollback plan provides a safety net and helps ensure business continuity. Additionally, you should monitor the new system closely during the initial post-go-live period. Use performance monitoring tools to track key metrics and identify any emerging issues. Have a team of support staff available to respond to performance-related incidents. By proactively managing performance risks, you can minimize the impact of any issues and ensure a smooth transition to the new ERP system.

Conclusion

Performance benchmarking is a critical component of a successful ERP migration. By systematically comparing the query execution times of the legacy and new systems, you can identify and address performance regressions before they impact business operations. This process requires careful planning, a representative staging environment, and a clear definition of success criteria. It also requires ongoing monitoring and optimization throughout the migration lifecycle. By following the steps outlined in this guide, you can ensure that the new ERP system meets the performance standards required for operational continuity and business success. Remember that performance is not just a technical concern; it is a business concern that directly impacts user experience and operational efficiency. Invest the time and resources needed to perform rigorous benchmarking, and you will be well-positioned for a successful ERP migration.

Written by
SysGenPro Editorial

SysGenPro Editorial

Platform & solutions team

Practical guidance on ERP, AI automation, cloud deployment and enterprise transformation from the SysGenPro team.

Share this article

Frequently asked questions

Common questions on this topic. Talk to our team for anything specific to your business.

01What is the acceptable query execution time for an ERP system?

There is no single acceptable time; it depends on the business process. Transactional queries should typically be under 2-5 seconds, while complex analytical reports may take 30-60 seconds. Define SLAs with business stakeholders based on legacy performance and user expectations.

02How do I set up a fair performance benchmark for ERP migration?

Use a staging environment that mirrors production hardware and data volumes. Select representative queries from legacy logs, run multiple iterations, and record average, min, and max times. Ensure no other processes interfere during testing.

03Why is my new ERP slower than the legacy system?

Common causes include different database indexing strategies, unoptimized query execution plans, insufficient hardware resources, or configuration differences. Analyze query execution plans and system resource usage to identify the root cause.

04What tools are used for ERP performance benchmarking?

Use database monitoring tools, application performance monitoring (APM) tools, and load testing tools. These tools can capture query execution times, resource utilization, and concurrent user performance.

05How does data volume affect ERP query performance?

Larger data volumes generally increase query execution time, especially for analytical queries. Ensure your staging environment has a representative data volume to accurately predict production performance.

06Should I benchmark ERP performance before or after data migration?

Benchmark both before and after data migration. Pre-migration benchmarks establish the baseline, while post-migration benchmarks validate that the new system performs well with the actual migrated data.

Continue learning
View all articles
Explore the platform

Where to go next

Browse the knowledge hub

See how SysGenPro fits your business

Discuss your workflows, modules and deployment options with our team.

Back to resources