Ahhhhhh—the fresh smell of a brand new laptop, being pulled out of its box for the first time. Breathe it in.
Your tax return really paid off this year, but your shopping doesn’t end with this new device. On the contrary, you’ve got a spree ahead of you.
This laptop came at the perfect time, considering the PC it just replaced ran an operating system from sometime around WWII. Applications are responsive, load times are zippy—basically, it’s perfect. And it goes great with your blazing-fast internet connection.
Let the online shopping spree commence.
Several hours (or days) later, you have your big ticket item in the shopping cart: a product you’ve always wanted. Thanks to your tax return, you finally have the cash set aside to buy it.
So you go to checkout, fill in your sensitive payment information, and hover your cursor over that gloriously intimidating “place order” button. This is so exciting, you think to yourself. I’ve waited so long to buy this, and now I can finally afford it!
With that thought…
But instead of seeing a confirmation page, you see an hourglass replace your mouse. And it doesn’t change.
Several minutes pass.
Pretty soon you wonder if your order didn’t go through, so you check your inbox for an email confirmation. Nothing yet. Refreshing the page, you realize the process of checking out—putting in your address, filling in your credit card info—needs to be repeated all over again. But you really want this item, so you take a deep breath, do your best to shrug this ordeal off, and start from scratch on a different web browser.
But when you place your order just to see that infamous hourglass a second time, you get angry—and rightfully so. After all, your personal information is sitting in digital limbo! What’s the deal?
Something that should be a straightforward and simple process has become an inconvenient mess. You don’t want to make a fuss about it, but something is wrong with the online store itself—not your new computer or internet connection.
So you call customer service. After a rather long hold time, you finally get a rep on the line and they simply tell you, “Sorry for the inconvenience. Our system is down, but our IT department is working on the issue. Please try back again in a few hours.”
“Okay… thanks,” you reply and end the call. Ultimately, you make the decision to use a different vendor, purchasing the item from them in one easy checkout process.
Now imagine this: instead of the customer buying the product, you’re the company selling the product. Exactly how many customers did you lose because of this technical breakdown? And what if you could have prevented this from happening in the first place?
Well, you could have. It’s called a health check. The database your online store resides in needed a professional assessment to pinpoint weak areas and tune up performance.
Your company relies on a database as its digital foundation. It doesn’t matter if your organization runs on Oracle, Microsoft SQL Server, IBM DB2, MySQL, IBM Informix, PostgreSQL, or MongoDB. What matters is when business starts to boom, your database’s workload can skyrocket out of the blue—and if your system isn’t prepared, it can crash.
So how do our experts check the health of your database?
First, they take a look at Hardware Resources.
CPU, Memory, and I/O are the three primary hardware subsystems a database relies on for good performance. This holds true in both physical servers and the digital realm, i.e. software and cloudware.
When your database environment is architected well, it distributes workload uniformly between spindles, controllers, and CPUs. The I/O subsystem can be either direct-attached storage (DAS), network-attached storage (NAS), or storage area networks (SAN). Further, variants exist inside each of these, such as RAID, iSCSI, SATA, SAS, SSD, and more. The selection active in your database will be analyzed for its effect on both the database and related applications. Fortunately, I/O configuration is the most flexible of these resources. Database and System Administrators can work jointly to balance the I/O load across all available resources. The objective is to eliminate bottlenecks and sustain throughput for the entire life of your database.
Now, a server can hold a ton of main memory—we’re talking terabytes. The use of this memory must be distributed carefully across your operating system, database, and applications. Also, allocating a sufficient reserve of free memory is critical to ensure that, during periods of peak usage when the workload is high, enough memory exists to meet the demands of said workload. In every database health check our team performs, we optimally tune the Unix kernel memory-specific parameters where applicable, dedicating a tunable chunk to the database and its memory structures.
Next, we’ll examine the operating systems pertaining to database health checks: Microsoft Windows and Unix.
Note that a database integrated with Microsoft Windows will behave differently than a database integrated with Unix. For this reason, each OS must be optimized to support your chosen database which, in turn, also requires tuning your database to accommodate your operating system.
So what comes next? Database Performance.
Part of a health check diagnosis is evaluating the performance of your database and developing a score. Many of the factors we consider when ranking performance include indexes, table fragmentation and I/O balance, optimizer stats, parameter settings, transaction logging, database layout, session activity, and cache utilizations. We’ll look at your database’s behavior as a whole when taking these variables into account. At the completion of our health check, you’ll get a detailed breakdown of every aspect of this analysis in our report.
Examine: Client Communications.
When our clientele connect to their databases, we want to make sure they have the best experience possible. Our team evaluates this to ensure you aren’t missing out on better system performance due to outdated software. If this is the case, we can perform library upgrades to give you the user experience you want and deserve.
Next up: Application Integration!
We’ll take a look at applications living in your database to see if there’s something we can enhance. If an application can be improved, we’ll talk it over with your app developers and recommend steps to improve that app.
In Client Communications, we determine how to leverage hardware and software to its fullest potential. In Application Implementation, we assess how to augment operational stability in your database environment, examine batch jobs, backup & recovery, logging & upgrade strategies, and test platform capability. All of this enables the DBA to provide recommendations for improving uptime in your environment.
It’s easy to blame application issues like slowness on the database. However, our team can determine whether these complications stem from database performance or application requests sent to the database. Our team gives application developers constructive feedback to produce a better, more efficient user experience.
Let’s Go Shopping! (Take Two)
Here’s a better outcome to the scenario we talked about in the beginning of this post. First, imagine you’re the customer, and you add the number one item on your wish list to your shopping cart. Your information is entered—all you need to do is click “confirm.” So you do, and your order is on its way!
Imagine, then, you’re part of the organization. Because you keep your database’s health a priority, your online store lives in a reliable foundation. So when consumers are ready to spend —it is the season for tax returns—their experience in your store will be seamless, error-free, and pleasant—just the way it should be.
Keep your database healthy. Give your customers the experience they deserve. Pull in the dough.