Five Tips to Keep Your Agency’s Data and Applications Working Just as Hard as You
In some ways, data has become just as much a colleague to federal IT managers as the person sitting next to them. Sure, data can’t pick up a burrito for you at lunchtime, but it’s still extraordinarily important to agency operations. Data keeps things going so that everyone in the agency can do their jobs – just like your fellow IT professionals.
Unfortunately, as my colleague Thomas LaRock wrote a few months ago, too many people still treat data – and, by extension, databases and database administrators (DBAs) -- as a generic commodity instead of a critical component of application performance. But applications are at the heart of just about everything government employees do, and those applications are powered by databases. If there’s a problem with an application, it’s likely due to an underlying performance issue with the database it runs on.
As data and applications continue to become more intertwined, it’s time to get serious about employing strategies to ensure optimal database performance. Here are five tips to get you started.
1. Integrate DBAs into the IT mix
It may seem incredible, but to this day many agencies are still arranged in siloes, with different teams shouldering separate responsibilities. As such, despite their importance to network and application performance, many DBAs still operate in their own bubbles, separate from network administrators and IT managers.
In the age of DevOps, IT and DBA teams should continue to coalesce to ensure better application performance and availability for everyone’s sake. You should maintain open lines of communication with your DBAs so you can work with them in case issues arise. They, in turn, should keep you informed of any potential issues they’re seeing on their ends
2. Establish performance baselines before you start monitoring
Now that we’ve established a working relationship, let’s take a look at some strategies IT managers and DBAs can employ to ensure their databases continue functioning properly. That starts with monitoring for performance issues that may be causing problems with an agency’s applications.
However, before you even begin to assess and monitor your databases performance levels you’ll need to set up baselines to measure against. It’s the only way to get an honest assessment of the overall performance of your applications and their corresponding databases.
Ideally, these baselines will look at how applications perform at the same time, on the same day, every week. If something’s amiss you’ll be able to identify anomalies within these patterns. This will allow you to track the code, resource, or configuration change that may be causing the anomalies – and fix the issues before they become larger problems.
3. Start monitoring – but take it to the next level
Once your baselines are established, don’t just commence with a traditional monitoring approach – take things a step further by digging deeper into your data. Use real-time data collection and real-time monitoring in tandem with traditional network monitoring solutions to improve overall database performance and maintain network and data availability.
But don’t stop there; go even further. Incorporate tools with wait-time analysis capabilities to help identify how an application request is being processed, and which resources that application may be waiting on. This can help pinpoint the root cause of performance issues so you can see if they’re associated with your databases.
4. Then, go even further -- into your application stack and beyond
The applications we use are co-dependent upon each other. When one slows down or fails, it could adversely affect the entire stack. Therefore, you’ll want to use monitoring solutions that provide visibility across your entire application stack, not just sections or individual applications.
But it’s more than just monitoring the application stack. You must also have a clear, unified view of everything that stack is attached to or depends upon for it to work. This includes software, middleware, and, especially databases. This type of monitoring can help you zero in on potential issues wherever they may reside in your organization, and make it much easier to address them to minimize downtime and keep things rolling.
5. Don’t stop -- be proactive and continuously monitor
Monitoring of applications or databases should never be done in a piecemeal or reactive manner. There’s simply too much depending on their operation to take such a cavalier approach – and, in any case, there’s no time to be constantly fighting fires.
Proactive and continuous monitoring is a much better approach that must involve software and teamwork. Start with deploying solutions that can automatically monitor applications and databases 24/7. Complement that software with a team that works together and remains vigilant to any problems that may arise – and tackles them before they arise. Make sure that everyone is on the same page and appreciates end-user expectations in regards to page load and response times. Know that the work the team does impacts the entire agency, and can directly influence – positively or negatively – their colleagues’ efforts toward achieving their agencies’ goals.
Databases and applications will continue to play a part in these efforts, and you’ll be working alongside them for as long as you’re in federal IT. They might not be able to chat with you over a cup of Starbucks, but they’ll always be there for you – until they’re not.
Don’t let it get to that point. Do whatever it takes to keep your databases and applications working just as hard as you.
By Joe Kim, Senior Vice President and Global Chief Technology Officer, SolarWinds