olly - Fotolia
The end of support for a product as wide-reaching as SQL Server can be a stressful time for the database administrators whose job it is to perform upgrades. However, two database experts see SQL Server 2005 end of life on April 12 as a blessing in disguise.
Bala Narasimhan, vice president of products at PernixData, and David Klee, founder and chief architect of Heraflux Technologies, said SQL Server 2005 end of life presents the opportunity DBAs need to take stock of their databases and make changes based on what newer versions of SQL Server have to offer.
SearchSQLServer spoke to Narasimhan and Klee about the best way for DBAs to take advantage of the opportunity that the end of support creates.
This is the first part of a two-part article. Click here for the second part.
How can we turn SQL Server 2005 end of life into an opportunity for DBAs?
Bala Narasimhanvice president of products at PernixData
David Klee: I've been a DBA. I've been a system administrator. I've been an IT manager and an architect, and a lot of these different components overlap. My biggest take on it, from the role of the DBA, is that their number one job is to make sure that the data is there when you need it. Secondly, it's about performance. The upgrade process is, in my eyes, wonderful, because the new versions of SQL Server 2012 and 2014, soon to be 2016, give you a lot more options for enterprise level availability. [They simplify] things. [They give] you better uptime. [They give] you better resiliency to faults. These are features that are just included with [them].
What this is doing is giving people a good opportunity to get the stragglers out of their environment. I'm out in the field a lot. I do see a lot of 2005 machines out here. It's one of those things where the management mindset is: "If it's not broke, don't fix it." But, with end of life, end of support it's pretty significant
Bala Narasimhan: I'm similar to David in terms of background, except that I did R&D at Oracle and other database companies. Since 2005, there has been a lot of innovation that has happened at a lot of database companies on the database side itself, but also on the infrastructure side holding these databases. I think it's an opportunity to leverage all of that innovation as well. The end of life gives you a chance to look back at all of the innovations on the database side and on the infrastructure side as well. Sometimes, those innovations are complementary and sometimes they're not. It gives you an opportunity to evaluate those and see what's right for you in 2016.
In [SQL Server] 2014, there are features such as the columnstore and in-memory computing and all of that. ... It may be the case that you can leverage similar functionality without having to upgrade to 2014, because there are other innovations happening in the industry. This may be another example of where you can step back and [ask yourself], "Should I upgrade to 2014 to get there? Or should I upgrade to 2012 because I don't need it? Or is there another way to get the same capability?"
We're both advocating for the right to tool for the job.
Klee: Exactly. I don't think that there is a specific answer to that. I think it depends on what that particular DBA wants and what that particular business is trying to achieve. There are multiple ways to achieve that and this is giving you an opportunity to evaluate that.
What are your suggestions for how DBAs can best take advantage of this upgrade?
Narasimhan: This is a time to take a step back. I would recommend having a conversation that includes the DBA; the storage admin; and, if they're virtualized, the virtualization admin as well and try to understand what all three are trying to achieve because, at the end of the day, you need to run the database on some kind of infrastructure. In 2005, it needn't have been virtualized, but, in today's world, it will most probably be virtualized. So, bring them all to the table and try to understand what they need to do from a database perspective and an infrastructure perspective.
Once you've done that, there are other conversations to have, such as: "Do we want to run an application rewrite?" For instance, if you're going to upgrade from 2005 to 2014 because you want to leverage the in-memory capabilities of SQL Server, then you need to revisit your database schema. You need to potentially rewrite your application. There are the cardinality estimation changes that will cause a rewrite. Do you want to incur those costs? Sometimes the answer may be yes and sometimes the answer may be no. If so, it's not required that you go to 2014. You can go to 2012.
Similarly, it's a chance to say this application has evolved over time. The optimizer has changed in SQL Server. Therefore the I/O capabilities have changed. Maybe we should talk to the storage admin and the virtualization admin and figure out what kind of infrastructure we'll need to support this application successfully post-upgrade.
I will, therefore, open up the conversation a little bit and bring other stakeholders to the table before deciding which way to go.
Klee: My take on it is pretty much aligned with that. It's, essentially, look at the architectural choices that went into that legacy deployment -- high availability, performance, virtualization or no virtualization. Revisit today and see if the technology has changed, or you can simplify some of those choices or even replace them with features that weren't even around back in the day. Availability Groups, virtualization, even public cloud deployments, any of the in-memory technologies, they were just not around back in the 2005 days, and now they're just extremely powerful and extremely useful.
It's an opportunity to simplify and improve, basically.
What to do after the end of support for SQL Server 2005
SQL Server 2014 is the first version to have in-memory capabilities
AlwaysOn Availability Groups get an update for SQL Server 2014