▲ E-Guide SQL SERVER 2016

SearchSQLServer MICROSOFT SQL SERVER 2016 REVIEW

Home

Testers Give an Early View of Microsoft SQL Server 2016

SQL Server 2016 Addresses In- Memory OLTP Limitations QL Server 2016 is already showing S promising improvements. Still, experts advise early adopters to take extra precaution. Access this e-guide and learn how to get a head start, and uncover a Q&A with two seasoned SQL Server pros.

PAGE 2 OF 14 SPONSORED BY MICROSOFT SQL SERVER 2016 REVIEW

TESTERS GIVE AN EARLY VIEW OF MICROSOFT SQL SERVER 2016 Jessica Sirkin Home

Testers Give an Early Denny Cherry, owner and principal consultant at Denny Cherry and Associates, View of Microsoft SQL Server 2016 and Joey D’Antoni, principal consultant at the same company, have spent the past few months beta testing Microsoft SQL Server 2016. Cherry has been a Microsoft SQL Server 2016 Addresses In- MVP since 2008 and has more than a decade of experience working with SQL Memory OLTP Limitations Server. D’Antoni also has more than a decade of experience in the IT field, and he specializes in performance tuning and database infrastructure design. In this Q&A, Cherry and D’Antoni discuss their experiences with the Community Technology Preview additions over the past few months, covering both CTP 2 and 3.Cherry and D’Antoni shared the changes ahead for SQL Server 2016 and what they will mean for SQL Server users.

PAGE 3 OF 14 SPONSORED BY MICROSOFT SQL SERVER 2016 REVIEW

WHAT ARE THE MOST IMPORTANT NEW FEATURES IN MICROSOFT SQL SERVER 2016 CTP 2.4? WHY THOSE? Joey D’Antoni: The Stretch Database feature is really a game changer for a lot of applications. Also, the query store feature is fantastic for [database Home administrators] to tune queries and identify problematic workloads. Testers Give an Early View of Microsoft SQL Server 2016 HOW ABOUT MICROSOFT SQL SERVER 2016 CTP 3? Probably the biggest inclusion in CTP 3 is the addition of advanced SQL Server 2016 D’Antoni: Addresses In- analytics with . This is the product of [the] acquisition Memory OLTP Limitations and will be very interesting to watch going forward.

WHO WOULD YOU RECOMMEND START WORKING WITH THE MICROSOFT SQL SERVER 2016 CTPS? Denny Cherry: Anyone who is planning on deploying SQL Server 2016 as early as possible should definitely be looking at the beta builds as soon as possible. This will give them a leg up when the final version comes out and the rest of the team wants to stay working with and deploying some of the new features. While this can, and probably will, change between the CTPs and the final release, it is always good to have a head start on the process.

PAGE 4 OF 14 SPONSORED BY MICROSOFT SQL SERVER 2016 REVIEW

IN WHAT WAYS DO CTP 2 AND 3 COMPARE POSITIVELY AND NEGATIVELY TO PREVIOUS VERSIONS? D’Antoni: Positively, there are a lot more features [and] a lot of new features. Negatively, the rapid development cycle may be hard to deal with for many IT Home orgs. Testers Give an Early View of Microsoft SQL Server 2016 IN CTP 2.4, MICROSOFT RETIRED THE X86 VERSION OF THE SQL SERVER SET-UP. WHAT EFFECT DO YOU SEE THIS HAVING? SQL Server 2016 Addresses In- Cherry: I can see both sides of this. From the Microsoft side of things, this cuts Memory OLTP Limitations their testing matrix basically in half, as they don’t need to worry about doing any x86 testing any more. On the flip side, I know that there are lots of people running SQL Server on laptops and desktops -- a lot of which still have a 32- bit OS – and these folks will need to upgrade their Windows and possibly their hardware, depending on how old the PC is, to support an x64 version. But these people are almost always running SQL Express, which has been available as a 64-bit version since SQL 2005, and upgrade to new versions almost never.

PAGE 5 OF 14 SPONSORED BY MICROSOFT SQL SERVER 2016 REVIEW

OTHER FEATURES MICROSOFT CHANGES ARE JSON STORAGE, COLUMNSTORE INDEXES, ALWAYS ENCRYPTED AND MORE. HOW DO YOU SEE THESE CHANGES AFFECTING THE SQL SERVER EXPERIENCE? Cherry: I see Always Encrypted being used pretty quickly by software Home development teams that want encryption but don’t want to write the encryption Testers Give an Early stuff into their application directly. View of Microsoft SQL Server 2016 D’Antoni: The enhancements to columnstore and JSON are going to make it possible to deal with very large, big-data-type workloads in the friendly SQL Server 2016 Addresses In- relational space. Memory OLTP Limitations IS THERE ANYTHING SIGNIFICANT IN CTP 3 THAT IS POSSIBLE NOW THAT WASN’T POSSIBLE IN CTP 2? D’Antoni: Just the R components.

