sql server 2016 novelties

85
SQL Server 2016 CTP3 New innovations

Upload: msdevmtl

Post on 16-Apr-2017

1.610 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: SQL Server 2016 novelties

SQL Server 2016 CTP3New innovations

Page 2: SQL Server 2016 novelties

Operational analytics: in-memory tables

Page 3: SQL Server 2016 novelties

Support for index maintenance

Operation SQL Server 2014 SQL Server 2016

Removing deleted rows Requires index REBUILD Index REORGANIZERemove deleted rows from single compressed RG

Merge one or more compressed RGs with deleted rows

Done ONLINE

Smaller RG size resulting from:Smaller BATCHSIZEMemory pressure

Index build residual

Index REBUILD Index REORGANIZE

Ordering rows Create clustered index

Create columnstore index by dropping clustered index

No changes

Query Row group granularity

No support for RCSI or SI

Recommendation: use read uncommitted

Support of SI and RCSI (non-blocking)

Insert Lock at row level (trickle insert)

Row group level for set of rows

No changes

Delete Lock at row group level Row-level lock in conjunction with NCI

Update Lock at row group level

Implemented as Delete/Insert

Row-level lock in conjunction with NCI

AlwaysOn Failover Clustering (FCI) Fully supported Fully supported

AlwaysON Availability Groups Fully supported except readable secondary Fully supported with readable secondary

Index create/rebuild Offline Offline

Performance

Page 4: SQL Server 2016 novelties

Summary: operational analytics

Capability

Ability to run analytics queries concurrently with

operational workloads using the same schema

Data Warehouse queries can be run on In-Memory

OLTP workloads with no application changes

Benefits

Minimal impact on OLTP workloads

Best performance and scalability available

Offloading analytics workload to readable

secondary

.

IIS Server

BI analysts

Performance

Page 5: SQL Server 2016 novelties

In-Memory OLTP enhancements

Page 6: SQL Server 2016 novelties

| ADD {

<column_definition>| <table_constraint>| <table_index>

} [ ,...n ]

| DROP {

[ CONSTRAINT ] {

constraint_name} [ ,...n ]| COLUMN {

column_name} [ ,...n ]| INDEX {

index_name} [ ,...n ]

} [ ,...n ]

| ALTER INDEX index_name{

REBUILD (WITH <rebuild_index_option>) }

}

The ALTER TABLE syntax is

used for making changes to the

table schema, as well as for

adding, deleting, and rebuilding

indexes

Indexes are considered part of

the table definition

Key advantage is the ability to

change the BUCKET_COUNT with

an ALTER INDEX statement

Altering memory-optimized tables

Performance

Page 7: SQL Server 2016 novelties

CREATE PROCEDURE [dbo].[usp_1]WITH NATIVE_COMPILATION, SCHEMABINDING, EXECUTE AS OWNERAS BEGIN ATOMIC WITH(TRANSACTION ISOLATION LEVEL = SNAPSHOT, LANGUAGE = N'us_english')SELECT c1, c2 from dbo.T1ENDGO

ALTER PROCEDURE [dbo].[usp_1]WITH NATIVE_COMPILATION, SCHEMABINDING, EXECUTE AS OWNERAS BEGIN ATOMIC WITH(TRANSACTION ISOLATION LEVEL = SNAPSHOT, LANGUAGE = N'us_english')SELECT c1 from dbo.T1ENDGO

You can now perform ALTERoperations on natively compiled

stored procedures using the

ALTER PROCEDURE statement

Use sp_recompile to

recompile stored procedures on

the next execution

Altering natively compiled stored procedures

Performance

Page 8: SQL Server 2016 novelties

New Transaction Performance Analysis Overview report

New report replaces the

need to use the

Management Data

Warehouse to analyze

which tables and stored

procedures are candidates

for in-memory

optimization

Performance

Page 9: SQL Server 2016 novelties

In SQL Server 2016, the

storage for memory-

optimized tables will be

encrypted as part of enabling

TDE on the database

Simply follow the same steps

as you would for a disk-based

database

