Warning: Constant WP_TEMP_DIR already defined in /var/www/html/blogs/glenn/wp-config.php on line 94

Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/blogs/glenn/wp-config.php:94) in /var/www/html/blogs/glenn/wp-includes/feed-rss2.php on line 8
Upgrading SQL Server Archives - Glenn Berry https://www.sqlskills.com/blogs/glenn/category/upgrading-sql-server/ Semi-random musings about SQL Server performance Sat, 11 Jan 2020 20:51:57 +0000 en-US hourly 1 https://wordpress.org/?v=6.9.4 Why You Shouldn’t Use an Intel Xeon Silver Processor for SQL Server https://www.sqlskills.com/blogs/glenn/why-you-shouldnt-use-an-intel-xeon-silver-processor-for-sql-server/ https://www.sqlskills.com/blogs/glenn/why-you-shouldnt-use-an-intel-xeon-silver-processor-for-sql-server/#comments Sat, 27 Apr 2019 21:31:31 +0000 http://3.209.169.194/blogs/glenn/?p=1581 Introduction Intel has four main segments in their Second Generation Intel Xeon Scalable Processor Family. These include Xeon Bronze, Xeon Silver, Xeon Gold, and Xeon Platinum. The reason why there are six boxes in Figure 1 is because Intel further segments this with two Xeon Platinum product segments and two Xeon Gold product segments. This […]

The post Why You Shouldn’t Use an Intel Xeon Silver Processor for SQL Server appeared first on Glenn Berry.

]]>
Introduction

Intel has four main segments in their Second Generation Intel Xeon Scalable Processor Family. These include Xeon Bronze, Xeon Silver, Xeon Gold, and Xeon Platinum. The reason why there are six boxes in Figure 1 is because Intel further segments this with two Xeon Platinum product segments and two Xeon Gold product segments. This is typical over-segmentation by Intel, but it is just the tip of the iceberg as far as their product segmentation goes. That is a topic for another blog post!


2nd Generation Intel Xeon Scalable

Figure 1: Second Generation Intel Xeon Scalable Processor Segments


Modern SQL Server Licensing

Since SQL Server 2012, Microsoft has used core-based licensing rather than socket-based licensing. For non-virtualized servers, you buy core licenses in two-packs, with a minimum of four processor core licenses per physical CPU. These correspond to physical processor cores, not logical processor cores, so Intel HT and AMD SMT is a free benefit. This can give you roughly 25% more overall CPU capacity (certainly not 100% like you might assume by just counting total logical cores).

With virtualized servers, you also buy core licenses in two-packs, with a minimum of four processor core licenses per virtual machine. These correspond to virtual processor cores, which might map to logical cores or physical cores, depending on whether Intel HT or AMD SMT is enabled on the host machine. If you license all of the physical cores on the virtualization host and you have Microsoft Software Assurance, you can forget about counting vCPUs in your VMs, and you can configure them anyway you want to.

A key fact here is that Microsoft does not change the license pricing based on the actual performance of a processor core. It doesn’t matter how old or new the processor is, it doesn’t matter how slow or fast it is, the price per core is exactly the same. You need to be aware of this, and keep it in mind as you select the exact processor to use for SQL Server. Otherwise, you will be losing performance and scalability, or paying for too many SQL Server core licenses, or some combination of both. Each SQL Server 2017 Enterprise Edition core license is $7,128.00.


Intel Xeon Gold Processor Family

The Intel Xeon Gold Processor Family is divided between the entry level two or four-socket Gold 5200 family and the enhanced two or four-socket Gold 6200 family. According to Intel,

“With support for the higher memory speeds, enhanced memory capacity, and four-socket scalability, Intel® Xeon® Gold processors deliver significant improvement in performance, advanced reliability, and hardware-enhanced security. It is optimized for demanding mainstream data center, multi-cloud compute, and network and storage workloads. With up-to four-socket scalability, it is suitable for an expanded range of workloads.”

I think the Intel Gold Processor Family is the sweet spot for most SQL Server workloads. It lets you choose from between 4 and 22 physical cores, with frequency-optimized, lower core count SKUs being available. This lets you get higher single-threaded CPU performance while minimizing your physical core counts, which lets you minimize your SQL Server license costs.


Intel Xeon Silver Processor Family

The Intel Xeon Silver Processor Family is for “enhanced” two-socket servers. According to Intel,

“Intel® Xeon® Silver processors deliver essential performance, improved memory speed, and power efficiency. Hardware-enhanced performance required for entry data center computes, network, and storage.”

Compared to the entry level Intel Xeon Bronze Processor Family, the Silver Family offers hyper-threading, Turbo Boost, DDR4-2400 support, and larger L3 cache sizes. This makes the Bronze family an even worse choice for SQL Server usage.

According to Intel,

“The Intel® Xeon® Bronze processors delivers entry performance for small business and basic storage servers. Hardware-enhanced reliability, availability, and serviceability features designed to meet the needs of these entry solutions.”


Processor Shootout