PAGE 6 OF 14 SPONSORED BY MICROSOFT SQL SERVER 2016 REVIEW

SQL SERVER 2016 ADDRESSES IN-MEMORY OLTP LIMITATIONS Robert Sheldon Home

Testers Give an Early Like many features in SQL Server 2016, in-memory OLTP has received its fair View of Microsoft SQL Server 2016 share of enhancements, with improvements in scalability and performance as well as expanded T-SQL capabilities for working with and managing memory- SQL Server 2016 Addresses In- optimized tables. Memory OLTP Limitations In-memory OLTP provides row-based data access to memory-optimized tables, making it possible to support high-performance workloads, without requiring specialized hardware or software. The technology includes its own engine that works directly with the tables, dramatically improving throughput and reducing latency. The engine manages and maintains the table in-memory, while the data itself remains fully durable and transactional. Microsoft introduced in-memory OLTP in SQL Server 2014 under the codename Hekaton, but the feature had a number of limitations, such as not supporting table updates or multithreaded log reads. SQL Server 2016 addresses many of those limitations and offers more robust and complete

PAGE 7 OF 14 SPONSORED BY MICROSOFT SQL SERVER 2016 REVIEW

capabilities, tackling issues ranging from memory and socket limitations to adding support for Transparent Data Encryption (TDE) and multiple active result sets (MARS).

Home SCALABILITY AND PERFORMANCE Testers Give an Early For SQL Server 2014, Microsoft recommended that the total size of your View of Microsoft SQL Server 2016 memory-optimized tables should not exceed 256 GB of memory. Although this was not a hard line, larger sizes were impractical because of the way in which SQL Server 2016 Addresses In- in-memory OLTP worked. In SQL Server 2016, Microsoft has raised the rec- Memory OLTP Limitations ommended limit to 2 TB because of the improvements that have been made in various aspects of in-memory OLTP. In addition, SQL Server 2016 also sup- ports four-socket machines for use with in-memory OLTP, unlike SQL Server 2014, which could not handle multi-socketed servers easily. Another performance boost comes in the form of multiple log reader threads. In SQL Server 2014, the in-memory OLTP engine used a single offline checkpoint thread per database to scan the transaction log for changes related to memory-optimized tables. If there were a large number of transactions, the thread could fall behind. But SQL Server 2016 can use multiple threads to

PAGE 8 OF 14 SPONSORED BY MICROSOFT SQL SERVER 2016 REVIEW

persist changes to the memory-optimized table, leading to gains in scalability and performance. In-memory OLTP in SQL Server 2014 had another limitation. The optimizer could not create parallel plans for queries accessing memory-optimized tables. Home SQL Server 2016 overcomes that limit, at least for operations that use hash Testers Give an Early indexes and are not used in natively compiled stored procedures. SQL Server View of Microsoft SQL Server 2016 2016 also has improved the garbage collection algorithms used to clean up row versions no longer needed. These improvements can be especially beneficial SQL Server 2016 Addresses In- in large workloads that before could result in garbage collection processes not Memory OLTP Limitations being able to keep up with the columns of data needing to be removed. SQL Server 2016 also improves in-memory OLTP by decoupling individual files in the file group from filestream dependencies. SQL Server 2014 used the filestream technology to allocate and manage files indirectly. In SQL Server 2016, the in-memory OLTP engine has direct control over the files, helping to streamline such operations as creating or dropping files or performing garbage collections.

PAGE 9 OF 14 SPONSORED BY MICROSOFT SQL SERVER 2016 REVIEW

T-SQL PROGRAMMING One of the biggest challenges with in-memory OLTP in SQL Server 2014 was the inability to modify a memory-optimized table after it had been created, which could make tuning a table very difficult. SQL Server 2016 lifts this Home limitation and lets you alter the table without having to drop and re-create it. Testers Give an Early Note, however, that altering a memory-optimized table is an offline operation View of Microsoft SQL Server 2016 that needs twice as much memory to perform the update. If an application tries to access the table during the update, the operation is blocked until the SQL Server 2016 Addresses In- table is back online. SQL Server 2016 also supports the ability to alter natively Memory OLTP Limitations compiled procedures. In fact, SQL Server 2016 includes a number of improvements in the T-SQL arena when it comes to in-memory OLTP. Memory-optimized tables now support foreign keys, check constraints, unique constraints, outer joins and operators, such as UNION [ALL], DISTINCT, IN and EXISTS. In addition, you can run the sp_recompile system stored procedure against a natively compiled procedure. Plus, SQL Server 2016 has added support for DML triggers and LOB data types on memory-optimized tables. You can even index nullable columns. In-memory OLTP collation also wins big. Before SQL Server 2016, character columns in a memory-optimized table that participated in an index

