Upload
bob-ward
View
112
Download
2
Embed Size (px)
Citation preview
SQL Server v.Next with Support on Linux, Windows and ContainersBob WardPrincipal ArchitectData Group, Tiger Team
[email protected]@bobwardms, #bobsql
Deck on slideshare.net
Businesses are embracing choice
101001010010
{ }
T-SQLJavaC/C++C#/VB.NET
PHPNode.jsPythonRuby
Heterogenous environments
Multiple data types
Differentdevelopment languages
On-premises, cloud, and hybrid
environments
Microsoft is delivering on choice
SQL Server on Linux
HDInsight on Linux
R Server on Linux
Linux in Azure
SQL Server drivers and connectivity
Visual Studio Code extension for SQL Server
Python, Ruby, …
20,000 applications for the SQL Server on Linux private preview program, including more than 55% of Fortune 500 companies.
NEW
1/12th the cost of Oracle
National Institute of Standards and Technology Comprehensive Vulnerability Database update 12/2016.
Best price/performance
Everything built-in
Highest performing data warehouse
Most secure database
Best TCO Most consistent experience
On-premises to cloud #1 performance
TPC-H
Oracle
is #5#2
SQL Server
#1
SQL Server
#3
SQL Server
The power of SQL ServerEverything built-in
June 2016SQL Server 2016
TPC-E
6 years in a rowleast vulnerable
2010 2011 2012 2013 2014 2015 20160
10
20
30
40
50
60
70
80
0 1 40 0 3 0
3429
2215
5
2216
6
43
20
69
18
49
74
3
SQL Server
Oracle
MySQL2
SAP HANA
1/12
Only data solution to encrypt your data at rest and in motion
Connect your relational data to big data with PolyBase
Real-time operational analytics without impacting performance
Up to 30x faster transactions, 100x faster queries with InMemory
Unparalleled choice for developer tools and languages
1 T-SQLJavaC/C++C#/VB.NET
PHPNode.jsPythonRuby
For all your applicationsInnovations across all editions
Available nowSQL Server 2016 SP1
On the platform of your choiceSQL Server v.Next
Targeting CY2017SQL Server v.Next GA*
*SQL Server v.Next Public Preview available now on Linux, Windows, and Docker.
Your choice of language and tooling
Java C/C++ PHPC#VB.NET PythonJavaScript Ruby
SQL Server Azure SQL Database SQL DW
JDBC ODBC
ODBC
ADO.NET
FreeTDSTedious
Node.js Driver
FreeTDSODBCFreeTDS
Node.js Driver
PHP Driver db-lib Pymssql
PymssqlTinyTDS
TinyTDS
RailsDjango
Demo
SQL Server in a Linux World
• Buying a SQL Server license grants the option to use it on Windows Server or Linux
• Previews are free to download and use in a non-production capacity
• Same familiar set of editions (Enterprise, Standard, Developer)
LICENSE
LicensingSame license, new choice
Stay ahead of the competition with the latest innovationsBe future-ready with Software Assurance
TODAY vNEXT v∞
Always have access to the latest New Version Rights• Improve productivity with
the latest technologies• Lower the cost of acquiring
new product versions• Simplify licensing, budgeting
and administration
SQL Server on Linux - Scope
What’s coming in SQL Server vNextSupported platforms
Linux Containers
Windows
Windows Server
• RedHat Enterprise Linux (RHEL) 7.3• SUSE Enterprise Linux (SLES) v12
SP2• Ubuntu 16.04 and 16.10• Possibly other Linux distributions• Docker: Windows & Linux
containers• Windows Server / Windows 10
• Package based installationExample: yum install mssql-server
Windows Linux GA
Editions Developer, Express, Web, Standard, Enterprise
ServicesDatabase Engine R Services, Integration Services, Analysis Services, Reporting Services, MDS, DQS
Mission critical performance
Maximum number of cores Unlimited TBD
Maximum memory utilized per instance 12 TB TBD
Maximum database size 524 PB TBD
Basic OLTP (Basic In-Memory OLTP, Basic operational analytics) Advanced OLTP (Advanced In-Memory OLTP, Advanced operational analytics) Basic high availability (2-node single database failover, non-readable secondary) Advanced HA (Always On - multi-node, multi-db failover, readable secondaries)
SecurityBasic security (Basic auditing, Row-level security, Data masking, Always Encrypted) Advanced security (Transparent Data Encryption)
Data warehousing
PolyBase Basic data warehousing/data marts (Basic In-Memory ColumnStore, Partitioning, Compression) Advanced data warehousing (Advanced In-Memory ColumnStore) Advanced data integration (Fuzzy grouping and look ups)
ToolsWindows ecosystem: Full-fidelity Management & Dev Tool (SSMS & SSDT), command line tools Linux/OSX/Windows ecosystem: Dev tools (VS Code), DB Admin GUI tool, command line tools
Developer Programmability (T-SQL, CLR, Data Types, JSON) Windows Filesystem Integration - FileTable
BI & Advanced Analytics
Basic Business Intelligence (Multi-dimensional models, Basic tabular model) Basic “R” integration (Connectivity to R Open, Limited parallelism for ScaleR)
Advanced “R” integration (Full parallelism for ScaleR) Hybrid cloud Stretch Database
What’s coming in SQL Server on Linux
Programming Features• Support for RHEL, SUSE, Ubuntu, Docker• Package based installs, Docker image• Support for Open Shift, Docker Swarm• Failover Clustering through Pacemaker• Backup/Restore• Replication• Log Shipping• Transparent Data Encryption• SCOM Management Pack• DMVs• Always On Availability Groups• SQL Agent (coming in March)• Full Text Search
Operations Features• All major language driver compatibility• In memory OLTP and ColumnStore• Compression• Always Encrypted, Row Level Security, and Data
Masking• Service Broker• Change Data Capture• Partitioning• Auditing• Common Language Runtime (CLR) - .NET
Framework• JSON, XML
What’s working already?
…and more!
SQL Control Access Database access SQL Authentication
Active Directory AuthenticationGranular Permissions
Application access Row-Level Security Dynamic Data Masking
Monitor AccessTracking activities Fine-Grained Audit
Protect Data Encryption at rest Transparent Data Encryption
Backup EncryptionCell-Level Encryption
Encryption in transit Transport Layer Security (SSL/TLS)Encryption in use (client) Always Encrypted
Protect Data Encryption at rest Transparent Data Encryption
Backup EncryptionCell-Level Encryption
Encryption in transit Transport Layer Security (SSL/TLS)*Encryption in use (client) Always Encrypted
Control Access Database access SQL Authentication
Active Directory Authentication*Granular Permissions
Application access Row-Level Security Dynamic Data Masking
What’s coming in SQL Server vNext for LinuxSecurity
*In progress
What’s coming in SQL Server vNext for LinuxHigh availability and disaster recovery
• Resilience against guest & OS level failures
• Planned & unplanned events• Minimum downtime for
patching and upgrades• Minutes RTO
VM Failure
• Protection against accidental or malicious data corruption
• DR protection• Minutes to hours RTO
Backup/Restore
• Instance level protection• Automatic failure detection
& failover• Seconds to minutes RTO• Resilience against OS and
SQL Server failures
Standard HADRFailover Cluster
• AG with 2 replicasBasic Availability Groups
• Warm standbys for DRLog Shipping*
• Database level protection• Seconds RTO• No data loss• Recover from unplanned
outage• No downtime for planned
maintenance• Offload read/backup
workload to active secondaries
• Failover to geographically distributed secondary site
Availability Groups
Mission-Critical HADR
*In progress
What’s coming in SQL Server vNext for LinuxTools and programmability
• Windows-based SQL Server tools like SSMS, SSDT, Profiler work when connected to SQL Server on Linux
• 3rd party tools continue to work
• Native command line tools: sqlcmd, bcp, sqlpackage
• Visual Studio Code extension
• New cross-platform DB admin GUI tool (planned)
• All existing drivers and frameworks supported
Demo
SQL Server in the world of Open Source
Architecture
System Architecture
SQL Platform Abstraction Layer (SQLPAL)
RDBMS IS AS RS
Windows Linux
WindowsHost Ext.
Linux Host
Extension
SQL Platform Abstraction Layer(SQLPAL)
Win32-like APIs
Host Extension mapping to OS system calls
(IO, Memory, CPU scheduling)
SQL OS API
SQL OS v2
Everything else
System Resource & Latency
Sensitive Code Paths
Other new features SQL v.Next
Database engine enhancementsBuilt-in Intelligence – Adaptive Query Processing
• Generate estimates for challenging queries to improve performance
• Replicate memory grants for repeatable queries to avoid over or under allocating
• Adjust data join strategy for small or large tables to speed joins
Improved efficiency with Adaptive Query Processing
Query
Memory grant
Learn
Run query
After
1 0 1 0 10 1 0 1 01 0 1 0 10 0 1 0 10 1 0 1 01 0 1 0 10 0 1 0 10
1 0 1 0 10 1 0 1 01 0 1 0 10 0 11 0 1 0 10 1 0 1 01 0 1 0 10 0 11 0 1 0 10 1 0 1 01 0 1 0 10 0 1
1 01 01 01 0 1
1 01 01 01 0 1
1 01 01 01 01
1 01 01 01 011 0 1 0 1
0 1 0 1 01 0 1 0 10 0 1
Adaptive Query Processing
Greater throughput
Before
1 0 1 0 10 1 0 1 01 0 1 0 10 0 1 1 0
1 0 1 0 10 1 0 1 0
1 0 1 0 10 1 0 1 01 0 1 0 10 0 1 0 10 0
1 0 1 0 10 1 0 1 01 0 1 0 10 0 1 0 10 1 0 1 01 0
Database engine enhancementsBuilt-in Intelligence – Automatic Query Plan Tuning
• System continuously monitors query performance and quickly corrects any plan regressions• Supports detect-only and
detect+ correct modes of operation
• Validates the forcing decisions, monitors and adjusts as needed
• Built on top of Query Store• Uses Query Store Plan Forcing
Performance stability with Automatic Query Plan Tuning
CPU Consumption over time
Database engine enhancementsFirst-class support for Graph data
• Full CRUD support to create nodes and edges
• Query language extension provides multi-hop navigation using join-free pattern matching
• SQL engine integration enables querying across SQL tables and graph data
• Existing tools work out of the box with graph data
AdventureWorks
Statistics
Program manager
Andy Smith
Business analyst
Mary Jones
Bachelor of
Science, Finance
Degree earned
Position
Position
EmployerEmployer
Role in company
Role in company
Skill
SkillCoworker
Contoso
Former employer
Role in company
Professional networking app
Database engine enhancementsT-SQL Language Enhancements
• New aggregate function:STRING_AGG
• New String functions:CONCAT_WS, TRANSLATE, TRIM
• New DDL, by popular demandDROP…IF EXISTS (SQL 2016)CREATE OR ALTER
• New Japanese Collations
New T-SQL Functions bring both convenience and speed
STRING_AGG significantly outperforms the previous solutions
Other SQL vNext CTP 1.x FeaturesQuery Processing And Tuningdb compat level 140Generic Query Hinting ModelDatabase Tuning Advisor Improvementsdm_db_stats_histogramdm_exec_query_statistics_xml
In-Memory and ColumnstoreMany T-SQL restrictions liftedColumnstore online index rebuildLOB support for clustered columnstore index
SQL Server R ServicesMicrosoft ML PackageEasier Package Managementsqlrutils package for easier SQL integrationolapR package for SSAS
Storage Engine EnhancementsCluster-less Availability Groups supportIndirect checkpoint perf improvementssys.dm_os_host_info
Demo
SQL Server v.Next Features
SQL Server v.Next Timeline
3/2016Announce and private preview
11/2016Public Preview @ Connect()
Targeting CY2017GA
Monthly releases
CTP2 – production support for EAP
ISVs, service providers and hosters with customers in EAP will also be added to EAP so they can participate there.
•Direct access to engineering team via PM buddy / Yammer
•Visibility into roadmap•Provide feedback and input into design of new features
•Full production support from Microsoft Support via special support channel
•License amendment to allow running vNext in production prior to GA
•Release to release upgrade support
•Real world usage of SQL Server in production to verify quality, scale and performance
•Discover bugs•Discover issues preventing customer adoption in production
•Document customer evidence
•NDA•Sign license agreement amendment
•Complete pre-deployment questionnaire
•Meet with Microsoft Support
Customer Benefits Microsoft Goals Requirements
SQL Server Early Adoption Program
Developing new applications on LinuxChoose your pathDeploy your
applicationChoose your development environment
Upgrade to SQL Server v.Next
Easily upgrade to SQL Server v.Next GAUse simple backup and restore from Windows to Linux
Easily upgrade to SQL Server v.Next GAGo-live
SQL Server 2016 on Windows Deploy today and easily migrate to v.Next
SQL Server v.Next CTP Test your app today and go live close to GA with the Early Adoption Program
OR
macOS
Migrate to SQL Server v.NextGet free SQL Server licenses today when you migrate!*
Use migration tools and partners
Identify appsfor migration
Run SQL Server v.Next
Deploy to production
SQL Server Migration Assistant
Global partner ecosystem
Oracle
Sybase
DB2
AND OR
Easily upgrade to SQL Server v.Next GAUse simple backup and restore from Windows to Linux
Easily upgrade to SQL Server v.Next GA Go-live
SQL Server 2016 on Windows Deploy today and easily migrate to v.Next
SQL Server v.Next CTPTest your app today and go live close to GA with the Early Adoption Program
*Software Assurance subscription required. Some restrictions may apply. Limited time offer—free training and subsidized deployment services available until December 31, 2016. https://www.microsoft.com/en-us/sql-server/sql-license-migration
MySQL
Download the bitswww.sqlserveronlinux.com
Apply to join the SQL Early Adoption Programhttps://SQLServervNextEAP.azurewebsites.net
• SQL Server Linux Start Here• What’s New in SQL Server v.Next docs• SQL Server Blog• Slava Oks Blog• bobsql Blog
Resources
[email protected], github
@bobwardms, #bobsql
© 2016 Microsoft Corporation. All rights reserved.