Let’s compare the Intel Xeon Silver 4208 processor to the Intel Xeon Gold 6244 processor. These are both Second Generation Intel Xeon Scalable processors (Cascade Lake-SP), using the same microarchitecture, so we can directly compare them.

The 14nm Intel Xeon Silver 4208 processor has 8 cores/16 threads with a Base clock speed of 2.10 GHz and a Max Turbo clock speed of 3.20 GHz. It has an 11MB L3 cache and supports DDR4-2400 memory. It has two Ultra Path Interconnect (UPI) links and can scale up to two sockets. It does not support Intel Optane DC Persistent memory. Its thermal design power (TDP) is 85 watts and it has one AVX-512 FMA unit. It has a recommended customer price of $417.00.

The 14nm Intel Xeon Gold 6244 processor has 8 cores/16 threads with a Base clock speed of 3.60GHz and a Max Turbo clock speed of 4.40GHz. It has an 25MB L3 cache and supports DDR4-2933 memory. It has three Ultra Path Interconnect (UPI) links and can scale up to four sockets. It does support Intel Optane DC Persistent memory. Its thermal design power (TDP) is 150 watts and it has two AVX-512 FMA units. It has a recommended customer price of $2,925.00.

You might be thinking “Wow, that is a big difference in the cost of the processors. I could save over $5,000.00 in a two-socket server by choosing the Silver processor instead of the Gold processor”. That is true, but lets take a look at what you would lose by doing that.

If your server has a typical CPU load, most of your processor cores will be running at their base clock speed most of the time. This makes the base clock speed a very important metric for SQL Server usage. There is a huge difference (71.4%) between 2.10 GHz and 3.60 GHz. The base clock speed of the Gold 6244 is actually higher than the Turbo clock speed of the Silver 4208. If your power management is properly configured for best performance, you will always be running a higher clock speed on all cores of the Xeon Gold 6244 than the Xeon Silver 4208 can ever run, even on a single core at full turbo boost speed. The Turbo clock speed difference between the two processors is 37.5%.

The L3 cache of the Gold 6244 is more than twice the size of the Silver 4208. This means there is a much better chance of finding the data you need for a query in the L3 cache rather than in your main DRAM memory. If you do have to go out to main DRAM, your DDR4-2933 memory with the Xeon Gold 6244 will be noticeably faster than the DDR4-2400 memory with the Xeon Silver 4208.


Comparing Estimated TPC-E Scores

So far, there has been one official TPC-E benchmark score on a system with Second Generation Intel Xeon Scalable processors. It is for a two-socket Lenovo ThinkSystem SR650, with two Intel Xeon Platinum 8280 processors. This system had a TPC-E Throughput score of 7,012.53. This is a decent measure of the CPU capacity of this system. We can use this actual score as a baseline for comparison against other Intel processors from the same generation.

Since this system has a total of 56 physical cores, we can divide 7012.53 by 56 to get a score/core of 125.22, which is a good measure of the single-threaded performance of this processor. Remember, this submission is for a system running SQL Server 2017, so it is not just a synthetic benchmark.

For a simple but relatively accurate comparison, we can adjust this score to account for the difference in the number of physical cores and the difference in the base clock speeds between the processor used for the actual TPC-E submission and any other processor from that same generation.

Here is the math for both processors:


Intel Xeon Gold 6244     16 cores/56 cores = .29 core count adjustment      3.60 GHz / 2.70 GHz = 1.33 base clock speed adjustment

7012.53 times 0.29 equals 2003.58, then 2003.58 times 1.33 equals a 2671.44 total estimated score

If we take this total estimated score of 2671.44 divided by 16 total physical cores in the system, we get an estimated 166.97 score/core


Intel Xeon Silver 4208   16 cores/56 cores = .29 core count adjustment      2.10 GHz / 2.70 GHz = 0.78 base clock speed adjustment

7012.53 times 0.29 equals 2003.58, then 2003.58 times 0.78 equals a 1558.34 total estimated score

If we take this total estimated score of 1558.34 divided by 16 total physical cores in the system, we get an estimated 97.40 score/core


Conclusion

These calculation results show that we would have significantly more capacity and much better single-threaded CPU performance with the Intel Xeon Gold 6244 compared to the Intel Xeon Silver 4208. From a SQL Server perspective, the $5000.00 lower hardware cost would be a minor consideration compared to the $114,048.00 license cost for SQL Server 2017 Enterprise Edition.

This methodology does not account for factors such as total L3 cache size, L3 cache size per core, memory speed, and number of UPI links. If these were factored in, the Intel Xeon Gold 6244 would do even better compared to both the Intel Xeon Platinum 8280 and the Intel Xeon Silver 4208.

The difference is so stark that I would consider dropping down to the four-core Intel Xeon Gold 5222 processor, which would save me $56,024.00 in SQL Server 2017 Enterprise Edition license costs on a two-socket system. Unfortunately, Intel has not released a six-core Intel Xeon Gold 6228 processor to replace the old Intel Xeon Gold 6128 processor, so we have a big gap between the Xeon Gold 5222 and the Xeon Gold 6244.

