SQL 2016 is HUGE!!!

Download Report

Transcript SQL 2016 is HUGE!!!

SQL 2016
PREVIEW
What’s New!
What’s Great!
What’s Meh…
PASS Victoria BC Chapter
September 24, 2015
Martin S. Stoller
http://ca.linkedin.com/in/martinsstoller/
REQUIREMENTS
(Are also heavy…)
• NEEDS:
–
–
–
–
–
–
Windows Server 2012 or Windows 8!!!
Oracle Java JRE 7 Update 51 (Why???)
64bit CPU (32bit is OK or SSMS and tools)
1 GB RAM (express only 512MB???)
6 GB of Harddisk (meh… what else is new?)
.NET 3.5 SP1 for the core DE, MDS, Replication, or SSMS
(This is tricky, because it is no longer easy to add with “Roles” – you have to choose the install folder on the OS Disk.)
– .NET 4.6 will be installed with SSMS, so at least that.
• Gotchas:
– Silverlight (!?!?) on Client if using PowerView in Sharepoint
(ugh… I thought SL was dead…)
Enhanced In-Memory OLTP
• Introduced SQL 2014, In-Memory OLTP has
matured in SQL Server 2016.
• Extended functionality to more applications.
• Enhancing concurrency.
• Memory limit up
from 256GB to 2TB.
-> terabyte range!
• More parallel
CPUs!
Enhanced In-Memory OLTP – P2
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
In-memory OLTP will support Foreign Keys between in-memory tables.
Trigger support added to in-memory tables.
Wide range of collations supported now.
Storage file GC tuned -> GC decoupled from Filestream.
Transparent Database Encryption (TDE) for in-memory tables.
Check and Unique constraints added.
Multi-threaded checkpoint for in-memory (one per container).
ALTER procedure and sp_recompile supported (fully online).
ALTER TABLE for schema and index changes (offline). Requires 2x memory.
Parallel plans are now possible on in-memory tables.
Native compilation support for: outer joins, OR, NOT, UNION
(ALL),DISTINCT, Subqueries (IN, NOT IN, EXISTS, NOT EXISTS).
Natively compiled stored procedures can be nested.
Ability to create natively compiled UDFs.
Improvements on the migration wizard.
LOB support being worked on to add for this release.
In Memory OLTP – Compare to 2014
Real-time Operational Analytics
• In-Memory OLTP
+ in-memory
column store for
real-time
operational
analytics.
• Caveat: SQL will
need lots of
memory to take
advantage of this.
Updated: Columnstore
• Parallel insert.
• Nonclustered B-tree indexes on top of the columnstore.
• Read/write nonclustered columnstore on top of regular clustered
index.
• In-memory columnstore on in-memory OLTP table.
• More T-SQL constructs run in batch mode.
• More predicates and aggregates pushed down to the storage engine.
• REORGANIZE removes deleted rows + merge small rowgroups,
online.
• New DMVs, XEvents and Perfmon counters.
• Support for RCSI or Snapshot isolation.
• Fully readable on an Availability Groups
secondary.
PolyBase
• Big Data technology bridging SQL Server and
Hadoop - run SQL queries over Hadoop data
stores without HDFS or MapReduce mad-skillz.
• Caveat: probably just in the Enterprise edition.
• Note this is NOT “build your own PDW”
-> SQL Server compute nodes don’t have local SQL Server data that can be referenced.
• “With this update, data scientists will no longer
need to extract data from SQL server via ODBC to
analyze it with R. Instead, you will be able to take
your R code to the data, where is will be run
inside a sandbox process within SQL Server itself.
This eliminates the time and storage required to
move the data, and gives you all the power of R
and CRAN packages to apply to your database.”
•
http://blog.revolutionanalytics.com/2015/05/r-in-sql-server.html
• Caveat: May not have made it yet into CTP…
https://sec.ch9.ms/sessions/ignite/2015/BRK2558.mp4 at around 57min
http://www.computerworld.com/article/2923214/big-data/sql-server-2016-to-include-r.html
Updated: DATA TOOLS!
• Reconsolidate SQL Server Data Tools –
previously two confusing versions of SQL
Server Data Tools - both of which had to be
downloaded separately!
{JSON} -> FINALLY!!!
(JavaScript Object Notation)
• XML has been sort of supported for over a decade
since SQL 2000, so this has been a long time coming.
• Natively parse + store JSON as relational data.
• May soon support exporting relational data to JSON.
http://blog.sqlauthority.com/2015/06/29/sql-server-getting-started-and-creating-json-using-sql-server-2016/
Temporal Databases
• Transparent and built-in functionality to track
historical changes in the data (for example, an
address or name change).
Updated: AlwaysOn
• Ability to have up to three (3) synchronous
replicas!
• Supports Distributed Transaction Coordinator.
• Supports round-robin load balancing of the
secondaries replicas.
• Supports
automatic
failover based
on database
health.
•
•
•
•
DBA Goodies!
Query Store!
Online ALTER COLUMN.
Truncate at Partition level.
Better handling of multiple TEMDB files.
Query store
• Maintains a history (tracking changes) of query
execution plans with their performance data.
• Quickly identifies queries that have gotten slower
recently.
• New SQL hints to tell optimizer what plan to use.
• Can force the use of an older & better plan if needed.
• Configured at the individual database level.
• Compare different plans- > Analyze the resource
(CPU, I/O, and Memory) usage patterns for a
particular database.
• Caveat: Not available for
MASTER or TEMPDB
database!
SELECT Txt.query_text_id, Txt.query_sql_text, Pl.plan_id, Qry.*
FROM sys.query_store_plan AS Pl
JOIN sys.query_store_query AS Qry
ON Pl.query_id = Qry.query_id
JOIN sys.query_store_query_text AS Txt
ON Qry.query_text_id = Txt.query_text_id ;
https://msdn.microsoft.com/en-ca/library/dn817826.aspx
• Faster hybrid backups!
• High availability and disaster recovery for onpremises databases to Microsoft Azure.
• Place your SQL Server AlwaysOn secondaries
in Azure.
• Snapshot backup to Azure storage when
running as a VM on Azure and with files
directly on blob storage.
Stretch!
• Dynamically stretch your onpremise database to Azure.
• Hot data stays on-premise!
• Cold data can be moved to the
cloud!
• Caveat: Microsoft will really
need to get partitioning right to
ensure on-site queries don’t
stray into the cloud + kill
performance!
ALWAYS ENCRYPTED!
• “Always Encrypted” protects data AT REST or
IN MOTION. (New is that it is way easy to use now!)
• Encryption key can reside with the application.
• Encryption and decryption of data happens
transparently inside the application.
• Data in the DB is secure from DBA and
administrators (good for PCI/C-SOX).
X
More Security!
(Can never have enough, you say!)
• Azure style Dynamic Data Masking: allows
establishing policies to mask out sensitive
column values to specific users or roles. Great
for any data that consultants might have to
work with!
AND EVEN More Security!
(SRSLY?)
• Azure style Row Level Security (RLS): This
restricts which users can view what data in a
table, based on a function. Very useful in
multi-tenant environments where we may
need to limit data access based on account #
or type (ie: HR data).
• Caveat: Updates and inserts are not covered
in the initial release.
Oooo! Candy!
(BI Stuff…)
• Business insights through rich visualizations
on mobile devices with native apps for
Windows, iOS and Android.
SSRS – Updated!
• SSRS madeover!
– Modern look!
– FINALLY all browser compatibility!
– Parameter layout customization & UI.
– New visualizations!
– Power BI Integration.
– Power BI type report templates & themes!
– Responsive Design (finally…)
– Mobile experience!
– And: ReportBuilder lives on!
SSRS – some details
• New Charts Types:
Histogram, Pareto
“Box and Whisker”,
Waterfall, Treemap,
Sunburst (RadTree/NestPie)
• UI to quickly disable/enable subscriptions.
• Shared credential for file share subscriptions. Two
workflows now exist with Reporting Services file
share subscriptions:
– Reporting Services administrator can configure a single file
share account, which is used for one to many
subscriptions.
– Configure individual subscriptions with specific credentials
for the destination file share.
More BI Stuff…
• Datazen is available now for any SQL Enterprise + SA license holder.
• R modules will be able to execute in SQL Server, moving the analytics
code close to the data.
• SSIS designer support for previous versions.
• PowerQuery support in SSIS.
• PowerBI Q&A through the SSAS on-premises data connector.
• Pin SSRS reports to PowerBI dashboards.
• Many to Many relationships on SSAS Tabular.
• Built-in time intelligence on SSAS Tabular models, new DAX functions,
parallel partition processing.
• New scripting language for Tabular model projects.
• Netezza as a native data source for SSAS.
• DBCC instruction support for multidimensional for maintenance related
tasks.
• Tight integration and improvements in relation to Sharepoint vNext.
Thanks For Watching!
STAY AWEOME!