Support for Transparent Data Encryption (TDE)

Windows Operating SystemLevel Data Protection

SQL ServerInstance Level

User DatabaseLevel Database Encryption Key

Service Master Key

DPAPI encrypts the Service Master Key

MasterDatabase Level Database Encryption Key

Service Master Key Encrypts the Database master Key for the master Database

Database Master Key of the master Database creates a certificate in the master database

The certificate encrypts the database Encryption Key in the user database

The entire user database is secured by the Datbase Encryption Key (DEK) of the user database by using transparent database encryption

Created at a time of SQL Server setup

Statement:

CREAT MASTER KEY…

Statement:

CREATE CERTIFICATE…

Statement:

CREATE DATABASE ENCRYPTION KEY…

Statement:

ALTER DATABSE… SET ENCRYPTION

Performance

Page 10: SQL Server 2016 novelties

Summary: In-Memory OLTP enhancements

Capability

ALTER support for memory-optimized tables

Greater Transact-SQL coverage

Benefits

Improved scaling: In-Memory OLTP engine has been enhanced to scale linearly on servers up to 4 sockets

Tooling improvements in Management Studio

MARS (multiple active result sets) support

TDE (Transparent Data Encryption)-enabled: all on-disk data files are now encrypted once TDE is enabled

Performance

Page 11: SQL Server 2016 novelties

Query Store

Your flight data recorder for your database

Page 12: SQL Server 2016 novelties

Problems with query performance

Fixing query plan choice regressions is difficult• Query plan cache is not well-suited for performance troubleshooting

Long time to detect the issue (TTD)• Which query is slow? Why is it slow?

• What was the previous plan?

Long time to mitigate (TTM)• Can I modify the query?

• How to use plan guide?

Performance

Temporaryperf issues

WebsiteIs down

DBupgraded

Database is not

working

Impossible to predict / root cause

Regression caused by

new bits

Page 13: SQL Server 2016 novelties

Durability latency controlled by DB option

DATA_FLUSH_INTERNAL_SECONDS

Compile

Execute

Plan store

Runtime stats

Query

Store

schema

Query data store

Collects query texts (plus all relevant properties)

Stores all plan choices and performance metrics

Works across restarts / upgrades / recompiles

Dramatically lowers the bar for performance

troubleshooting

New Views

Intuitive and easy plan forcing

Performance

Page 14: SQL Server 2016 novelties

The Query Store feature provides DBAs with insight on query plan choice and performance

Monitoring performance by using the Query Store

Performance

Page 15: SQL Server 2016 novelties

Summary: Query Store

Capability

Query Store helps customers quickly find and fix query performance issues

Query Store is a ‘flight data recorder’ for database workloads

Benefits

Greatly simplifies query performance troubleshooting

Provides performance stability across SQL Server upgrades

Allows deeper insight into workload performance

Performance

Page 16: SQL Server 2016 novelties

JavaScript Object Notation (JSON)

Page 17: SQL Server 2016 novelties

JSON in SQL Server

[

{

"Number":"SO43659",

"Date":"2011-05-31T00:00:00"

"AccountNumber":"AW29825",

"Price":59.99,

"Quantity":1

},

{

"Number":"SO43661",

"Date":"2011-06-01T00:00:00“

"AccountNumber":"AW73565“,

"Price":24.99,

"Quantity":3

}

]

SO43659 2011-05-31T00:00:00 MSFT 59.99 1

SO43661 2011-06-01T00:00:00 Nokia 24.99 3

Table 2 JSON

Formats result set

as JSON text.

JSON 2 table

Migrates JSON

text to table

Built-in functions

ISJSON

JSON_VALUE

JSON_MODIFY

Performance

Page 18: SQL Server 2016 novelties

Main facts

No custom type or indexStore as NVARCHAR

Does JSON work with X?Does NVARCHAR work with X?

Yes, with in-memory, row-level security, stretch, compression, encryption, and more

Yes, with all client drivers

Different from DocumentDB

Page 19: SQL Server 2016 novelties

Table to JSON

JSON output:

