The Biomedical Informatics division at the Washington University in St. Louis School of Medicine serves the needs of researchers and investigators at one of the most prestigious medical schools in the country. The applications that they are responsible for provide access to millions of patient records from the affiliated hospitals, as well as data on tissue samples, clinical studies, and patients outside the university’s network. This data needs to be available instantly due to the needs of investigators with intensive cancer research projects.
Troubleshooting Clinical Data Repository Application's Performance Problems in Production
One of the university’s most important applications is an electronic repository that includes 5.5 million records of patient data from several affiliated hospitals. Researchers at Washington University with funding from the National Institute of Health and National Cancer Institute use this application to identify patient records for their research studies. For these researchers, the application’s performance and availability are critical – the more time they spend collecting data, the less time they have to spend on analysis.
Bijoy George (“George”), Biomedical Informatics Program Manager at Washington University in St. Louis, is responsible for the uptime and availability of many applications in the Biomedical Informatics division, including the clinical data repository application. The development team that creates and supports these applications is not allowed access to the sensitive patients’ data the apps are designed to manage. This means that their QA environment can’t approximate the load the application will carry in production, and they can’t anticipate the app’s performance problems. “The application would be running fine, but then all of a sudden it would take more than a minute for a page to load,” George says. “Because the developers don’t have the data in high volume, they couldn’t reproduce some of the performance issues.”
Soon after deploying AppDynamics, George was able to find a bottleneck that his team had long been looking for. By analyzing the path of the application’s key business transactions, he could see that all the time was being spent in a slow database call. He could then show this data to the development team. “When they saw that, the programmers went ‘Bingo!’ and we were able to fix it.” Now the page that took minutes to load is loaded and displayed within seconds. “Without AppDynamics, I doubt whether even now we would have found the issue.”
Before purchasing AppDynamics, George’s team would spend days and even weeks on troublesome performance issues. Today, it takes them a matter of minutes to find the root cause.
Catching Exceptions Early
George’s favorite feature of AppDynamics is its built-in alerting. “I set up exception monitoring, and the tool immediately alerts me if there is a problem,” he says. “Out of Memory exceptions usually happen when a new user tries to do something with the wrong search parameters. With millions of patient records in the database, a string of bad searches like this can essentially cause serious issues.” With alerts in place, however, George is able to identify performance problems before they occur.
Another important feature for George is AppDynamics’ ability to provide fine-grained details in regards to the execution of a single business transaction. This allows him to quickly triage a performance problem down to the class and method level. “Without AppDynamics, it’s hard to see even what the method does, unless you’re a programmer. But with AppDynamics, we can find out which method is taking the most time and drill down into the details. It’s really helpful in finding issues.”
The Bottom Line
AppDynamics gives George and his team a high-level visibility into their informatics applications, as well as method-level detail into its performance problems. The combination of alerting and deep-dive diagnostics allows George’s team to respond quickly to issues. With AppDynamics, George and his team
can ensure that the physicians and researchers working on important research projects can access the data they need as fast as possible.
“We no longer waste time in meetings and on phone calls trying to identify application issues,” George concludes. “We’re very thankful to AppDynamics.”