Another alternative would be to have just one Intel Xeon Gold 6244 processor in a two-socket system. If you did that, you would lose half your total memory capacity and half of your total PCIe 3.0 lanes.

A recent conversation on Twitter prompted this post. I would love to hear your thoughts on this either in the comments section or on Twitter. I am GlennAlanBerry on Twitter.




The post Why You Shouldn’t Use an Intel Xeon Silver Processor for SQL Server appeared first on Glenn Berry.

]]>
https://www.sqlskills.com/blogs/glenn/why-you-shouldnt-use-an-intel-xeon-silver-processor-for-sql-server/feed/ 4
IEPUM2017: Immersion Event on Planning and Implementing an Upgrade/Migration to SQL Server 2017 https://www.sqlskills.com/blogs/glenn/iepum2017-immersion-event-on-planning-and-implementing-an-upgrade-migration-to-sql-server-2017/ https://www.sqlskills.com/blogs/glenn/iepum2017-immersion-event-on-planning-and-implementing-an-upgrade-migration-to-sql-server-2017/#respond Wed, 14 Nov 2018 22:34:49 +0000 http://3.209.169.194/blogs/glenn/?p=1447 We’ve just announced the next round on live, online training classes for the first quarter of 2019. Paul has more details about all six classes that we are offering here. I will be teaching IEPUM2017: Immersion Event on Planning and Implementing an Upgrade/Migration to SQL Server 2017 on January 29-31, 2019. I think this is […]

The post IEPUM2017: Immersion Event on Planning and Implementing an Upgrade/Migration to SQL Server 2017 appeared first on Glenn Berry.

]]>
We’ve just announced the next round on live, online training classes for the first quarter of 2019. Paul has more details about all six classes that we are offering here. I will be teaching IEPUM2017: Immersion Event on Planning and Implementing an Upgrade/Migration to SQL Server 2017 on January 29-31, 2019.

I think this is a very interesting and useful class that is especially relevant during 2019 because of the end of extended support for SQL Server 2008/2008 R2, the end of mainstream support for SQL Server 2014, the release of Windows Server 2019, the upcoming release of SQL Server 2019, new processor releases from both Intel and a newly competitive AMD, and many new memory and storage-related developments that affect SQL Server. I wrote about some of these factors here.

Here is the module list:

  • Module 1: Upgrade Planning
  • Module 2: Hardware and Storage Selection
  • Module 3: SQL Server 2017 Installation and Configuration
  • Module 4: Upgrade Testing
  • Module 5: Migration Planning
  • Module 6: Production Migration Methods

This class is relevant for upgrade/migrations to SQL Server 2016, SQL Server 2017, and SQL Server 2019. I think a lot of organizations are going to be upgrading/migrating to a modern version of SQL Server during 2019-2020, and I want to teach as many people as possible how to avoid doing a “blind migration”, where they don’t do the necessary planning, analysis, and testing, and end up having poor upgrade/migration experience.

You can jump right to the registration page here. I hope to see you in this class!




The post IEPUM2017: Immersion Event on Planning and Implementing an Upgrade/Migration to SQL Server 2017 appeared first on Glenn Berry.

]]>
https://www.sqlskills.com/blogs/glenn/iepum2017-immersion-event-on-planning-and-implementing-an-upgrade-migration-to-sql-server-2017/feed/ 0
Speaking at PASS Summit 2018 https://www.sqlskills.com/blogs/glenn/speaking-at-pass-summit-2018/ https://www.sqlskills.com/blogs/glenn/speaking-at-pass-summit-2018/#respond Wed, 06 Jun 2018 15:33:53 +0000 http://3.209.169.194/blogs/glenn/?p=1380 I am honored to have been selected to present a half-day session at the PASS Summit 2018 in Seattle, WA. My session is Migrating to SQL Server 2017, and here is the abstract: Migrating to SQL Server 2017 How do you design and implement a safe and successful migration from an older version of SQL […]

The post Speaking at PASS Summit 2018 appeared first on Glenn Berry.

]]>
I am honored to have been selected to present a half-day session at the PASS Summit 2018 in Seattle, WA. My session is Migrating to SQL Server 2017, and here is the abstract:

Migrating to SQL Server 2017

How do you design and implement a safe and successful migration from an older version of SQL Server to SQL Server 2017 with no data loss and virtually no downtime? What if you have a limited hardware budget for the upgrade effort and you are worried about the core-based licensing in SQL Server 2017? How can you choose your hardware wisely in light of the new licensing model? How can you convince your organization that the time is right to upgrade to SQL Server 2017? This session will cover several different methods for migrating your data to SQL Server 2017 while meeting these objectives and minimizing your hardware and licensing costs.

This is a topic that I have presented and taught multiple times, and it is something I am quite passionate about. I think it is also increasingly relevant as SQL Server 2014 will be falling out of Mainstream support on July 9, 2019, and both SQL Server 2008 and SQL Server 2008 R2 will be falling out of Extended Support on July 9, 2019. Next July is sort of a looming deadline for many organizations!

I am also going to be doing a preview version of this session in the first slot of the next 24 Hours of PASS Summit Preview event on June 12th, 2018.