SO43659 2011-05-31T00:00:00 MSFT 59.99 1

SO43661 2011-06-01T00:00:00 Nokia 24.99 3

SELECT Number AS [Order.Number], Date AS [Order.Date],

Customer AS Account,

Price AS 'Item.UnitPrice', Quantity AS 'Item.Qty'

FROM SalesOrder

FOR JSON PATH

Performance

Page 20: SQL Server 2016 novelties

CREATE TABLE SalesOrderRecord (Id int PRIMARY KEY IDENTITY,OrderNumber NVARCHAR(25) NOT NULL,OrderDate DATETIME NOT NULL,

JSalesOrderDetails NVARCHAR(4000)CONSTRAINT SalesOrderDetails_IS_JSON

CHECK ( ISJSON(JSalesOrderDetails)>0 ),

Quantity ASCAST(JSON_VALUE(JSalesOrderDetails, '$.Order.Qty') AS int)

)GO

CREATE INDEX idxJson ON SalesOrderRecord(Quantity)INCLUDE (Price);

Built-in functions

JSON is plain text

ISJSON guarantees

consistency

Optimize further with

computed column and

INDEX

Page 21: SQL Server 2016 novelties

Summary: JSON

Capability

Greatly enhances developer productivity

Benefits

Added native JSON support in the core database engine supports schema-free data. Tackle more diverse

data types right in SQL Server

Support in DocumentDB

Performance

Page 22: SQL Server 2016 novelties

Temporal

Query back in time

Page 23: SQL Server 2016 novelties

No change in programming model New Insights

INSERT / BULK INSERT

UPDATE

DELETE

MERGE

DML SELECT * FROM temporal

Querying

How to start with temporal

CREATE temporalTABLE PERIOD FOR SYSTEM_TIME…

ALTER regular_table TABLE ADD PERIOD…

DDL

FOR SYSTEM_TIME

AS OF

FROM..TO

BETWEEN..AND

CONTAINED IN

Temporal Querying

ANSI 2011 compliant

Performance

Page 24: SQL Server 2016 novelties

Provides correct information

about stored facts at any

point in time, or between

two points in time

There are two orthogonal sets of scenarios with regards to temporal data:

System (transaction)-time

Application-time

SELECT * FROM Person.BusinessEntityContact

FOR SYSTEM_TIME BETWEEN @Start AND @End

WHERE ContactTypeID = 17

Performance

Temporal database support: BETWEEN

Page 25: SQL Server 2016 novelties

Summary: temporal

Capability

Greatly enhances developer productivity

Benefits

Added temporal database support so you can record, audit, and query data changes over time

Page 26: SQL Server 2016 novelties

Performance Security Availability Scalability

Operational analyticsInsights on operational data; Works with in-memory OLTP and disk-based OLTP

In-memory OLTP

enhancements

Greater T-SQL surface area, terabytes of memory supported, and greater number of parallel CPUs

Query data store Monitor and optimize query plans

Native JSONExpanded support for JSON data

Temporal database

supportQuery data as points in time

Always encryptedSensitive data remains encrypted at all times with ability to query

Row-level securityApply fine-grained access control to table rows

Dynamic data maskingReal-time obfuscation of data to prevent unauthorized access

Other enhancementsAudit success/failure of database operations

TDE support for storage of In-Memory OLTP tables

Enhanced auditing for OLTP with ability to track history of record changes

Enhanced AlwaysOnThree synchronous replicas for auto failover across domains

Round robin load balancing of replicas

Automatic failover based on database health

DTC for transactional integrity across database instances with AlwaysOn

Support for SSIS with AlwaysOn

Enhanced database

caching Cache data with automatic, multiple TempDB files per instance in multi-core environments

Mission-critical performance

Page 27: SQL Server 2016 novelties

Always Encrypted

Page 28: SQL Server 2016 novelties

Prevents data

disclosure

Client-side encryption of

sensitive data using keys that

are never given to the

database system

Queries on

encrypted data

Support for equality

comparison, including join,

group by, and distinct

operators

Application

transparency

