SQL Server 2012 was released for purchase on April 2, 2012. SQL Server 2014 is currently at Community Technical Preview (CTP) 1 and will be released in the not-too-distant future. (I've heard rumors that it will be before the end of the year.)
I'm pretty excited about the new features in SQL Server 2014. I think Microsoft has done a good job of identifying and addressing industry needs. This isn't a post specifically about the new features and how to use them. I have been working with various SQL Server versions since 6.5, and I can confidently say that the product has grown up over the years, especially with the last production and current CTP versions.
So many people still wait for Service Pack 1 (SP1) before adopting new SQL Server versions. I think that philosophy has been made obsolete by improved releases, which may or may not also relate to the early releases to the SQL Server community.
As a consultant, I see a lot of different SQL Server implementations in virtually every industry for virtually every purpose. I'm lucky because the experience gives me a well-rounded view of the product and its uses. If SQL Server 2014 is released before April 2014, which it likely will be, that will mean that the current version has been out for fewer than two years.
While I'm out and about, I still see a lot of SQL Server 2000 and 2005 implementations and hear of vendors not yet supporting SQL Server 2012. SQL Server 2000 is completely out of support, and 2005 will be soon. The new SQL Server versions are vast improvements over SQL Server 2000, and those customers are missing out on some really great features.
I think Microsoft took the aggressive release-and-improvement cycle to rapidly grow the product to compete with Oracle's database technology. I think this was a necessary move. They've done a great job improving the product, and SQL Server 2014 has features that will likely motivate some businesses to upgrade, but I can't help but wonder if the release cycle is getting too short. Depending on the size and complexity, upgrading can be very expensive, and Microsoft needs to remember that a lot of decision makers who control corporate budgets aren't database administrators (DBAs) and can have a very hard time understanding why they should upgrade. Microsoft very soon needs to release one version, pause while working on the next and give the database industry a chance to get caught up before releasing more SQL Server versions.
More and more I'm starting to see businesses say they're not going to upgrade to the current version and they'll wait for the next. That can be a great strategy, but with a very short release cycle, this pattern of holding off can become a perpetual waiting game and create disdain for the product.
I doubt Microsoft will change the release cycle anytime soon, so what should you do to cope? There are a lot of options, but here are a few of my thoughts.
Accept that this isn't going to change and that any successful database will need to be upgraded. Once we accept this, we can build this into our application lifecycle plans from the start of the project. We can avoid using deprecated features and code, we can parameterize ETL packages for easy mobility and we can factor in the costs of ownership.
Keep yourself current. There is so much free information in the SQL Server community. Keep your fingers on the SQL Server pulse.
Keep your staff current. Develop a culture of learning. Invest in a sandbox and a little company time for growth. You will have a very healthy return on your investments.
Hire experts to help. If this isn't something you do every day, consider getting some advice.
Stay close to current. The effort to upgrade from SQL Server 2000 to 2014 will be a lot more than going from SQL Server 2012 to 2014. If you do decide to find outside expertise, the availability of experience, support and documentation will be much easier to find if you're upgrading from a more recent version.
Don't assume you can get away with never upgrading. This strategy will catch up with you at the worst time. And it will be expensive. I've seen it many times in the past.
About the author:
Chris Presley is a SQL Server consultant and manages the consulting division at Pythian, a data management consultancy. He has been a DBA for 15 years. His most recent blog posts can be found at http://www.pythian.com/blog/author/presley/.