Hopefully I will see you at both events!




The post Speaking at PASS Summit 2018 appeared first on Glenn Berry.

]]>
https://www.sqlskills.com/blogs/glenn/speaking-at-pass-summit-2018/feed/ 0
Upgrading SQL Server– Intel Xeon-W Family https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-intel-xeon-w-family/ https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-intel-xeon-w-family/#comments Thu, 31 Aug 2017 22:47:39 +0000 http://3.209.169.194/blogs/glenn/?p=1271 On August 30, 2017, Intel released their new Intel Xeon Processor W Family of one-socket workstation processors (hence the W) based on the Skylake-SP Xeon server processors. These processors are meant as a replacement for the older one-socket Intel Xeon E5-1600 v4 series that had up to eight physical cores. The Xeon-W processors will have […]

The post Upgrading SQL Server– Intel Xeon-W Family appeared first on Glenn Berry.

]]>
On August 30, 2017, Intel released their new Intel Xeon Processor W Family of one-socket workstation processors (hence the W) based on the Skylake-SP Xeon server processors. These processors are meant as a replacement for the older one-socket Intel Xeon E5-1600 v4 series that had up to eight physical cores. The Xeon-W processors will have between four and eighteen physical cores, support up to 512GB of RAM and have 48 PCIe 3.0 lanes.

These processors are essentially Xeon versions of the Skylake-X Core i9 HEDT processors with all of the professional features enabled such as extended memory support, vPro, Intel’s AMT, and the standard enterprise Reliability, Serviceability and Availability (RAS) features. They will require a new C422 chipset, and they will not work in existing X299 chipset motherboards.

These processors give you another possible choice for buying or building a powerful, professional level workstation. Value-wise, a system based on one of the AMD Ryzen Threadripper processors is going to be a much better option for most people. Anandtech is a decent write-up here.

 

Additional Resources

My new Pluralsight course, SQL Server: Upgrading and Migrating to SQL Server 2016 has just been published. This is my eleventh course for Pluralsight, but the complete list of my courses is here.

Building on this online course is a new three day class, IEUpgrade: Immersion Event on Upgrading SQL Server, taught by myself and Tim Radney. The first round of this course will be taught in Chicago from October 11-13, 2017.

Finally, I will be presenting a half-day session called Migrating to SQL Server 2017 at the PASS Summit 2017 in Seattle, WA from October 31- November 3, 2017. You can use this code: BL150GG to register for the PASS 2017 Summit to get a $150 discount.

Here is a link to the complete series about upgrading SQL Server.

The post Upgrading SQL Server– Intel Xeon-W Family appeared first on Glenn Berry.

]]>
https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-intel-xeon-w-family/feed/ 1
Upgrading SQL Server– Database Experimentation Assistant https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-database-experimentation-assistant/ https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-database-experimentation-assistant/#respond Thu, 31 Aug 2017 21:59:37 +0000 http://3.209.169.194/blogs/glenn/?p=1270 Another useful, if somewhat complicated, free tool from Microsoft is the Database Experimentation Assistant (DEA). Microsoft released DEA version 2.1 on July 25, 2017, with many new improvements over the earlier preview versions as detailed here. Here is how Microsoft describes the DEA tool: “Database Experimentation Assistant (DEA) is a new A/B testing solution for […]

The post Upgrading SQL Server– Database Experimentation Assistant appeared first on Glenn Berry.

]]>
Another useful, if somewhat complicated, free tool from Microsoft is the Database Experimentation Assistant (DEA). Microsoft released DEA version 2.1 on July 25, 2017, with many new improvements over the earlier preview versions as detailed here.

Here is how Microsoft describes the DEA tool:

“Database Experimentation Assistant (DEA) is a new A/B testing solution for SQL Server upgrades. It will assist in evaluating a targeted version of SQL for a given workload. Customers who are upgrading from previous SQL Server versions (SQL Server 2005 and above) to any new version of the SQL Server will be able to use these analysis metrics provided, such as queries that have compatibility errors, degraded queries, query plans, and other workload comparison data, to help them build higher confidence, making it a successful upgrade experience.”

Unlike the Database Migration Assistant (DMA) that I discussed previously, installing and using DEA is a little more involved. What this tool allows you to do is to record a production or at least production-like workload on one version of SQL Server than then replay that same workload on a different version of SQL Server (on a different server) to see how the new version performs with your data and workload. It could also be used to compare different hardware, storage, or different configuration settings.

The Microsoft Data Migration blog is a good source of addition information about both DMA and DEA.

 

Additional Resources

My new Pluralsight course, SQL Server: Upgrading and Migrating to SQL Server 2016 has just been published. This is my eleventh course for Pluralsight, but the complete list of my courses is here.

Building on this online course is a new three day class, IEUpgrade: Immersion Event on Upgrading SQL Server, taught by myself and Tim Radney. The first round of this course will be taught in Chicago from October 11-13, 2017.

Finally, I will be presenting a half-day session called Migrating to SQL Server 2017 at the PASS Summit 2017 in Seattle, WA from October 31- November 3, 2017. You can use this code: BL150GG to register for the PASS 2017 Summit to get a $150 discount.