Minimal application changes

via server and client library

enhancements

Allows customers to securely store sensitive data outside of their trust boundary.

Data remains protected from high-privileged, yet unauthorized users.

The need for Always Encrypted

Security

Page 29: SQL Server 2016 novelties

How it worksHelp protect data at rest and in motion, on-premises and in the cloud

SQL Server or SQL Database

ADO .NET

Name

Wayne Jefferson

Name

0x19ca706fbd9a

Result SetResult Set

Client

Name SSN Country

0x19ca706fbd9a 0x7ff654ae6d USA

dbo.Customers

ciphertext

"SELECT Name FROM Customers WHERE SSN = @SSN",0x7ff654ae6d

ciphertext

"SELECT Name FROM Customers WHERE SSN = @SSN","111-22-3333"

Encrypted sensitive data and corresponding keys are never seen in plaintext in SQL Server

trust boundary

Security

Page 30: SQL Server 2016 novelties

Select columns to

be encrypted

Analyze schema

and application

queries to detect

conflicts (build

time)Set up the keys:

master & CEK

Static schema

analysis tool

(SSDT only)

UI for selecting columns (no

automated data classification)

Key setup tool to automate

selecting CMK, generating and

encrypting CEK, and uploading

key metadata to the database

Setup (SSMS or SSDT)User experience: SSMS or SSDT (Visual Studio)

Security

Page 31: SQL Server 2016 novelties

Data remains encrypted during query

Summary: Always EncryptedProtect data at rest and in motion, on-premises and in the cloud

Capability

ADO.Net client library provides

transparent client-side encryption, while

SQL Server executes T-SQL queries on

encrypted data

Benefits

Apps TCE-enabled

ADO .NET library

SQL ServerEncrypted

query

Columnarkey

No app changes

Master key

Security

Page 32: SQL Server 2016 novelties

Row-level security

SQL Server 2016SQL Database

Page 33: SQL Server 2016 novelties

Fine-grained access control over specific rows in a database

table

Help prevent unauthorized access when multiple users

share the same tables, or to implement connection filtering

in multitenant applications

Administer via SQL Server Management Studio or SQL

Server Data Tools

Enforcement logic inside the database and schema is

bound to the table

Protect data privacy by ensuring

the right access across rows

SQL Database

Customer 1

Customer 2

Customer 3

The need for row-level security

Security

Page 34: SQL Server 2016 novelties

Fine-grained

access control

Keeping multitenant

databases secure by limiting

access by other users who

share the same tables

Application

transparency

RLS works transparently at

query time, no app changes

needed

Compatible with RLS in other

leading products

Centralized

security logic

Enforcement logic resides

inside database and is

schema-bound to the table it

protects providing greater

security. Reduced application

maintenance and complexity

Store data intended for many consumers in a single database/table while at the same time

restricting row-level read and write access based on users’ execution context.

Benefits of row-level security (RLS)

Security

Page 35: SQL Server 2016 novelties

Security

CREATE FUNCTION dbo.fn_securitypredicate(@wing int)

RETURNS TABLE WITH SCHEMABINDING AS

return SELECT 1 as [fn_securitypredicate_result]

FROM

StaffDuties d INNER JOIN Employees e

ON (d.EmpId = e.EmpId)

WHERE e.UserSID = SUSER_SID()

AND @wing = d.Wing;

CREATE SECURITY POLICY dbo.SecPol

ADD FILTER PREDICATE dbo.fn_securitypredicate(Wing)

ON Patients

WITH (STATE = ON)

Fine-grained access control over

rows in a table based on one or

more pre-defined filtering

criteria, such as user’s role or

clearance level in organization

Concepts:

Predicate function

Security policy

Example

Page 36: SQL Server 2016 novelties

Two

App user (e.g., nurse) selects from Patients tableThree

Security Policy transparently rewrites query to apply filter predicate

Database Policy Manager

CREATE FUNCTION dbo.fn_securitypredicate(@wing int)

RETURNS TABLE WITH SCHEMABINDING AS