PAGE 10 OF 14 SPONSORED BY MICROSOFT SQL SERVER 2016 REVIEW

had to use a BIN2 collation. Plus, in a natively compiled procedure, all character comparisons had to use the BIN2 collation. In-memory OLTP in SQL Server 2016 provides full collation support for in-memory OLTP comparisons and indexing. That said, BIN2 still provides the best performance. Other collations Home can result in a significant performance penalty. Testers Give an Early SQL Server 2016 also has improved natively compiled procedures in other View of Microsoft SQL Server 2016 ways, such as adding support for subqueries and nested native procedure calls. In addition, Microsoft has added support for natively compiled scalaruser- SQL Server 2016 Addresses In- defined functions (UDFs), which you can use any place you use built-in scalar Memory OLTP Limitations functions. And like their stored procedure counterparts, natively compiled scalar UDFs can be altered or dropped after their initial creation.

TOOL ENHANCEMENTS Microsoft introduced transparent data encryption (TDE) in SQL Server 2008. Built into the database engine, TDE is an encryption technology that can be implemented on a database’s data, log and backup files. The encryption and decryption processes are transparent to the applications and users that are accessing the data and require no special privileges outside the normal re- quired authorizations. Unfortunately, SQL Server 2014 did not support TDE

PAGE 11 OF 14 SPONSORED BY MICROSOFT SQL SERVER 2016 REVIEW

for memory-optimized tables. This changed in SQL Server 2016 and memory- optimized tables persisted to disk can be protected with TDE just like the rest of the database. SQL Server 2016 also supports MARS access to memory-optimized tables. Home MARS makes it possible for applications to request data via multiple queries Testers Give an Early without needing to retrieve an entire result set before retrieving the next result View of Microsoft SQL Server 2016 set. In this way, applications can have multiple result sets open, while being able to interweave the data and execute other statements. And those result sets SQL Server 2016 Addresses In- can be based on queries that reference memory-optimized tables and natively Memory OLTP Limitations compiled procedures. SQL Server 2016 has made improvements in other areas as well. For example, it includes enhancements to the transaction performance analysis reports, which let you evaluate whether in-memory OLTP will help you improve application performance. In addition, the table designer in SQL Server Management Studio now supports memory-optimized tables.

SQL SERVER 2016 IN-MEMORY OLTP By no means is this an exhaustive list of in-memory OLTP improvements in SQL Server 2016, but the information does demonstrate some of the important

PAGE 12 OF 14 SPONSORED BY MICROSOFT SQL SERVER 2016 REVIEW

ways Microsoft has enhanced its in-memory technologies. With its support for greater memory, more sockets, and multithreaded logging, as well as the ability to alter memory-optimized tables and natively compiled procedures, in-memory OLTP has taken a big leap forward by addressing many of the Home limitations in SQL Server 2014. Testers Give an Early Will these changes be enough to convince SQL Server 2014 customers to View of Microsoft SQL Server 2016 upgrade? Of course, it’s too soon to tell. But SQL Server 2016 comes with plenty of other new and improved features, so the in-memory OLTP enhancements SQL Server 2016 Addresses In- might be just enough to tip the scales in Microsoft’s favor. Memory OLTP Limitations

PAGE 13 OF 14 SPONSORED BY MICROSOFT SQL SERVER 2016 REVIEW

FREE RESOURCES FOR TECHNOLOGY PROFESSIONALS TechTarget publishes targeted technology media that address your need for information and resources for researching products, developing strategy and making cost-effective Home purchase decisions. Our network of technology-specific Web sites gives you access to industry experts, independent content Testers Give an Early and analysis and the Web’s largest library of vendor-provided View of Microsoft white papers, webcasts, podcasts, videos, virtual trade shows, SQL Server 2016 research reports and more —drawing on the rich R&D resources of technology providers to SQL Server 2016 address market trends, challenges and solutions. Our live events and virtual seminars give Addresses In- you access to vendor neutral, expert commentary and advice on the issues and challenges Memory OLTP Limitations you face daily. Our social community IT Knowledge Exchange allows you to share real world information in real time with peers and experts.

WHAT MAKES TECHTARGET UNIQUE? TechTarget is squarely focused on the enterprise IT space. Our team of editors and network of industry experts provide the richest, most relevant content to IT professionals and management. We leverage the immediacy of the Web, the networking and face-to-face opportunities of events and virtual events, and the ability to interact with peers—all to create compelling and actionable information for enterprise IT professionals across all industries and markets.

PAGE 14 OF 14 SPONSORED BY