Here is a link to the complete series about upgrading SQL Server.

The post Upgrading SQL Server– Database Experimentation Assistant appeared first on Glenn Berry.

]]>
https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-database-experimentation-assistant/feed/ 0
Upgrading SQL Server– Microsoft Data Migration Assistant 3.2 https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-microsoft-data-migration-assistant-3-2/ https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-microsoft-data-migration-assistant-3-2/#comments Mon, 28 Aug 2017 21:31:32 +0000 http://3.209.169.194/blogs/glenn/?p=1269 One useful tool that you should definitely take advantage of during an upgrade and migration effort is the Microsoft Data Migration Assistant (DMA), which replaces the old SQL Server Upgrade Advisor. Microsoft released the new DMA 3.2 on August 25, 2017. This tool can be used for three main purposes. First, you can use it […]

The post Upgrading SQL Server– Microsoft Data Migration Assistant 3.2 appeared first on Glenn Berry.

]]>
One useful tool that you should definitely take advantage of during an upgrade and migration effort is the Microsoft Data Migration Assistant (DMA), which replaces the old SQL Server Upgrade Advisor. Microsoft released the new DMA 3.2 on August 25, 2017.

This tool can be used for three main purposes. First, you can use it to find breaking changes, behavior changes, and deprecated features between a legacy version of SQL Server as the source (SQL Server 2005 and later) and a newer version of SQL Server as the target (SQL Server 2012, SQL Server 2014, SQL Server 2016, and Azure SQL Database).

Second, it can be used to identify new features in the target version of SQL Server (or Azure SQL Database) that might be useful given your legacy database schema and data size. Be forewarned that DMA has a heavy bias towards Azure SQL Database and other cloud-dependent features. For example, it is very eager to recommend Stretch database for large tables.

Finally, DMA can be used to actually migrate databases between legacy versions of SQL Server and a modern version of SQL Server or Azure SQL Database. An example of an assessment project is shown in Figure 1.

image

Figure 1: Microsoft Data Migration Assistant 3.2

If you are considering using DMA 3.2 to migrate existing on-premises databases to an Azure SQL Database, Microsoft’s Harini Gupta did some interesting benchmark testing showing how the Azure SQL Database’s service objective (S0, P1, P15, etc.) and the number of parallel tasks for the migration can affect the elapsed time for the migration.

 

Additional Resources

My new Pluralsight course, SQL Server: Upgrading and Migrating to SQL Server 2016 has just been published. This is my eleventh course for Pluralsight, but the complete list of my courses is here.

Building on this online course is a new three day class, IEUpgrade: Immersion Event on Upgrading SQL Server, taught by myself and Tim Radney. The first round of this course will be taught in Chicago from October 11-13, 2017.

Finally, I will be presenting a half-day session called Migrating to SQL Server 2017 at the PASS Summit 2017 in Seattle, WA from October 31- November 3, 2017. You can use this code: BL150GG to register for the PASS 2017 Summit to get a $150 discount.

Here is a link to the complete series about upgrading SQL Server.

The post Upgrading SQL Server– Microsoft Data Migration Assistant 3.2 appeared first on Glenn Berry.

]]>
https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-microsoft-data-migration-assistant-3-2/feed/ 2
Upgrading SQL Server– SQL Server 2016 Upgrade Considerations https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-sql-server-2016-upgrade-considerations/ https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-sql-server-2016-upgrade-considerations/#respond Mon, 28 Aug 2017 20:41:48 +0000 http://3.209.169.194/blogs/glenn/?p=1266 One somewhat obscure issue you might encounter when upgrading from a legacy version of SQL Server to SQL Server 2016 or later is a change to how some data type conversions are handled. Microsoft describes it like this: “Microsoft SQL Server 2016 and Microsoft Azure SQL Database include improvements in data type conversions and in […]

The post Upgrading SQL Server– SQL Server 2016 Upgrade Considerations appeared first on Glenn Berry.

]]>
One somewhat obscure issue you might encounter when upgrading from a legacy version of SQL Server to SQL Server 2016 or later is a change to how some data type conversions are handled. Microsoft describes it like this:

“Microsoft SQL Server 2016 and Microsoft Azure SQL Database include improvements in data type conversions and in several other operations. Most of these improvements offer increased precision when you deal with floating-point types, as well as with classic datetime types.”

This changed behavior only comes into play when you are running on database compatibility level 130 or later, and it only affects persisted objects (such as persisted computed columns, filtered indexes, indexed views, and indexes that use computed columns).

Because of this potential issue, Microsoft recommends that you do some additional validation checking on your legacy databases before you change their compatibility level to 130 or higher to find out if you might be affected by these changes.

Here are the steps for the validation and correction process:

  1. Restore the legacy database to SQL Server 2016 or later instance in your test environment
  2. Enable global trace flag 139
  3. Run DBCC CHECKDB WITH EXTENDED_LOGICAL_CHECKS, NO_INFOMSGS, TABLERESULTS
  4. Disable global trace flag 139
  5. Change the compatibility level of the database to 130 or later
  6. If Step 3 reveals any issues, then rebuild the objects that it identified

