People all over the database world were in for a stunner this week when Microsoft announced that they will be supporting SQL Server installations on Linux in mid-2017. My inbox has been flooded with questions ever since.
I believe this move makes a lot of sense for SQL Server and for Microsoft in general. Despite significant investments and partnerships with the open source community in the past few years, people understandably still view the company as devoted to monolithic, closed-source, enterprise software – in some ways standing in as the “big bad wolf” going up against scrappy open-source upstarts. But that view of the company is outdated: just take a look at the GitHub page for Microsoft or at any one of the many collaborations and projects described on the company’s Openness blog.
When I saw the announcement about SQL Server on Linux I reflexively began to interpret it in an old-school manner, viewing it as a shot across the bow of Oracle. But on reflection and after a few helpful discussions I’ve come to view it much differently. Here are my takeaways:
- Developers, and especially the up-and-coming young “cloud native” developers, are supporting non-Microsoft operating systems and using them as their daily machines for coding and testing. Context-switching (and hardware-switching, or VM-switching) to Windows in order to use SQL Server has been a powerful disincentive for them. This move can help win their hearts and minds.
- Microsoft sees its future in subscription and cloud revenue, and they want to be there to sell you services regardless of your specific choice in platform or infrastructure. This will work better if Microsoft’s own products – including SQL Server – function outside of the walled garden of Windows.
- A change in OS is not unprecedented for SQL Server itself: it was originally built for OS/2 and architecturally runs on “SQLOS,” a sort of private operating system. I expect this means that much of the database engine itself can behave similarly on Linux and on Windows.
- It remains to be seen what Microsoft will offer in terms of functionality and price point. At this stage we can probably presume that the core database engine will be ported, but we don’t know the status of the many endpoints for enterprise functionality like business intelligence, high availability, and disaster recovery. Those who are already crying out that Linux users will not want to pay for SQL Server may have overlooked the fact that there is already a free reduced-functionality version of SQL Server for Windows – one which IDERA’s own surveys report is heavily utilized by functional teams needing small, single-application databases.
- The very early announcement of this project is itself telling. In addition to turning heads toward Microsoft just as they’re preparing for their SQL 2016 release, by letting the world know what is coming there may be more time for Microsoft to see how the news is received and maneuver accordingly. It seems smart to me.
For existing SQL Server DBAs and SQL Server shops who might worry about this, I would counsel: don’t. If SQL Server on Linux sounds like something that will help you better serve your customers, dive right in, but otherwise I see no credible evidence that this is a sign that the team at Microsoft is going to de-emphasize features in the flagship editions.
It will be a couple years before we can tell whether this will be a success for the data platform team or whether it will be a niche product experiment, and I think it’s far too early to naysay. Those who would scoff at experimentation while also deriding the company for not innovating fast enough cannot have it both ways, and anyone who thinks that big strategic moves should be avoided in favor of small tactical changes and wish-list features is not looking at the big picture. Microsoft CEO Satya Nadella, quoting Nietsche in an early analyst call, advised that Microsoft must have “courage in the face of reality.” Times are changing, and our expectations of what to expect out of Redmond should be changing as well.