return SELECT 1 as [fn_securitypredicate_result] FROM

StaffDuties d INNER JOIN Employees e

ON (d.EmpId = e.EmpId)

WHERE e.UserSID = SUSER_SID() AND @wing = d.Wing;

CREATE SECURITY POLICY dbo.SecPol

ADD FILTER PREDICATE dbo.fn_securitypredicate(Wing) ON Patients

WITH (STATE = ON)

Filter

Predicate:

INNER

JOIN…

Security

Policy

Application

Patients

Nurse

SELECT * FROM Patients

SELECT * FROM Patients

SEMIJOIN APPLY dbo.fn_securitypredicate(patients.Wing);

SELECT Patients.* FROM Patients,

StaffDuties d INNER JOIN Employees e ON (d.EmpId = e.EmpId)

WHERE e.UserSID = SUSER_SID() AND Patients.wing = d.Wing;

RLS in three steps

Security

Page 37: SQL Server 2016 novelties

Summary: RLS

Capability

Row-level security provides fine-grained access control over rows in a table based on

conditions you set up

Benefits

Store data for many users in the same databases and tables while limiting access by other users

who share the same tables

Security

Page 38: SQL Server 2016 novelties

Dynamic data masking

SQL Server 2016SQL Database

Page 39: SQL Server 2016 novelties

Configuration made easy in the new Azure portal

Policy-driven at the table and column level, for a

defined set of users

Data masking applied in real-time to query

results based on policy

Multiple masking functions available (e.g. full,

partial) for various sensitive data categories

(credit card numbers, SSN, etc.)

SQL Database

SQL Server 2016

Table.CreditCardNo

4465-6571-7868-5796

4468-7746-3848-1978

4484-5434-6858-6550

Real-time data masking;

partial masking

Dynamic data masking

Prevent the abuse of sensitive

data by hiding it from users

Security

Page 40: SQL Server 2016 novelties

Regulatory

compliance

Sensitive data

protection

Agility and

transparency

Data is masked on the fly, with

underlying data in the database

remaining intact. Transparent to

the application and applied

according to user privilege

Limit access to sensitive data by defining policies to obfuscate specific database fields, without

affecting the integrity of the database.

Benefits of dynamic data masking

Security

Page 41: SQL Server 2016 novelties

How it works

On-the-fly obfuscation of data in query results

Policy-driven on the table and column

Multiple masking functions available for various sensitive data categories

Flexibility to define a set of privileged logins for un-masked data access

By default, database owner is unmasked

See: https://msdn.microsoft.com/en-us/library/mt130841.aspx

Azure DB

Table.CreditCardNo

4465-6571-7868-5796

4468-7746-3848-1978

4484-5434-6858-6550

On-the-fly masking of

sensitive data in query resultsDynamic

masking

Limit sensitive data exposure by

obfuscating it to non-privileged users

Security

Page 42: SQL Server 2016 novelties

Dynamic data masking walkthrough

ALTER TABLE [Employee] ALTER COLUMN [SocialSecurityNumber]ADD MASKED WITH (FUNCTION = ‘SSN()’)

ALTER TABLE [Employee] ALTER COLUMN [Email]ADD MASKED WITH (FUNCTION = ‘EMAIL()’)

ALTER TABLE [Employee] ALTER COLUMN [Salary] ADD MASKED WITH (FUNCTION = ‘RANDOM(1,20000)’)

GRANT UNMASK to admin1

1) Security officer defines dynamic data masking policy in T-SQL over sensitive data in Employee table2) Application user selects from Employee table3) Dynamic data masking policy obfuscates the sensitive data in the query results

SELECT [Name],

[SocialSecurityNumber],

[Email],

[Salary]

FROM [Employee]

Security

Page 43: SQL Server 2016 novelties

Summary: dynamic data masking

CapabilityProtects against unauthorized disclosure of sensitive data in the application

BenefitsEnables you to set up policies at the table and column level that provide multiple masking functions

Allows certain privileged logins to see the data unmasked

Security

Page 44: SQL Server 2016 novelties

Enhanced AlwaysOn

