In the world of heterogeneous data centers - having multiple operating systems running on different hardware platforms (and architectures) is the norm. Even traditional applications and databases are being migrated or abstracted using Java and other interpreted languages to minimize the impact on the end user, if they decide to run on a different platform.
Consider the common scenario where you have both Windows and Linux running in the data center and you need your Linux application to talk to Microsoft SQL Server and get some existing data from it. Your application would need to connect to the Windows server that is running the SQL Server database using one of many available APIs and request information.
While that may sound trivial, in reality you need to: know where that system is located, authenticate your application against it, and pay the penalty of traversing one or more networks to get the data back - all while the user is waiting. This, in fact, was "the way of the world" before Microsoft announced their intent to port MS SQL server to Linux in March of 2016. Today, however, you have a choice of having your applications connect to a Microsoft SQL Server that runs on either Windows or Linux
, in the same consistent fashion and possibly even on the same physical system.
But does it really make sense to run Microsoft SQL Server on Linux? Thanks to a record-breaking performance result (see below) on one of the most prominent database benchmarks, called TPC-H, it certainly does make sense to run MS SQL Server on Red Hat Enterprise Linux!
|1,000 GB Results|
|Rank||Company||System||QphH||Price / QphH||Available||Database||Operating System||Cluster|
|1||Hewlett Packard Enterprise||HPE ProLiant DL380 Gen9||717,101||.61 USD||10/19/17||Microsoft SQL Server 2017 Enterprise Edition||Red Hat Enterprise Linux 7.3||N|
|2||Hewlett Packard Enterprise||HPE ProLiant DL380 Gen9||678,492||.64 USD||07/31/16||Microsoft SQL Server 2016 Enterprise Edition||Microsoft Windows Server 2012 R2 Standard Edition||N|
This result puts Microsoft SQL Server on Red Hat Enterprise Linux at the top of that benchmark running on a single server at 1TB scale factor. And the server is from HPE, the trusted OEM vendor that set many world record results over the years with their ProLiant line of systems. This illustrates the close collaboration among three companies, each being a leader in their respective field, HPE, Microsoft, and Red Hat to deliver the first-ever result with SQL Server 2017 Enterprise Edition.
Let’s compare the new result to the previous best score achieved with Microsoft SQL Server 2016:
- #1 performance and price/performance on non-clustered TPC-H@1000GB
- The first and only result with Microsoft SQL Server 2017 Enterprise Edition
- SQL Server 2017 on Red Hat Enterprise Linux delivers better results than the previous #1 non-clustered TPC-H@1000GB result on SQL Server 2016 Enterprise Edition on Windows
- 6% higher performance
- 5% lower price/performance
- Both results were achieved on similarly configured HPE ProLiant DL380 Gen9 servers with two Intel® Xeon® E5-2699 v4 processors
Additional factors that contributed to this outstanding result include Red Hat Enterprise Linux 7 support for performance features such as:
- DirectIO - allows database applications to manage high I/O throughput more effectively
- Non-Uniform Memory Access (NUMA) - enables optimal placement of processes and threads in the server
- x86_64 Hugepages - offers better memory utilization for databases
So what does this mean for our mutual customers?
This means our customers have a choice when it comes to selecting an operating system to run their Microsoft SQL Server databases and an opportunity to realize great long-term value as the TPC-H price/performance metric (price/QphH) reflects maintenance costs over a three-year period. Questions or feedback? Reach out using the comments section below.
Microsoft and Windows are U.S. registered trademarks of Microsoft Corporation. Linux is a registered trademark of Linus Torvalds. Intel and Xeon are trademarks of Intel Corporation in the U.S. and other countries. TPC and TPC-H are trademarks of the Transaction Processing Performance Council.
About the author
Yan Fisher is a Global evangelist at Red Hat where he extends his expertise in enterprise computing to emerging areas that Red Hat is exploring.
Fisher has a deep background in systems design and architecture. He has spent the past 20 years of his career working in the computer and telecommunication industries where he tackled as diverse areas as sales and operations to systems performance and benchmarking.