As any database manager or DBA will testify, the sentence “We need to do an upgrade” fills them with a sense of impending gloom. One DBA grumbled to me recently, “With major infrastructure changes you can’t win; migrations and upgrades are essential but no one cares if you do a good job, but of course everyone knows if something goes wrong.”
A bit harsh may be, but not far from the truth. I’ve completed my fair share of upgrades and yes, the process can be challenging – it’s the time consuming checking and re-checking that does it for me. But as we all know, it is a tedium that has to be endured to minimise the damage of the leap of faith that is infrastructure change, right? Well, no actually. On both counts.
Solutions designed to make the job easier
For some time, there have been a number of systems on the market that simultaneously do the heavy lifting of an upgrade and take the risk out of the change. They do this by capturing and replaying production database workloads in risk-free test environments, essentially eliminating the difference between simulated lab conditions and real production workloads. Perfect, it seems. So why doesn’t everyone use them?
Time is undoubtedly the major issue. Finding the time to forward plan is never easy for any support team, even for the implementation of core production systems. Finding the time to evaluate (and potentially justify the purchase of) add-on solutions is even more difficult – there may be a software purchase cost, hardware requirements and undoubtedly resource allocation costs until the team gets up to speed. Justification for any solution that is not core is never easy, even if it’s worth its weight in gold.
Compatible with all versions of ASE
Yet I firmly believe that these systems are well worth the time and effort. I first came across one such system iReplay, some years ago and was so impressed that I now promote it. Compatible with all major databases including SAP ASE, and applicable to any version, iReplay has numerous features that set it apart from other more generic tools typically used to lighten the upgrade load. Unlike scripting tools or load simulators, iReplay allows the capture of a full-scale image of the production SQL workload using Network traffic capture, and then recreates that traffic with all of its native concurrency, interleaving & complexity for detailed analysis in test environments. This approach is ideal for situations where simple scripting based efforts are not sufficient, such as Database Upgrade, underlying platform changes, or Testing effects of Database optimizations on a Production scale workload.
It is worth pointing out that iReplay reproduces the captured workload exactly as was observed during the original capture. There is no exception to the workloads replayed and different types of SQLs, be it Dynamic SQLs, Bulk Inserts, Scrollable Cursors, SQLs involving Binary data (BLOBs, CLOBs, etc.) can be replayed using this tool. SSL Encrypted sessions can also be replayed if the encryption key is available.
Rent rather than buy?
And what about cost? One huge advantage of iReplay is the fact that it can be either purchased or rented, with rental perfect for one-off upgrades or migrations. It also works without imposing any load on your Production Database systems; passive network data capture means there is no requirement for changes/connections/applications to be installed on your production database system.
And the benefits?
It is easy to measure the benefits of iReplay in savings in time and cost (development and test teams are expensive resources better off deployed elsewhere). However, the intangible benefits are harder to measure but more valuable. Use of iReplay results in a significantly streamlined & more accurate testing process with a degree of rigor that was previously thought impossible. Replicated runs can be tailored to meet a variety of test objectives, including regression testing, functional testing, performance testing, capacity planning etc. Coupled with precise SQL-level performance measurements, the technology also allows organisations to judge & calibrate proposed changes, without exposing their business operations to unnecessary risk — or the potential for costly rollbacks.
As a result, the risks associated with database or infrastructure changes can be assessed more quickly & easily, and with unprecedented accuracy. The possibility that disruptive bugs or unexpected interactions might “slip through the cracks” can be virtually eliminated. Test and deployment cycles can be reduced, while confidence improves. Changes can be effectively gauged by comparing the SQL response times giving an accurate Change Feedback. Strategic re-architecture or re-platform projects can be streamlined and accelerated. Anticipated benefits of proposed changes can be measured precisely, before significant resources are committed.