Page 45: SQL Server 2016 novelties

More than two automatic failover targets

Increased solution scale

Increased resiliency

Now any sync secondary can be a target for automatic failover

Total of three automatic failover targets

Availability

Page 46: SQL Server 2016 novelties

Log transport performance

New hardware pushes boundaries

Very high transaction rates have caused problems when coupled with

fast hardware (i.e. PCIe flash storage)

The entire pipeline has been reworked end to end

Result is much lower CPU consumption, and much better performance

Performance bar: comparison to the performance of a standalone server

Availability

Page 47: SQL Server 2016 novelties

Distributed Transaction Coordinator (DTC) support

Currently, any distributed transactions touching a database in an availability group are not allowed

Many customers run unsupported, at risk to their data and reputation

Many enterprise applications need cross-database transactions

Fully supported in SQL Server 2016Joint effort with Windows

Requires specific patch in order to work cleanly

Other requirements:

• Availability groups must be running on Windows Server 2016 Technical Preview 2

• Availability groups must be created with the CREATE AVAILABILITY GROUP command and the WITH DTC_SUPPORT = PER_DB clause. You cannot currently alter an existing availability group

• Learn more: https://msdn.microsoft.com/en-us/library/ms366279.aspx

Availability

Page 48: SQL Server 2016 novelties

Database-level failover trigger

Currently, Availability Groups only monitor the health of the instanceA database can be offline or corrupt, but will not trigger a failover as long as the instance itself is healthy

SQL Server 2016: option to also monitor the health of the databases in the Availability Group

Databases going offline trigger a change in the health status

Availability

Page 49: SQL Server 2016 novelties

Summary: enhanced AlwaysOn

Capability

For scalability, SQL Server 2016 adds in load balancing of readable secondaries

Increases the number of auto-failover targets from two to three

Benefits

Log transport performance has been improved

Support for Distributed Transaction Coordinator (DTC) — enrolled transactions for Availability Group

databases

Database-level health monitoring

gMSA: domain-level accounts that are automatically managed

Availability

Page 50: SQL Server 2016 novelties

Performance Security Availability Scalability

Operational analyticsInsights on operational data; Works with in-memory OLTP and disk-based OLTP

In-memory OLTP

enhancements

Greater T-SQL surface area, terabytes of memory supported, and greater number of parallel CPUs

Query data store Monitor and optimize query plans

Native JSONExpanded support for JSON data

Temporal database

supportquery data as points in time

Always encryptedSensitive data remains encrypted at all times with ability to query

Row-level securityApply fine-grained access control to table rows

Dynamic Data MaskingReal-time obfuscation of data to prevent unauthorized access

Other enhancementsAudit success/failure of database operations

TDE support for storage of in-memory OLTP tables

Enhanced auditing for OLTP with ability to track history of record changes

Enhanced AlwaysOnThree synchronous replicas for auto failover across domains

Round robin load balancing of replicas

Automatic failover based on database health

DTC for transactional integrity across database instances with AlwaysOn

Support for SSIS with AlwaysOn

Enhanced database

caching Cache data with automatic, multiple TempDB files per instance in multicore environments

Mission-critical performance

Page 51: SQL Server 2016 novelties

Scalability improvements

Page 52: SQL Server 2016 novelties

Access any data Scale and manage Powerful insights Advanced analytics

PolyBase

Insights from data across SQL Server and Hadoop with the simplicity of T-SQL

Enhanced SSISDesigner support for previous SSIS versions

Enterprise-grade

Analysis Services Enhanced performance and scalability for Analysis Services

Single SSDT in Visual Studio

2015 (CTP3)Build richer analytics solutions as part of your development projects in Visual Studio

Enhanced MDS Excel add-in 15x faster; moregranular security roles; archival options for transaction logs; and reuse entities across models

Mobile BIBusiness insights for your on-premises data through rich visualization on mobile devices with native apps for Windows, iOS, and Android

Enhanced Reporting

ServicesNew modern reports with rich visualizations

R integration (CTP3)Bringing predictive analytic capabilities to your relational database

