SQL Server 2016 new features session that I delivered at SQL Relay 2015 at; Reading, London, Cardiff and Birmingham.
Looking at some of the new features currently slated for inclusion in the next version of Microsoft SQL Server 2016.
Demo Code can be found at: http://1drv.ms/1PC5smY
3. YOUR PRESENTER
• John Q Martin
o Sales Engineer for SQL Sentry
o Worked with SQL Server for ~10 years
o Consultant, SQL DBA, Dev & BI Developer
o Former Microsoft Premier Field Engineer
• Contact Information
o Email: Jmartin@SQLSentry.com
o Blog: http://blogs.sqlsentry.com/author/JohnMartin/
o Twitter: @SQLServerMonkey
o LinkedIn: https://uk.linkedin.com/in/johnqmartin
4. DEMO CODE
All demo code for this deck can be found using the
link below;
http://1drv.ms/1PC5smY
5. AGENDA
New Features in SQL Server 2016
Columnstore Enhancements
In-Memory OLTP Enhancements
AlwaysOn Availability Group Enhancements
Load Balanced Readable Replicas
Row Level Security
Dynamic Data Masking
Operational Analytics
Always Encrypted
TDE Performance
Temporal TablesQuery Data Store
Live Query Stats
Backup to Azure
Managed Backup
Multiple TempDb files on Install
FOR JSON
Stretch Database
PowerPoint Export in SSRS
TRUNCATE TABLE Partitions
Multiple Availability Group Failover Partners
SSRS – HTML5 Rendering Engine
SSRS – New Chart Types
SSRS – High DPI Support
SSIS – Support for AlwaysOn Availability Groups
SSIS – Incremental Package Deployment
SSIS – Odata v4 Sources
SSRS – CSS Support
SSAS – XE UI in SSMS
SSRS – New DAX Functions
SSAS – Processing Improvements
MDS Now Works!
6. ALWAYSON AVAILABILITY GROUPS
• AlwaysOn Availability Groups will now support DTC Transactions & cross
database queries.
o One of the biggest blockers to adoption
o Requires the use of Windows Server 2016
• Improved health detection for triggering failover events
o Will now trigger when a database is offline rather than relying on Instance level issues
• Increased High Availability configuration
o Now support for two automatic failover partners as opposed to one
7. ALWAYSON AVAILABILITY GROUPS
• Now possible to use Round Robin load balancing on Active Secondaries for
read-only queries
o Expanded capability when connecting via the Availability Group Listener
o Still requires that Read-Only Routing is configured
• Support for Group Managed Service Accounts
o These Active Directory accounts can greatly simplify the management of service accounts for
SQL Server.
8. ALWAYS ENCRYPTED
• New data encryption capability built into the engine
o Encryption is defined at the column level
o Cipher-text is stored, DBA can manage but not see the plain text data
o Certificate and encryption is handled by the connection driver in the application
• Two forms of encryption
o Deterministic
o Non-Deterministic (Randomized)
10. ALWAYS ENCRYPTED
• Requires the SQL Native Client 12
o .NET 4.6
• Windows Certificate Store is only one supported out of the box
o You can develop your own Key Store provider to interact with HSM modules etc.
• Data is protected in-transit and at-rest for the specified columns
• DBA Can manage the system but not see the data
o Great for compliance or high security environments
12. IN-MEMORY OLTP
• You are now able to run ALTER commands on memory optimized objects
o Tables and procedures no longer need to be dropped and re-created
• Full join syntax support & other T-SQL surface area enhancements
o Earlier version did not allow outer joins
o UNION, NOT, OR and IN
• Nested Statements are now supported
o Nesting natively compiled procedures
13. IN-MEMORY OLTP
• Columnstore Indexes are now supported on In-Memory tables
o Functionality that underpins the Operational Analytics feature set.
• Better scalability
o Multi-threaded persistence process
o Multi-threaded recovery process
• Increase in size of data for In-Memory objects
o 2TB per-database (MS Recommendation)
15. OPERATIONAL ANALYTICS
• Perform high performance reporting
on OLTP structures
• Can combine In-Memory or disk-
based tables with Columnstore.
• You control which data resides in
which structure.
16. OPERATIONAL ANALYTICS
• It is possible to use two filtered
indexes to reduce data structure
size
• Leverages non-clustered
Columnstore indexes.
o Apply a filter to identify cold/warm data
• Can be created in addition to a
normal B-Tree index structure
17. OPERATIONAL ANALYTICS
• Important to understand your query workload
o If the Queries and the Indexes don’t work well together then optimal performance will be
difficult to achieve.
• Combine with other existing technologies
o Table Partitioning
o Columnstore Archive Compression
• When using In-Memory tables it is not possible to use the filtered
Columnstore Indexes.
19. POLYBASE
• Technology that is part of the APS (formerly PDW) appliance.
• Used to integrate external data sources to SQL Server
o HDInsight/Hadoop
o Azure Blob Storage
• Allows querying of the external data sources via T-SQL
o Create “External Tables” in the database to access the data store.
20. POLYBASE
• Installed as an additional feature option from the Installer
o Required Java Runtime Environment 7.51 or higher
o One installer per-OSE
• As data is stored externally to SQL Server network will impact performance
o Getting data from on-premises Hadoop will be quicker than going to the cloud
• Allows for some potentially interesting data architectures
o SQL Server database for hot/warm data with Hadoop holding deep archive data
27. SECURITY ENHANCEMENTS
• Row Level Security
o Restrict access to data at the row level
o Security logic sits in the data tier and is implemented by the SQL Server
• You define the logic
o User defined In-Line Table Value Function
• By placing this logic in the data tier, it is possible to improve security
o If the data does not leave the database then exposure is reduced
28. SECURITY ENHANCEMENTS
• Dynamic Data Masking
o Used to mask data that is returned to the caller
o Targeted at situations where there is no direct query access to data tier
o Useful in compliance situations
• Feature is enabled by default
o Can be disabled with the use of trace flags 209 & 219
o Still needs to be configured by the administrator
• Number of ‘default’ masks built in
o You can define your own mask patterns
29. SECURITY ENHANCEMENTS
• Important to understand that sysadmin can still see the data
• If there is direct T-SQL Access it can be circumvented
o Select into Temporary tables and then select will expose the data
30. SECURITY ENHANCEMENTS
• Transparent Data Encryption
o Now supports the use of AES-NI Hardware Acceleration
• AES-NI
o Instruction set in the CPU that results in more efficient processing than if it was done in
software.
o Help to mitigate side-channel attacks
32. STRETCH DATABASE
• Archive data to Microsoft Azure SQL Database
o Query the remote and local data transparently
• Data is moved from SQL Server to Azure
o Data Ingres to Azure is free, Egress however costs, understand your queries.
• Archive data is limited by the size of the Azure SQL Database
o Currently this stands at 1TB when using the highest service tier (P11)
35. TEMPORAL TABLES
• Tracking the state of data as it changes over time with a validity period
• Managed by the SQL Server system
o System managed
o Migrate existing table to system management
• Two tables
o Current table
o History table
37. T-SQL ENHANCEMENTS
• Alter Table
o Now allows for multiple ALTER COLUMN
operations
• FOR JSON function
o There is now the ability to return data formatted
as JSON
o Similar to the FOR XML operator
• Truncate Table
o Enhanced to allow truncation of partitions
• New Query Hint
o NO_PERFORMANCE_SPOOL
39. THANK YOU!
• Slides will be available at http://blogs.sqlsentry.com/author/johnmartin
• E-mail ebooks@sqlsentry.com for free copies of our e-books:
o Just tell them where you met me
• My contact info for other questions:
o Email: Jmartin@SQLSentry.com
o Twitter: @SQLServerMonkey