16 ms·
SQL Server on Linux public preview
- nateguchi 10y ago> We have seen strong reception for the private preview to date with more than 50% of Fortune 500 companies applying for the private preview wow
- wictory 10y agoI guess it is easier to get rid of Windows than it is to get rid of SQL Server.
- oblio 10y agoThere are few things which can be more embedded in your app's architecture than the data store, especially if the initial (and reasonable) assumption is that you won't ever switch away from it.
- paol 10y agoIt probably is, but there's an even better reason: Windows may be worth getting rid of, SQL Server isn't (except perhaps on grounds of licensing cost) I've worked with all major RDBMS systems at one point or another and SQLS is by far the nicest.
- bartread 10y agoI concur. It's not the most powerful in all aspects or for all applications but, most of the time, if you want an enterprise grade RDBMS (and you're happy to pay) it's the one to go for simply because by comparison with the others it's so easy to work with. The ease of use also makes it suitable for smaller shops as well. At the lowest level you install it, and it just works, and it's back by a great tooling ecosystem, and excellent documentation. It really does stand in absolutely stark contrast to, for example, Oracle. I wouldn't call it idiot-proof, but it's certainly friendlier than most RDBMS. (That's not to say there aren't issues and annoyances with it, mind, but that's true of any product.) Beyond this, if you need a relational store and you really, really don't want to have to give a monkey's about it, I'd say SQL Azure is probably the way to go. (Saying all of this I recognise that lots of people will be able to tell war stories about the torrid time they had with SQL Server, or for any other data store. My experience has largely been it's a winner though.)
- endymi0n 10y agoAnyone care to elaborate on how well it has aged? When I last used SQL Server in 2010, it was indeed pretty cool, especially the awesome ecosystem (SQL Studio, Reporting Services, graphical Query Planner, etc.). Then I went to MySQL because my startup couldn't afford a database and it was a pretty large step down. Then at the next startup, I got used to PostgreSQL and by now I'd have a pretty hard time to not being able to use JSONB, window functions or CTEs - made me realize how bad most other DB systems are by now. That is, except for a really nice GUI for PostgreSQL I'm a pretty happy camper by now. How has SQL Server kept up in the meantime?
- paol 10y agoNo idea about JSONB, but CTEs and window functions are common features in most systems, SQL Server included.
- Steeeve 10y agoIMO, it's matured very well. I'm always surprised by how good performance is in a virtualized environment compared with Oracle using the same front-end enterprise applications. The biggest advantage IMO is that you can get strong performance out of SQL Server with relatively little DBA knowledge compared with Oracle. Installation is easy, integrated authentication is easy, and backups are easy. Running a cluster and doing replication is an area that all RDBMS systems need serious improvement on, but initial setup and working with a relatively stagnant schema is straightforward. The one area that SQL Server has been lacking is having a native linux client (which is hopefully alleviated now). Not having one is the only real drawback that I run into.
- bartread 10y agoAbsolutely agree on the performance front. If you're starting out, generally SQL Server will run well out of the box, and if you upgrade hardware and reinstall on the new hardware it'll generally work well without having to do anything else. At some point you might have to start thinking about I/O and how best to arrange files but maybe not for a while, depending on what you're doing. (Just to be clear, let me restate: I'm talking starting out here - this is obviously NOT the approach you'd take when building or upgrading a large, complex application - I'm talking basic CRUDdy type apps here.) Contrast this with some of the NoSQL platforms where immediately you're forced to think about topics such as sharding and clustering (I'm looking at you Couchbase) and the pain in the ass factor is much lower. Key point: you don't need much of a clue about SQL Server administration to start using it, but you perhaps do with Couchbase, Elasticsearch, etc. From an ease of use point of view with NoSQL, I'd probably point to MongoDB as having the most approachable learning curve. There's also no BS about having to keep everything in memory to keep performance acceptable (I'm looking at you, again, Couchbase - that's two strikes). The whole point of SQL Server and other RDBMSs is that they continue to work well when the amount of data you need to store vastly outweighs the amount of physical memory you have. Of course, if you can get everything into physical memory it will perform better but, even if you can't, it will still perform well. Of course, if you're using SQL Server you do need to learn SQL (true for any RDBMS), which can be off-putting. It's absolutely not a beautiful language - in fact it's bloody aggravating when you write a lot of it - but it is extremely powerful and excellent for working with sets of data arranged in rows (i.e., tables). Nothing else really comes close.
- krylon 10y ago> Windows may be worth getting rid of, SQL Server isn't (except perhaps on grounds of licensing cost) I second that. I am not a big fan of Windows, but SQL Server has not given me the slightest trouble so far, except in cases where I was kind of asking for it.
- deleted 10y ago[deleted]
- hobarrera 10y ago> SQL Server isn't (except perhaps on grounds of licensing cost) What about supported applications? Most apps I've worked with (eg: django) support MSSQL as a second-class citizen, while other (eg: postgres) are much better supported.
- bdcravens 10y agoSpeaking to some folks from Microsoft at RubyConf last year, I know they are actively bringing in developers for the various adapters to try to improve this story. I believe this is a matter of the frameworks choosing first-class support rather than Microsoft. (been running a Rails app backed by a large "legacy" SQL Server for 3-4 years)
- hobarrera 10y ago> I believe this is a matter of the frameworks choosing first-class support rather than Microsoft. The problem has generally been the license and the environment. Any framework wanting to support MSSQL needed to have MS Windows and MSSQL licences for CI (+developers), plus the infrastructure to run windows on the CI (I've no idea how you'd do that, so there's also a knowledge barrier). Hopefully this will change now.
- technofiend 10y agoIt's not about getting rid of Microsoft: it's about getting rid of Oracle. Their licensing costs even for a very large shop may start out cheap (think 90% discounts) but will creep up over time. And when you inevitably manage to get a combination of oracle-dependent data, queries, processes, etc entrenched the prices start to climb and the even more expensive options come out. Oh you need more performance? Go horizontal with RAC. You need to go faster but can't reengineer things? Exadata will fix you right up.
- marktangotango 10y agoAnecdata point: I've heard SQL Server Enterprise runs $20k a core. I've never heard pricing for Oracle.
- dhd415 10y agoWhile the licensing details can be somewhat complicated, the retail price of ~$7k/core is published on Microsoft's site at https://www.microsoft.com/en-us/sql-server/sql-server-2016-pricing https://www.microsoft.com/en-us/sql-server/sql-server-2016-p.... Oracle's pricing is harder to come by but is closer to $25k/core for the Enterprise edition on x86 CPUs. There are often lots of extras involved in Oracle licensing, too, so the total cost differential between the two is generally higher than the per-core license cost differential.
- toyg 10y agoThe licensing difference is not that much; what is really different is TCO. Any IT guy can reasonably look after SqlServer, whereas Oracle needs specialised personnel which will inevitably be outsourced offshore, increasing complexity and costs. And Oracle support contracts (which are basically mandatory) are really expensive.
- flukus 10y agoHow hard is looking after postgres compared to SqlServer? I'm a .net developer that's been spoiled by SqlServers ease of use. I just started at a place that use sybase which is a nightmare.
- Qantourisc 10y ago> We have made it easier than ever to get started with SQL Server. You’ll find native Linux installations with familiar RPM and APT packages for Red Hat Enterprise Linux and Ubuntu Linux, and packages for SUSE Linux Enterprise Server will be coming soon as well. So easy for some ;) Not to not applaud their efforts though.
- oblio 10y agoSQL Server is meant primarily for enterprises, what they're doing makes sense. IMO if they want to be super nice* they could provide a zip package which other distros can turn into their specific packages. * Open Sourcing it is probably unrealistic at this point.
- myf01d 10y agoI wonder who would choose Microsoft or MySQL over PostgreSQL these days.
- nitinreddy88 10y agoNot to trigger a debate which is better, Many corporate companies choose SQL server over MySQL or PostgreSQL. One reason is, Paid support and excellent integration with existing Microsoft products. The features are totally worthy to use SQL server.
- vetinari 10y agoPaid support is available for MySQL and PostgreSQL too. It is from different companies than those who offer the SQL Server/Oracle/whatever support though, which may a problem if the newcomers don't already have a foot in the door already. Think of it from the business POV: why would the sellers of existing support leave their business to some outsider?
- zunzun 10y agoSQL "Sewer" - ha! A "pubic" preview sounds more accurate to me... But hey, if the sales rep says you should pay for it, why not obey them and waste your company's money?
- sctb 10y agoThis account has been posting a lot of unsubstantive comments. Please stop and review the posting guidelines: https://news.ycombinator.com/newswelcome.html https://news.ycombinator.com/newswelcome.html https://news.ycombinator.com/newsguidelines.html https://news.ycombinator.com/newsguidelines.html
- mrweasel 10y agoMaybe you don't have a choice. There's a ton of business applications that only support SQL Server. I worked for a company the used SAP Business One for their ERP system, it only supports SQL Server. Our infrastructure was mostly Linux, but for SAP B1, there's not a choice, you need SQL Server. Old school client server database applications is still very much alive.
- sandebert 10y agoI'm curious what results we will see when people start benchmarking it running on the same hardware but Windows in one case and Linux in the other. Also, what would happen (if anything) if the Linux results crushed the Windows ones? Would that be embarrassing to Microsoft? And to take the thought to the next level of paranoia, let's say Microsoft already ran those benchmarks in-house and found the Linux version vastly faster. To avoid embarrassment, would they slow it down to be more in line with the Windows version?
- eknkc 10y agoI'd guess that it would be slower on Linux by design, but not in a malicious way. They must be using various win32 apis and might have needed to shim them on Linux. Maybe they had assumptions on NTFS performance, paging behavior etc. All would contribute to a performance difference.
- taspeotis 10y ago> They must be using various win32 apis and might have needed to shim them on Linux Here's a high level overview: http://arstechnica.com/information-technology/2016/12/how-an-old-drawbridge-helped-microsoft-bring-sql-server-to-linux/ http://arstechnica.com/information-technology/2016/12/how-an...
- manigandham 10y agoOfficial blog post from today that shows more details: https://blogs.technet.microsoft.com/dataplatforminsider/2016/12/16/sql-server-on-linux-how-introduction/ https://blogs.technet.microsoft.com/dataplatforminsider/2016...
- NicoJuicy 10y agoIf I'm not mistaking, SQL is an OS on itselve, so it was designed crossplatform from the start
- Someone 10y agoEven if it was, it likely was tuned for, or even built for, only one OS for years. That will have made an impact. For example, if thread creation is faster on an OS, starting threads for smaller tasks becomes a win; if locking primitives are slower, it may be better to take a full-table lock more often.
- kriro 10y agoWill be very interesting to see how this affects SAP installations. AFAIK the only database options were SQL Server and Oracle. Granted it's been >5 years since I had to deal with this mess but this could be amazing news for some people on SAP who were pretty much forced to run Windows just for the database.
- albinary10 10y agoIn fact, this is not the case. Actually, besides ORACLE and MS SQL Server you can use also DB2 and other SAP's own DB products(MAXDB, Sybase, HANA). I am talking about ERP and CRM, the main products. Anyway, this is a very interesting news. Given the "not so good" relationship between SAP and Oracle, this option will give SQL Server a boost when it comes to SAP Customers, although it may take some time for SAP to fully support the Linux-MSSQL option.
- jimnotgym 10y agoSAP Business One is available with SQL server or HANNA. In fact resellers I have been talking to seem to have been instructed to sell HANNA first. I was told with the trade-off of more expensive hardware (HANNA) against more expensive licensing (SQL Server) it would come in about the same cost, but with the advantages of an in-memory database (especially when it comes to analytics) going to HANNA.
- deleted 10y ago[deleted]
- walterbell 10y agoSybase SQL Server 4.2 and Microsoft SQL Server (circa 1993) were identical. The products have since diverged, https://en.wikipedia.org/wiki/Sybase#History https://en.wikipedia.org/wiki/Sybase#History Sybase 11.0.3.3 for Linux was made free for production use somewhere around 2002. It is still useful for some applications, if you can find the binaries, http://froebe.net/blog/2013/03/10/howto-installing-and-running-sap-sybase-sql-server-11-0-3-3-esd-6-on-ubuntu-using-kvm/ http://froebe.net/blog/2013/03/10/howto-installing-and-runni...
- lobster_johnson 10y agoI used Sybase ASE on Linux in the early 2000s. It was a joy to use back then. Same dialect of SQL as Microsoft SQL Server, easy to set up and work with. Microsoft SQL Server has since diverged to the point of being a completely different codebase, whereas Sybase stagnated and were acquired by SAP.
- jsmeaton 10y agoI'm excited about this release because it means that developers of frameworks and libraries that target SQL Server will no longer need to have Windows available to test their software. As a specific example, the SQL server backend for Django could now (soon) be bundled with Django directly and enjoy the same level of support that other backends do. It'll also mean that users will be free to run Django on Linux, and use the drivers to communicate with a windows or Linux based SQL server. I should note that Django isn't planning to add more backends to the core project, and has actually discussed moving some into separate packages. But that doesn't mean a backend couldn't be developed by the Organisation.
- boris 10y agoMicrosoft had SQL Server Native Client (ODBC) driver for Linux available for a few years now. So your could develop/test on Linux with SQL Server running in a VM. This is how we have been doing it in ODB (C++ ORM) for years. Of course, don't expect either of them to be open source. Which means an open source ORM backend that depends on them can't be in an official Debian/Ubuntu/RH repository.
- sanxiyn 10y agoIt can be in Debian contrib. As a matter of fact, libdbd-oracle-perl is in Debian contrib. Officially, Debian contrib is not Debian, but there is no practical difference.
- snuxoll 10y agoFreeTDS is "good enough" for every time I've needed to talk with SQL Server, including the various Python/Ruby/etc. drivers built on top of it. Ditto with jTDS for Java. Outside of .Net development I have never used the official Microsoft SQL Server driver.
- needusername 10y agojTDS is severely lacking in features. AFAIK it stayed on JDBC 3.0 / J2EE 1.3. This is quite outdated for for todays world an is likely going to cause issues with current frameworks and libraries.
- mattkrea 10y agoI assume it shares the same insane licensing model. I genuinely do not understand how people put up with that (outside of enterprises that normally overpay for everything).
- floopidydoopidy 10y agoPeople associate cost with value.
- tyingq 10y agoSQL 2016 Enterprise 2-pack of Core Licenses $14,256 ($7,128 per core) SQL 2016 Standard 2-pack of Core Licenses $3,717 ($1,859 per core) Not cheap, but perhaps attractive compared to Oracle.
- mattkrea 10y agoI stand corrected. Cost is not what I was referencing.. the CAL model was my problem. No software should require a data sheet to understand the licensing.
- tyingq 10y agoAhh, yes. It is confusing. MS makes you choose either "license by core" or "non core licenses + CAL per user". Then, the differences between Enterprise, Standard, etc.
- flukus 10y agoYes, understanding licensing has a cost all on it's own. Not just to buy the products, but as your developing you have to be aware of what you can and can't use, the developer edition has everything, which can create some traps.
- jimnotgym 10y agoIt is simple, imagine you were the FD of a SME who uses a certain tech, but it is incidental to the business. You have two proposals put to you, and one of them is various strung together FOSS solutions and the other MICROSOFT. You take a personal risk by approving the project. Do you have time/ability to dig down into the risks/payoff for the other solution. £20k on a db from a brand you trust, as part of a £250k project. Would you quibble over it? That is why people pay the money.
- heisenbit 10y agoSQL Server, Sharepoint, Active Directory and Office are all platforms in their own right. It does not make sense to constrain them by requiring the windows platform to run. Balmer was jumping across the stage yelling Developers, Developers, Developers! Now someone in Redmond is executing and pushing the applications and tools platforms. It will be interesting to see where this leaves Windows in the medium term.
- kefka 10y agoWell, even though he was completely lambasted and lampooned by "Developers Developers Developers", he wasn't wrong. We see the 85%/15% split in programming and developing as well. When something is just too good to pass up, a lot of us switch over and start working on the next hotness. Sometimes, those things switch and become the embedded tech you have to learn to get in there. Arduino is one such thing. As is C, and Linux. For DB's, it used to be MySQL, and now PostgreSQL, and large heapings of good/bad for MongoDB and Redis. Where MS lost for a long time, was the insane amount of bad will towards protocol obfuscation, protocol "extensions" that break IETF protocols, and of course the monopolist behaviors that they were found guilty for. The problem is they ran away people who'd develop for their platform, and make crazy awesome things. Can't say I blame them. I'm one who ran, and really haven't looked back. And recently, we had a "party" at work, because I was able to wipe the last 2 windows boxes we had. To Linux.
- mhurron 10y ago> Active Directory Active directory is not a separate product like the others it is very much a core part of Windows Server. Unless you think AAA parts of an OS are a separate product from the OS, AD is very much tied to Windows. You could turn AD into just another identity management platform, but you would pretty much lose everything that makes AD awesome. AD is impressive because it is so integral and closely tied to Windows. It begins to lose its lustre when you integrate other platforms because when you lose that close coupling, there's nothing but a distributed user authentication store.
- TheRealDunkirk 10y agoI'm not sure what else you want from a directory server but a "distributed user authentication store." Maybe you're referring to file and print services? Email server integration? All of these kinds of things should be available, regardless of what platform the directory server is running on. I'd make some long argument about the Linux market longing for an easy-to-use directory server, but I see that Novell Directory Services still lives on as NetIQ, and I've never heard of anyone using it, so maybe the market just isn't there. (Another victim of Microsoft's monopoly.) So maybe it doesn't matter that AD isn't platform independent. I guess companies running a lot of Linux are happy to hassle with the nightmare that is OpenLDAP.
- voltagex_ 10y agoThe 16.10 packages seem to be missing and I can't find where to report it.
- roryisok 10y agoAnyone know if there's going to be a version of sql express for Linux? I couldn't find any info on it last time I looked
- gbrayut 10y agoYes... They have said that all existing versions in 2016 will have Linux releases including express.
- mmgutz 10y agoThey say they have top scores on performance benchmarks but weren't those run on Windows servers? Would like to see Linux benchmarks.
- deleted 10y ago[deleted]
- digi_owl 10y agoHeh, Torvalds must be popping a cold one as clearly his victory condition has been fulfilled. > If Microsoft ever does applications for Linux it means I've won. https://en.wikiquote.org/wiki/Linus_Torvalds https://en.wikiquote.org/wiki/Linus_Torvalds
- Scuds 10y agoGiven the licencing of an enterprise installation of MSSQLServer, I'd say 'winning' is a relative term.
- aNoob7000 10y agoI'm not sure if I'm misinterpreting your comment but paying for software is not bad, even if the software is expensive. I'd say the simple fact that an enterprise Microsoft product is running natively on Linux is a pretty big win. I guess hell has frozen over.
- AsyncAwait 10y agoI think he already did a while ago[1], [2], [3], [4] etc, but am sure this is a good excuse to open another one. :-) [1] - https://code.visualstudio.com https://code.visualstudio.com [2] - https://github.com/PowerShell/PowerShell https://github.com/PowerShell/PowerShell [3] - https://www.microsoft.com/net/core#linuxfedora https://www.microsoft.com/net/core#linuxfedora [4] - https://blogs.msdn.microsoft.com/wsl/ https://blogs.msdn.microsoft.com/wsl/
- webmaven 10y agoOf those, I think only #1 and #2 should be considered "applications".
- AsyncAwait 10y agoYou're probably right. Point being, they already shipped code for Linux.
- 10y ago
- ageofwant 10y agoI've been expecting MSLinux for 5 years > now. I've always thought that Microsoft's operating systems were the Albatross around their neck. Their apps and systems are OK. Having those available on a superior OS, like Linux would be good for the world, and MS. Buying canonical would probably be the quickest way.
- jchannon 10y agoWould you ship your production system database in a container?
- chiph 10y agoYou might consider it if you have to ship with a lot of pre-loaded data ("vanilla" data), as it'd be easier to do all those inserts/BCP executions just once on a local network and not over the internet.
- known 10y agoSatya may have pushed it hard
- Corrado 10y agoMy default RDBMS of choice has always been PostgreSQL and I'm not sure why I should choose SQL Server, even now that it's available on a non-Windows platform. I understand that there are some fancy DB things that it can do and it's optimizer can be better in some circumstances, however I like to use ORMs and don't generally interact directly with the DB. Besides, those things pale in comparison (in my mind) to the hassle in dealing with Microsoft and licensing. Using PostgreSQL is simple and doesn't involve breaking out a spreadsheet to determine how much we need to pay for it. I've seen Microsoft licensing and the companies I've been at have had to have entire departments to figure it out. No thanks. Now, the one thing I've heard from everyone is that the SQL Server tooling is beyond belief, and I believe it. If there is one weakness in the open source RDBMS world it's tooling. With such as large and obvious gap how is it that no one has filled it yet? Will no one pay for tooling? Are there tools available but the quality is not there? Seems like a good candidate for someone to fill a niche and possible make a successful business.
- sixdimensional 10y agoWell, with paid db management tools like Navicat, and open source BI tools like say, Pentaho (both just examples) you can get roughly on parity with SQL Server's tooling for something like Postgres. Microsoft has just been polishing the integrated set of tools with SQL Server for a long time, especially with GUI tools that make the job of administering SQL Server more accessible for a different class of user (e.g. the ones who don't compile their own kernels and spend all day in a shell).
- systems 10y agoi dont think the BI stack SSAS, SSIS, SSRS ... is part (for now at least) of ms sql on linux i do hope thought they do provide it and i really hope they provide SSAS and SSIS development tools on linux
- sixdimensional 10y agoOh, SSAS/SSIS/SSRS definitely aren't included on Linux currently. I wasn't suggesting they were. But getting the features of these tools (cubes/OLAP = SSAS, reports = SSRS, ETL = SSIS) for other databases such as Postgres is possible with open source BI tools. Open source BI platforms like Pentaho, BIRT, Jaspersoft (now owned by TIBCO) roll together families of different open source tools to give the same type of functionality for any DB platform. For example, things like Jaspersoft use the Mondrian OLAP cube engine underneath. And also, with all the newer engines for data processing (Apache Spark, Hadoop, Ignite, etc.) you also have a lot of new backend options for analytical/report/BI processing also.
- mcs_ 10y agoIt is time to port those legacy .net 2.0. to node. At least for me. Thank Microsoft... good one
- mcs_ 10y agoIt is time to port those legacy .net 2.0. to node. At least for me. Thank Microsoft... good one
- gaurav-gupta 10y agoMicrosoft is adapting at a good pace, going beyond the windows ecosystem. Last time I used SQL server, it didn't support sharding across machines, so only supported vertical scaling (unless you buy the appliance or add sharding logic at the application layer). I think that's something they need to fix, to start using SQL server for large scale applications. Now if they can just fix windows, I might start using that too. Maybe WindowsX? I do enjoy using VSCode on Mac!
- webmaven 10y agoI think you meant WinX: https://www.wired.com/2005/02/microsoft-5/ https://www.wired.com/2005/02/microsoft-5/
- gaurav-gupta 10y agoThanks for sharing this! Its interesting to know Microsoft tried this 10 years ago. They might eventually bring it back, after making sure all their other applications work on ..nix :) They are definitely sowing the seeds now, with .NET support on Linux, adding the ubuntu subsystem, SQL server...
- deleted 10y ago[deleted]