RE: How do you validate the impact of a change on performance?
Date: Sat, 22 Apr 2017 15:54:11 -0400
Message-ID: <032e01d2bba2$369c6180$a3d52480$_at_rsiz.com>
Have a suite of regression tests ordered by most important business function paired with numbers regarding the desired average response time and maximum allowable response time. (See Cary Millsap’s writings for a bit more sophisticated quantification of service level fulfillment by percentage of results within ranges, if you want to do a little better than maximum allowable response time.)
Make sure any transactional regression tests can and do end in “rollback” unless you have a pool of pending batch transactions to run or you don’t care whether they are actually committed on your performance test database.
After you make the change on your full sized performance regression test platform, run the regression test 10-20 times recording the execution time for each query.
See if you still comply with your service level desires.
See if you are better or worse than your previous values.
Notice that there is implicitly a full sized test system. IF your entire system is constructed of time based partitioning, you might be able to produce reliable regression test results on less than a full sized database with just several days, weeks, months, or years present (depending on the nature or your queries and transactions.) For financial systems quite often the magic number is 28 months. And I leave it to the reader to figure out why.
mwf
-- http://www.freelists.org/webpage/oracle-lReceived on Sat Apr 22 2017 - 21:54:11 CEST