Expand your “R” script library with Microsoft Azure Marketplace

Deeper insights across data

Page 53: SQL Server 2016 novelties

PolyBase for SQL Server 2016

Page 54: SQL Server 2016 novelties

PolyBase and queries

Provides a scalable, T-SQL-compatible query processing framework for combining data from both universes

Access any data

Page 55: SQL Server 2016 novelties

PolyBase View in SQL Server 2016

PolyBase View

• Execute T-SQL queries against relational data in SQL Server and ‘semi-structured’ data in HDFS and/or Azure

• Leverage existing T-SQL skills and BI tools to gain insights from different data stores

• Expand the reach of SQL Server to Hadoop(HDFS)

Access any data

Page 56: SQL Server 2016 novelties

SSIS improvements

Page 57: SQL Server 2016 novelties

SSIS improvements for SQL Server 2016

AlwaysOn support

Incremental deployment of

packages

Improved project upgrade support

CTP3 enhancements

Error column name support

Custom log level

Package template

OData V4 support

Designer improvements

One designer multi-version support

AlwaysOn Availability Groups

Secondary for SSISDB

New York(Primary)

New Jersey(Secondary)

SSIS

DB

SSIS

DB

SQL Server 2012SSIS Project XSQL Server 2016SSIS Project X

Improved project upgrade

Access any data

Page 58: SQL Server 2016 novelties

Package template (CTP3)Reuse code as templates

Developer can save part of the package as a

template and reuse it in the design of other

packages

Access any data

Page 59: SQL Server 2016 novelties

Capability

DBA can set up AlwaysOn Availability Groups for the SSIS catalog

Deploy one or more packages to an existing or new project without deploying the whole project

Benefits

Customize your own log levels for more flexibility

See the error column name in both the data viewer and editor

Create reusable code by making a package template

OData Source support for V4 Protocol

Summary: SSIS improvement

Access any data

Page 60: SQL Server 2016 novelties

Enterprise-grade Analysis Services

Page 61: SQL Server 2016 novelties

Analysis Services themes for SQL Server 2016Improved productivity and performance

Increasedproductivity

Scale and manage

Page 62: SQL Server 2016 novelties

Scale your tabular

models with support

for high-end servers

More memory

More cores

Summary: enterprise-grade Analysis ServicesDeliver high performance and scalability for your BI solutions

High-end server hardware

Capability

Tabular and MOLAP modeling enhancements

High-performance Direct Query for Tabular

Additional tools for administrators

Performance and data source updates

Benefits

Scale and manage

Page 63: SQL Server 2016 novelties

Unified Visual Studio Data Tools (CTP3)

Page 64: SQL Server 2016 novelties

Capability

SSDT-BI and SSMS for Visual Studio 2015

Rich data modeling enhancements

New DAX analytical functions

MDX Query Plan tool for performance optimizations and troubleshooting

Benefits{JSON}

Rich BI application platformDevelop and deliver BI solutions faster and at lower costs

Scale and manage

Page 65: SQL Server 2016 novelties

Master Data Services improvements

Page 66: SQL Server 2016 novelties

Areas of improvement

Scale and manage

Page 67: SQL Server 2016 novelties

Performance and scaleOverall performance and scale

improvements

Target of 15x performance

improvement for Excel add-in

Increased performance for bulk

entity-based staging operations

Security improvementsNew security roles for more

granular permissions around read,

write, and delete

Multiple system administrators

Manageability and modelingArchive transaction logs

Reuse of entities across models

Support for compound keys

Name and Code attributes can be

renamed

Summary: MDS improvements

Scale and manage

Page 68: SQL Server 2016 novelties

Enhanced Reporting Services

Page 69: SQL Server 2016 novelties

Modern Report Builder look and feel

Visual Studio 2015 support

Modern reports

Powerful insights

Page 70: SQL Server 2016 novelties

Consume anywhere, anytime

Find, view, and manage through modern web

portal

Support for modern HTML5 browsers

Printing without plug-ins

PowerPoint rendering and export

Powerful insights

