They say data is the new oil, so therefore, a good database infrastructure is the equivalent of the tankers, pipelines and gas stations that actually make sure it's always where it needs to be. And as one of the most important parts of any business' IT estate, deciding when to move on to something more modern will be one of the most consequential decisions any firm can take.
A database migration isn't something to be embarked on lightly. With these systems at the heart of everything a business does, any delays or missteps in the implementation process could prove very costly. But an attitude of 'if it ain't broke, don't fix it' will only get you so far. Sooner or later, it will become obvious that the solution you currently have in place is no longer fit for purpose, so the need to upgrade will outweigh any risks that this process may introduce.
But how do you know if you're reaching that point? And if you have, what factors should you be taking into consideration to ensure that when you do make the move, you don't get any nasty surprises?
SQL Server 2019 is here
This year may be a good time for businesses to reassess their database needs, as Microsoft introduces the next major update to its SQL Server offering. SQL Server 2019 is now available and offers users a wide range of new and improved features that should help them to take advantage of the latest innovations and developments.
For example, SQL Server 2019 has been designed to make it easier to manage big data environments, offering key elements of a data lake such as Hadoop Distributed File System (HDFS), Spark, and analytics tools, fully integrated into SQL Server and with support available from Microsoft.
This lets users deploy big data clusters with SQL and Spark Linux containers on Kubernetes and access data from HDFS, while it also allows the running of Python and R apps.
Other features that are part of the update include several additions to the database engine, such as improved diagnostic data and static data masking, which could be especially useful in today's privacy-conscious environment where there are more restrictions and compliance issues to consider when working with personally identifiable information.
Static data masking can be used for development, testing, analytics and business reporting, compliance, troubleshooting, and any other scenario where specific data cannot be copied to different environments.
With improvements to persistent memory support and low latency I/O, new Intelligent Query Processing tools and UTF-8 support gives users more options for character data storage, and firms are likely to see a number of other benefits if they choose to adopt SQL Server 2019 as quickly as possible.
Is it worth upgrading?
But do you really need to be making such a big step, especially with tools that are still in beta? Certainly if you're on a much older edition of the solution, the arrival of a new version should provide the stimulus you need to finally get around to modernizing your systems. On July 9th 2019, extended support for SQL Server 2008 and 2008 R2 will be discontinued, so if you're running these solutions, the emergence of SQL Server 2019 comes at a timely moment.
For those on versions such as SQL Server 2016, however, the decision may not be so clear cut. While the range of new features and capabilities should certainly be of interest to any organization looking to make their data processing operations as streamlined and efficient as possible, businesses should look carefully at what they may get out of any upgrade before committing to a migration.
If, for example, businesses are still using traditional databases for the most part, the range of new tools geared towards big data clusters may not be immediately useful, so it could be sensible to question the usefulness of going through a major migration for features that are not needed at this time. While it never hurts to future-proof a business and be ready for what will be needed tomorrow, this has to be balanced against the time, expense and risks of a premature migration to an immature technology.
Also, if databases are mission-critical, businesses may consider it an unnecessary risk to move them to cutting-edge, less proven technology until it has been patched and updated to iron out any bugs or vulnerabilities that may emerge in the coming months.
As a result, there are a few key questions businesses need to answer when making a decision on a database upgrade:
- Can you do everything you wish to with your current system?
- Is performance beginning to suffer, as existing solutions have to cope with ever-growing amounts of data?
- What new hardware would you need to support the new system?
3 key factors to bear in mind with a server upgrade
If you do decide to take the plunge and migrate to SQL Server 2019, there are a few things you should keep in mind to ensure the process goes as smoothly as possible. As this is still a fairly new tool, the odd teething trouble is to be expected. Therefore, it pays to have a clear plan in place and take precautions to ensure that when you do encounter difficulties, they don't bring the whole project grinding to a halt.
1. Test thoroughly
A thorough testing environment is essential, as insufficient testing is one of the biggest causes of failures in SQL Server migrations. This is especially true if you're making the move from a much older version, as it will naturally be a bigger leap, with more potential for incompatibilities or other issues. This should involve not only all the applications that use the database, but also every other way of executing database code.
2. Migrate in stages
Trying to do everything all at once is another mistake to avoid. It can be tempting to try and complete the process as fast as possible - after all, no-one wants to see projects dragging on for months on end - but trying to take on too much in too short a period increases the risk of issues being overlooked and errors creeping in. A more gradual approach allows for any bugs to be worked out as you go along and for testing to be completed more thoroughly.
3. Ensure there is a back-up plan
Finally, no plan for migrating a key database should be complete without a strategy that enables an organization to roll back to previous versions if things do not go as planned. This is a contingency no firm will hope to need, and in today's always forward-thinking environment, may even be viewed as a counterproductive waste of time, but it's a vital buffer that will ensure continuity in the event of unforeseen circumstances.
If it's not easy to undo a change - large or small - that doesn’t work as intended, efficiency will be hit and it will take more time and resources to try and fix issues in production, when it would be much quicker and easier to roll back and take another look.