Microsoft has more detail about this change here. Personally, I think this just another step that you should add to your testing plan during an upgrade project.

 

Additional Resources

My new Pluralsight course, SQL Server: Upgrading and Migrating to SQL Server 2016 has just been published. This is my eleventh course for Pluralsight, but the complete list of my courses is here.

Building on this online course is a new three day class, IEUpgrade: Immersion Event on Upgrading SQL Server, taught by myself and Tim Radney. The first round of this course will be taught in Chicago from October 11-13, 2017.

Finally, I will be presenting a half-day session called Migrating to SQL Server 2017 at the PASS Summit 2017 in Seattle, WA from October 31- November 3, 2017. You can use this code: BL150GG to register for the PASS 2017 Summit to get a $150 discount.

Here is a link to the complete series about upgrading SQL Server.

The post Upgrading SQL Server– SQL Server 2016 Upgrade Considerations appeared first on Glenn Berry.

]]>
https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-sql-server-2016-upgrade-considerations/feed/ 0
Upgrading SQL Server– Useful Improvements in SQL Server 2017 https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-useful-improvements-in-sql-server-2017/ https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-useful-improvements-in-sql-server-2017/#respond Sun, 27 Aug 2017 23:37:54 +0000 http://3.209.169.194/blogs/glenn/?p=1265 Even though much of the development effort and resources in SQL Server 2017 has been used to get SQL Server running as a first-class citizen on Linux, there are some interesting new features and improvements in SQL Server 2017 regardless of what operating system you are going to use. One example are changes in the […]

The post Upgrading SQL Server– Useful Improvements in SQL Server 2017 appeared first on Glenn Berry.

]]>
Even though much of the development effort and resources in SQL Server 2017 has been used to get SQL Server running as a first-class citizen on Linux, there are some interesting new features and improvements in SQL Server 2017 regardless of what operating system you are going to use.

One example are changes in the limits for tempdb initial file size for both tempdb data and log files. In SQL Server 2017, you can set the initial file size as large as 256GB (262,144MB) per file. If you set it to a size larger than 1GB and instant file initialization (IFI) is not enabled, you will get a warning during setup. Keep in mind that IFI only applies to SQL Server data files.

SQL Server 2017 also has a number of new DMV and DMFs that make it easier to manage and monitor your system. One example is sys.dm_db_log_info, which returns the virtual log file (VLF) count and other useful information about your VLFs. This is a more powerful replacement for the old DBCC LOGINFO command.

Another example (which I might be somewhat responsible for, due to much lobbying) are new columns in sys.dm_os_sys_info that reveal very useful processor information, including socket_count, core_count, and cores_per_socket. Getting this information form this DMV is much better that reading the SQL Server Error Log to to to find some of this information.

There are also nice improvements related to doing “smart” differential backups. The sys.dm_db_file_space_usage DMV has a new column, modified_extent_page_count which lets you track differential changes since the last full database backup in order to help decide whether it will be more efficient to take a full database backup instead of a differential backup.

For transaction log backups, there is a new DMF sys.dm_db_log_stats, which has a column called log _since_last_log_backup_mb. By checking the value of this column, you can programmatically decide when to take transaction log backups based on the amount of transaction log activity rather than just on time. This will let you take transaction log backups more frequently during periods of high activity (which can reduce how large the transaction log backup file is and also minimize transaction log file growth. It will also let you take transaction log backups les frequently during periods of low activity, which will reduce the number of transaction log backups that need to be restored, and possibly reduce your RTO times.

Small improvements like this, which are not always well publicized can really make your job easier as a DBA, which is yet another reason to push for an upgrade to SQL Server 2017.

 

Additional Resources

My new Pluralsight course, SQL Server: Upgrading and Migrating to SQL Server 2016 has just been published. This is my eleventh course for Pluralsight, but the complete list of my courses is here.

Building on this online course is a new three day class, IEUpgrade: Immersion Event on Upgrading SQL Server, taught by myself and Tim Radney. The first round of this course will be taught in Chicago from October 11-13, 2017.

Finally, I will be presenting a half-day session called Migrating to SQL Server 2017 at the PASS Summit 2017 in Seattle, WA from October 31- November 3, 2017. You can use this code: BL150GG to register for the PASS 2017 Summit to get a $150 discount.

Here is a link to the complete series about upgrading SQL Server.

The post Upgrading SQL Server– Useful Improvements in SQL Server 2017 appeared first on Glenn Berry.

]]>
https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-useful-improvements-in-sql-server-2017/feed/ 0
Upgrading SQL Server– Top Five Intel Xeon Scalable Processors for SQL Server Usage https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-top-five-intel-xeon-scalable-processors-for-sql-server-usage/ https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-top-five-intel-xeon-scalable-processors-for-sql-server-usage/#comments Fri, 25 Aug 2017 17:24:52 +0000 http://3.209.169.194/blogs/glenn/?p=1264 On July 11, 2017, Intel formally released their new Xeon Scalable Processor Family of processors for data center usage. This new processor family has a somewhat ridiculous 58 different SKUs in the line. They are broken up into Platinum 8xxx, Gold 6xxx, Gold 5xxx, Silver 4xxx, and Bronze 3xxx sub-categories. New two-socket server models(which are […]