Page 71: SQL Server 2016 novelties

Summary: Enhanced Reporting Services

Modern design tools

Support for latest enterprise data source

Expanded browser support

Secure access

Power BI integration

Report consumption from modern browsers

Improved parameters

Modern themes

New chart types

Powerful insights

Page 72: SQL Server 2016 novelties

R integration

Page 73: SQL Server 2016 novelties

R Integration in SQL Server will be Revolutionary

Page 74: SQL Server 2016 novelties

Capability

Extensible in-database analytics, integrated with

R, exposed through T-SQL

Centralize enterprise library for analytic models

Benefits

SQL Server

Analytical engines

Full R integration

Fully extensible

Data Management Layer

Relational data

T-SQL interface

Stream data in-memory

Analytics library

Share and collaborate

Manage and deploy

R +

Data Scientists

Business

Analysts

Publish algorithms, interact

directly with data

Analysis through TSQL, tools,

and vetted algorithms

DBAsManage storage and

analytics together

Summary: R integration and advanced analytics

Advanced analytics

Page 75: SQL Server 2016 novelties

Stretch Database

Page 76: SQL Server 2016 novelties

Ever-growing data, ever-shrinking IT

What to do?

Expand server and storage

Move data elsewhere

Delete

Massive tables (hundreds of millions/billions of rows, TBs size)

Users want/need to retain data indefinitely

Cold data infrequently accessed but must be online

Datacenter consolidation

Maintenance challenges

Business SLAs at risk

Hybrid solutions

Page 77: SQL Server 2016 novelties

Capability

Stretch large operational tables

from on-premises to Azure with

the ability to query

Benefits

Stretch SQL Server into AzureSecurely stretch cold tables to Azure with remote query processing

SQLSERVER

2016

Azure

Hybrid solutions

Page 78: SQL Server 2016 novelties

Stretch Database architecture

How it works

Creates a secure linked server

definition in the on-premises SQL

Server

Linked server definition has the

remote endpoint as the target

Provisions remote resources and

begins to migrate eligible data, if

migration is enabled

Queries against tables run against

both the local database and the

remote endpoint

Remote

endpoint

Remote data

Azure

Inte

rnet B

ou

nd

aryLocal

database

Local data

Eligible data

Linked Servers

Hybrid solutions

Page 79: SQL Server 2016 novelties

Queries continue working

• Business applications continue working without disruption

• DBA scripts and tools work as before. All controls still held in local SQL Server

• Developers continue building or enhancing applications with existing tools and methods

Hybrid solutions

Page 80: SQL Server 2016 novelties

Order historyName SSN Date

Jane Doe cm61ba906fd 2/28/2005

Jim Gray ox7ff654ae6d 3/18/2005

John Smith i2y36cg776rg 4/10/2005

Bill Brown nx290pldo90l 4/27/2005

Sue Daniels ypo85ba616rj 5/12/2005

Sarah Jones bns51ra806fd 5/22/2005

Jake Marks mci12hh906fj 6/07/2005

Eric Mears utb76b916gi 6/18/2014

Rachel Hogan px61hi9306fj 7/1/2014

Sam Johnson ol43bi506gd 7/12/2014

David Simon tx83hal916fi 7/29/2014

Michelle Burns nb95re926gi 8/10/2014

Order history

Name SSN Date

Jane Doe cm61ba906fd 2/28/2005

Jim Gray ox7ff654ae6d 3/18/2005

John Smith i2y36cg776rg 4/10/2005

Bill Brown nx290pldo90l 4/27/2005

Customer data

Product data

Order History

Stretch to cloud

App

Query

Microsoft Azure

Jim Gray ox7ff654ae6d 3/18/2005

Hybrid solutions

Page 81: SQL Server 2016 novelties

What is IoT?

Page 82: SQL Server 2016 novelties

Internet of Things (IoT)

Page 83: SQL Server 2016 novelties

Azure Data Lake and Data Factory

Page 84: SQL Server 2016 novelties

Get started with U-SQL

Page 85: SQL Server 2016 novelties

Questions