Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

SQL on linux


Published on

Presentación SQL on linux azure bootcamp buenos aires 2017

Published in: Technology
  • Be the first to comment

  • Be the first to like this

SQL on linux

  1. 1. SQL Server 2017 on Linux – Azure bootcamp 2017 Maxi Accotto (MVP Data Platform)
  2. 2. SQL Server on Linux Agenda • Why SQL Server on Linux? • Scope • Architecture • Demo! • Schedule • How to get involved
  3. 3. Businesses are embracing choice 1010 0101 0010 { } T-SQL Java C/C++ C#/VB.NET PHP Node.js Python Ruby Heterogenous environments Multiple data types Different development languages On-premises, cloud, and hybrid environments
  4. 4. 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
  5. 5. On the platform of your choice SQL Server v.Next Targeting CY2017 SQL Server v.Next GA* SQL Server v.Next Public Preview available now on Linux, Windows, and Docker.
  6. 6. • Buying a SQL Server license—per- server or per-core—grants the option to use it on Windows Server or Linux • Previews are free to download and use in a non-production capacity • Same set of editions on Linux: Developer, Express, Standard, Web, Enterprise LICENSE Licensing Same license, new choice
  7. 7. Stay ahead of the competition with the latest innovations Be 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
  8. 8. Scope
  9. 9. Windows Linux GA Developer, Express, Web, Standard, Enterprise   Database Engine   R Services, Integration Services, Analysis Services, Reporting Services, MDS, DQS  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)   Security Basic security (Basic auditing, Row-level security, Data masking, Always Encrypted)   Advanced security (Transparent Data Encryption)   Data warehousing PolyBase2  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)  Tools Windows 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 Corporate 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
  10. 10. Programming Features • Support for RHEL, Ubuntu, Docker • Package based installs, Docker image • Support for Open Shift, Docker Swarm • Failover Clustering through Pacemaker • Backup/Restore • SSMS on Windows connected to Linux • Command line tools: sqlcmd, bcp, sqlpackage • SQL Server Agent • Replication • Log Shipping • Transparent Data Encryption • SCOM Management Pack • DMVs • 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 • CLR • JSON, XML • Third party tools What’s working already? …and more!
  11. 11. Linux Containers Windows Windows Server • RedHat Enterprise Linux (RHEL) 7.3 • SUSE Enterprise Linux (SLES) v12 SP2 • Ubuntu 16.04 & 16.10 • Possibly other Linux distributions • Docker: Windows & Linux containers • Windows Server / Windows 10 • Package based installation Example: yum install mssql-server
  12. 12. SQL Control Access Database access SQL Authentication Active Directory Authentication Granular Permissions Application access Row-Level Security Dynamic Data Masking Monitor Access Tracking activities Fine-Grained Audit Protect Data Encryption at rest Transparent Data Encryption Backup Encryption Cell-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 Encryption Cell-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 *In progress
  13. 13. • Resilience against guest & OS level failures • Planned & unplanned events • Minimum downtime for patching and upgrades • Minutes RTO Simple HADR 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 HADR Failover Cluster • AG with 2 replicas Basic Availability Groups* • Warm standbys for DR Log 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
  14. 14. • 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
  15. 15. Architecture
  16. 16. SQL Platform Abstraction Layer (SQLPAL) RDBMS IS AS RS Windows Linux Windows Host 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
  17. 17. sudo zypper addrepo -fc sudo zypper --gpg-auto-import-keys refresh Paso 1: Download the Microsoft SQL Server SLES repository configuration file Paso 2: Install SQL Server sudo zypper install mssql-server Paso 3: Setup SQL Server sudo /opt/mssql/bin/mssql-conf setup Paso 4: Verificar estado systemctl status mssql-server
  18. 18. sudo zypper addrepo -fc sudo zypper --gpg-auto-import-keys refresh Paso 2: Add the Microsoft SQL Server repository to Zypper Paso 3: Install mssql-tools with the unixODBC developer package. sudo zypper install mssql-tools unixODBC-devel sudo zypper install mssql-server-agent sudo systemctl restart mssql-server Paso 1: Install mssql-server-agent
  19. 19. echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
  20. 20. sudo zypper install mssql-server-fts Paso 1: Install FTS
  21. 21. /opt/mssql/bin/mssql-conf mssql-conf sudo /opt/mssql/bin/mssql-conf set tcpport <new_tcp_port> sudo systemctl restart mssql-server sudo /opt/mssql/bin/mssql-conf traceflag 2345 3456 on sudo systemctl restart mssql-server
  22. 22. sudo /opt/mssql/bin/mssql-conf set-collation Latin1_General_CI_AS
  23. 23. Q&A