The post Upgrading SQL Server– Top Five Intel Xeon Scalable Processors for SQL Server Usage appeared first on Glenn Berry.

]]>
On July 11, 2017, Intel formally released their new Xeon Scalable Processor Family of processors for data center usage. This new processor family has a somewhat ridiculous 58 different SKUs in the line. They are broken up into Platinum 8xxx, Gold 6xxx, Gold 5xxx, Silver 4xxx, and Bronze 3xxx sub-categories.

New two-socket server models(which are required for these processors), such as the Dell PowerEdge R740 let you choose from 41 of these available 58 processors (which is also somewhat overwhelming). Microsoft charges the same SQL Server core license prices regardless of the performance of each processor core. Given this, you need to try to pick a particular processor with an awareness of that fact to minimize your licensing costs.

Intel Xeon Bronze and Silver Processors

There are two choices in the Intel Xeon Bronze line, and six choices in the Intel Xeon Silver line. For SQL Server usage, you can and SHOULD ignore those eight processor SKUs from the Bronze and Silver lines. The Bronze processors have low base clock speeds, no Turbo Boost, no Hyper-Threading and low memory speeds. The Silver processors have low base clock speeds and low memory speeds.

Intel Xeon Gold and Platinum Processors

There are 22 different choices between the Intel Xeon Gold 5xxx and 6xxx lines, and 11 different choices in the Intel Xeon Platinum line. Out of these 33 different choices, I think five of them are the “best” choices for SQL Server usage, as measured by their single-threaded CPU performance. Even though these processors are more expensive than the Bronze and Silver lines, the extra hardware cost is a small fraction of the overall system cost, including SQL Server core licenses.

Top Five Intel Xeon Scalable Processors for SQL Server Usage

Here is my top five list, which is ranked by base clock speed and L3 cache size per physical core. Picking a processor from this list is going to give you the best performance for each one of your relatively expensive SQL Server 2016 Enterprise Edition core licenses, which cost $7,128.00 each.

  1. Intel Xeon Gold 5122 (4 cores)
  2. Intel Xeon Gold 6144 (8 cores)
  3. Intel Xeon Gold 6128 (6 cores)
  4. Intel Xeon Gold 6146 (12 cores)
  5. Intel Xeon Gold 6154 (18 cores)

Figure 1 shows my “preferred” processor models at each physical core count, along with some of their specifications and their price. Note that I have not included the “M” suffix processor models (which offer double the memory support for a $3,000.00 premium). Depending on your workload, you may want those for SQL Server usage, but I wanted to simplify the table somewhat.

You should also notice the huge premium that Intel charges for the highest core count SKUs, and think about whether that makes sense in your situation. If you can split your workload across multiple servers, you will be much better off from a performance and cost perspective with multiple servers with lower core count processors. Some choices are relatively bad (such as the Platinum 8170) due to their low base clock speeds.

Preferred Skylake-SP

Figure 1: Preferred Intel Skylake-SP Processors for SQL Server Usage

Figure 2 shows some comparative system metrics for a two-socket server with the given processor. These calculations are based on a single actual TPC-E benchmark score for a Lenovo ThinkSystem SR650 server using a pre-release version of SQL Server 2017. I suspect that we will see better results with the release version of SQL Server 2017.

Looking at these numbers, the Raw TPC-E Score is a measurement of the CPU capacity of the system, while Score/Core shows the single-threaded CPU performance for that particular processor. The License cost column shows how much it would cost to purchase SQL Server 2016 Enterprise Edition core licenses for that system.

The first thing jumps out to me is that the Platinum 8170 is a pretty bad choice compared to the Platinum 8168 or Gold 6154. Selecting the Gold 6154 instead of the Platinum 8170 would save you $114,048.00 in SQL Server license costs and $7,724.00 in hardware costs, with roughly the same capacity and much better single-threaded performance (which will be noticeable to your users).

Another good choice would be two database servers with the Gold 6146 instead of one database server with the Platinum 8180. This would save you $57,024.00 in SQL Server license costs and $6,874.00 in CPU costs (which would pay for a good chunk of the second server). Two servers would have more CPU capacity, twice the memory capacity, twice the number of PCIe 3.0 lanes, and much better single-threaded performance.

Comparative Skylake

Figure 2: Comparative Two-Socket System Metrics for Intel Skylake-SP Processors

 

Additional Resources

My new Pluralsight course, SQL Server: Upgrading and Migrating to SQL Server 2016 has just been published. This is my eleventh course for Pluralsight, but the complete list of my courses is here.

Building on this online course is a new three day class, IEUpgrade: Immersion Event on Upgrading SQL Server, taught by myself and Tim Radney. The first round of this course will be taught in Chicago from October 11-13, 2017.

Finally, I will be presenting a half-day session called Migrating to SQL Server 2017 at the PASS Summit 2017 in Seattle, WA from October 31- November 3, 2017.

Here is a link to the complete series about upgrading SQL Server.

The post Upgrading SQL Server– Top Five Intel Xeon Scalable Processors for SQL Server Usage appeared first on Glenn Berry.

]]>
https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-top-five-intel-xeon-scalable-processors-for-sql-server-usage/feed/ 6
Upgrading SQL Server– Windows Server 2016 Licensing Issues https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-windows-server-2016-licensing-issues/ https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-windows-server-2016-licensing-issues/#respond Thu, 24 Aug 2017 15:19:11 +0000 http://3.209.169.194/blogs/glenn/?p=1259 If you are planning a complete data platform upgrade, you should be planning on using Windows Server 2016 as your operating system (assuming you are planning on using Windows rather than Linux). Windows Server 2016 has a number of advantages over older versions of Windows Server, including higher license limits for memory, better networking and […]

The post Upgrading SQL Server– Windows Server 2016 Licensing Issues appeared first on Glenn Berry.

]]>
If you are planning a complete data platform upgrade, you should be planning on using Windows Server 2016 as your operating system (assuming you are planning on using Windows rather than Linux). Windows Server 2016 has a number of advantages over older versions of Windows Server, including higher license limits for memory, better networking and clustering support, and a longer remaining support lifetime (January 11, 2022 for mainstream support). Windows Server 2012 and Windows Server 2012 R2 will fall out of mainstream support on October 9, 2018, which is not that far away.

One potential issue with Windows Server 2016 is the fact that Microsoft is now using a core-based licensing system for that product. Microsoft requires a minimum of eight core licenses per processor and sixteen core licenses per server. This could potentially be a point of confusion and extra SQL Server licensing costs for some organizations.

Here is the scenario. Imagine that you have done your sizing analysis and calculations for SQL Server 2017 usage, and you have decided that a new two-socket server with two, quad-core Intel Xeon Gold 5122 processors will best suit your performance needs and budget requirements. That particular processor costs $1221.00 each.

Shon Smith, your well-meaning server administrator is aware of the new Windows Server 2016 licensing model, and he wants this new database server to actually have the sixteen physical cores that he was forced to buy Windows Server 2016 core licenses for. He also wants to minimize the hardware cost of this new server. Because of this, he decides to buy a two-socket server with two, eight-core Intel Xeon Bronze 3106 processors (which only cost $306.00 each). Shon has maximized his investment in those sixteen required Windows Server 2016 core licenses, and he has saved $1,730.00 on the hardware. But what has he done to you, the DBA?

First, this new database server now will require sixteen SQL Server 2017 core licenses instead of only eight. For SQL Server 2017 Standard Edition, this means a $14,872.00 increase in your SQL Server license costs, while SQL Server 2017 Enterprise Edition would cost $57,024.00 extra due to this hardware change. But you have twice as many physical cores, so that must be better, right?

Actually, not at all in this case. The Intel Xeon Bronze 3106 has a base clock speed of only 1.7GHz, with no Turbo Boost, no Hyper-Threading and an 11MB L3 cache. The Intel Xeon Gold 5122 that you specified has a base clock speed of 3.6GHz, a Turbo Boost speed of 3.7GHz, along with Hyper-Threading and an 16.5MB L3 cache.

The system you originally specified would have more than double the single-threaded CPU performance compared to Shon’s modified system. Your original system would also have more total CPU capacity than Shon’s modified system. The Intel Xeon Bronze 3106 is a terrible choice for SQL Server usage!

Keep in mind that most SQL Server instances only require Windows Server 2016 Standard Edition (rather than Datacenter Edition). Those sixteen required core licenses for Windows Server 2016 Standard Edition only cost $882.00 total, not each. This means that you should not let that required minimum Windows Server 2016 core license count sway your processor choice for SQL Server.

This exercise assumes that SQL Server 2017 licenses have the same pricing model as SQL Server 2016 licenses. It also uses a particularly bad processor choice by Shon, to illustrate the point. Using two eight-core Intel Xeon Gold 6144 processors would have given you much better performance and scalability (at a higher hardware cost) for that extra SQL Server license cost.

 

Additional Resources

My new Pluralsight course, SQL Server: Upgrading and Migrating to SQL Server 2016 has just been published. This is my eleventh course for Pluralsight, but the complete list of my courses is here.

Building on this online course is a new three day class, IEUpgrade: Immersion Event on Upgrading SQL Server, taught by myself and Tim Radney. The first round of this course will be taught in Chicago from October 11-13, 2017.

Finally, I will be presenting a half-day session called Migrating to SQL Server 2017 at the PASS Summit 2017 in Seattle, WA from October 31- November 3, 2017.

Here is a link to the complete series about upgrading SQL Server.

The post Upgrading SQL Server– Windows Server 2016 Licensing Issues appeared first on Glenn Berry.

]]>
https://www.sqlskills.com/blogs/glenn/upgrading-sql-server-windows-server-2016-licensing-issues/feed/ 0