Introduction to SQL Server Essential Concepts

Slides:



Advertisements
Similar presentations
SQL-BackTrack for Sybase
Advertisements

6 SQL Server Integration Same manageability, administration & development experience Integrated queries & transactions Integrated HA and backup/restore.
SQL Server 2005 Database Engine Sommarkollo Microsoft.
Manage & Configure SQL Database on the Cloud Haishi Bai Technical Evangelist Microsoft.
XVII Encontro – 29/11/2011. Virgílio Esteves ID&T – Research & Founder of NetPonto Coimbra C# / WPF / Silverlight / XNA / Azure.
SQL-Server 2012 Always On.
Sofia, Bulgaria | 9-10 October SQL Server 2005 High Availability for developers Vladimir Tchalkov Crossroad Ltd. Vladimir Tchalkov Crossroad Ltd.
Architecture Rajesh. Components of Database Engine.
Chokchai Junchey Microsoft Product Specialist Certified Technical Training Center.
The protection of the DB against intentional or unintentional threats using computer-based or non- computer-based controls. Database Security – Part 2.
SQL Server 2014: Overview Phil ssistalk.com.
IT 456 Seminar 5 Dr Jeffrey A Robinson. Overview of Course Week 1 – Introduction Week 2 – Installation of SQL and management Tools Week 3 - Creating and.
IN-MEMORY OLTP By Manohar Punna SQL Server Geeks – Regional Mentor, Hyderabad Blogger, Speaker.
SQL School is strongly committed to provide COMPLETE PRACTICAL REALTIME Trainings on SQL Server Technologies – Dev, SQL DBA, MSBI (SSIS, SSAS, SSRS) and.
System Center Data Protection Manager 2012 Boris Ulík | TSP | Microsoft Slovakia.
Introduction to Core Database Concepts Getting started with Databases and Structure Query Language (SQL)
Putting Your Head in the Cloud Working with SQL Azure David Postlethwaite 19/09/2015David Postlethwaite.
SQL Server as a Cloud Service April 15th 2016 Warner Chaves Data Platform MVP/SQL Server MCM.
Database Development with SQL Server Data Tools (SSDT) Björn Eriksen, Architect Evangelist DPE Microsoft
Introducing Hekaton The next step in SQL Server OLTP performance Mladen Prajdić
SQL Server Internals & Architecture Naomi Williams, SQL DBA LinkedIn
Memory-Optimized Tables Querying at the speed of light.
Calgary Oracle User Group
Start-SPPowerShell – Introduction to PowerShell for SharePoint Admins and Developers Paul BAker.
Microsoft Connect /23/ :39 PM
Managing a database environment in the cloud
Backups for Azure SQL Databases and SQL Server instances running on Azure Virtual Machines Session on backup to Azure feature (manual and managed) in SQL.
Use relational database as a service
SQL Server 2016 features by edition
SQL Server on Linux CTP 1.1 Florian
How to tune your applications before moving your database to Microsoft Azure SQL Database (MASD) OK, you've jumped into your Azure journey by creating.
Standard/Express edition
In-Memory Capabilities
Automated Restore Script Output for Ola Hallengren’s Maintenance Solution 1) Start SQL Services on Local 2) Connect to Azure AlwaysOn 3) Delete all maintenance.
On-premise database. Files in the cloud.
System Center Marketing
Disaster Recovery Where to Begin
Lead SQL BankofAmerica Blog: SQLHarry.com
Easily manage SQL everywhere from anywhere with SQL tools
Introduction to SQL Server 2017 on Linux
Planning an Effective Upgrade from SQL Server 2008
A Technical Overview of Microsoft® SQL Server™ 2005 High Availability Beta 2 Matthew Stephen IT Pro Evangelist (SQL Server)
Introduction Module 16 9/5/2018 9:26 PM
Installation and database instance essentials
Upgrading to SQL Server 2016
SQL Server in AWS on Linux
Azure and SQL Server: Getting the best out of the cloud
Working with Very Large Tables Like a Pro in SQL Server 2014
Tips for SQL Server Performance and Resiliency
What is the Azure SQL Datawarehouse?
What Azure have to offer for your data
Dave LIVE Linux AG Buildout!.
Migrating your SQL Server Instance
Back Up and Restore? Piece of Cake!
Data Security for Microsoft Azure
Twitter Movie Sentiment Using Python, SQL Server, Azure SQL DB, Azure ML, & Power BI Bradley Ball
Backup and Restore your SQL Server Database
12/25/2018 5:25 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Cross-Platform, Cloud and On-Premise Database Tool
Stretch Database - Historical data storage in SQL Server 2016
Secure/Encrypt SQL Server Database With TDE
Cross-Platform, Cloud and On-Premise Database Tool
High Availability/Disaster Recovery Solution
Our awesome sponsors! Please visit the sponsor area in the break and interact with them. They are the reason we can hold this conference free of charge!
PerformanceBridge Application Suite and Practice 2.0 IT Specifications
Managing and monitoring SQL Server on Linux from the command line
Michelle Haarhues Keeping up with SSMS.
Working with Very Large Tables Like a Pro in SQL Server 2017
06 | SQL Server and the Cloud
The DBA Quit and now you’re it:
Presentation transcript:

Introduction to SQL Server Essential Concepts Bradley Ball Sr. Azure Engineer, Microsoft Level: Intermediate

Speaker Introduction: Bradley Ball Currently Sr. Azure Engineer FastTrack CXP Microsoft Over 15 Years IT Experience, Former Microsoft MVP Previous experience DBA, for the U.S. Army, The Executive Office of the President, Sr. SQL DBA Staff Specialist at Publix, Data Platform Practice Manager for Pragmatic Works Pro SQL Server 2012 Practices Author Chapter 14 PAGE & ROW COMPRESSION! Managing Author on Pro Admin 2014 Guide

IT Experts Learn SQL Backwards

Learning Backwards: How SQL Works Database V Tables Views Clustered Indexes Non-Clustered Indexes

Why Learn the Internals

ACID Atomicity Consistency Isolation Durability

Transaction Isolation Levels Serializable Read Committed Read Uncommitted Repeatable Read Snapshot Isolation SQL Server Default SQL Database Default

Demo

SQL 2012 and below: Select Relational Engine SNI Buffer Pool USER Command Parser Optimizer Query Executor Buffer Pool Storage Engine Plan Cache Transaction Manager Access Methods Buffer Manager Data Cache DATA on Disk Discuss the SNI, Relational Engine, Storage Engine, and SQL OS DATA SQL OS

On The Inside: In-Memory OLTP Store SNI Relational Engine Classic Query Executor Command Parser In-Memory SP’s and Schema In-Memory Query Executor Query Executor Optimizer Buffer Pool Query Interop In-Memory Data Storage Engine Plan Cache Memory Optimized Tables and Indexes Transaction Manager Access Methods Buffer Mngr Data Cache DATA IN-Memory Data *Loaded on Start up DATA SQL OS

SQL OS Pre-emptive Scheduling Cooperative Pre-emptive Scheduling

Locks, Latches, Waits Locks (like a stop light) Row, Page, and Table Escalation Latches (like - who watches the locks/’watchmen’) Locks for Locks Waits Cooperative Scheduling Giving up our place in line willingly

Linux Oh Wait, You thought you just needed to understand Windows?

Software isolated process SQL 2017 – Linux Linux Process SQLPAL managed Software isolated process SQL Server SQLPAL Linux Host Extension Windows Calls (+1200) ABI Calls (50) Linux OS Linux OS Calls

Azure SQL Database SQL Database Elastic Pools SQL Managed Instance

What’s available on Linux? Operational features Support for RHEL, Ubuntu, SLES, Docker Package-based installs Support for OpenShift, Docker Swarm Failover clustering via Pacemaker Backup/Restore SSMS on Windows connected to Linux Command-line tools: sqlcmd, bcp Transparent Data Encryption Backup Encryption SCOM Management Pack Dynamic management views Table partitioning SQL Server Agent Full-Text Search Integration Services Active Directory integrated authentication TLS for encrypted connections SQL Server on Linux aims to support the core relational database engine capabilities. In general, our goal is “it’s just SQL Server.” 95% of features just work – anything app or coding related Some features have partial support – e.g. SQL Server Agent isn’t going to launch a windows command prompt Some features are in progress Some features we’ll never support – e.g. FileTable, where you have a win32 share to place files that show up in the engine – the next slide contains more details And while it’s the same SQL Server that you may (or may not!) be used to, we’re putting in a lot of effort to be a good Linux citizen. Callouts: Package-based installs – no “crappy installers” like predicted on Twitter; if SQL is coming to Linux, we’re going to do it right Failover Clustering – resilience against OS/SQL failures; automatic failover within seconds Log Shipping – warm standbys for DR Xplat CLI – sqlcmd lets you connect/query from any OS; bcp lets you bulk copy data; In-Memory – 30-100x performance increases by keeping tables in-memory and using natively compiled queries ColumnStore – why SQL Server is the leader in Gartner’s Magic Quadrant for Data Warehousing, holds the top 3 slots in performance benchmark Always Encrypted – protect your most sensitive data even from high-privileged database administrators AD authentication – no need to manage separate credentials for SQL Server on Linux (https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-active-directory-authentication)

What’s available on Linux? Programming features All major language driver compatibility In-Memory OLTP Columnstore indexes Query Store Compression Always Encrypted Row-Level Security, data masking Auditing Service Broker CLR JSON, XML Third-party tools SQL Server on Linux aims to support the core relational database engine capabilities. In general, our goal is “it’s just SQL Server.” 95% of features just work – anything app or coding related Some features have partial support – e.g. SQL Server Agent isn’t going to launch a windows command prompt Some features are in progress Some features we’ll never support – e.g. FileTable, where you have a win32 share to place files that show up in the engine – the next slide contains more details And while it’s the same SQL Server that you may (or may not!) be used to, we’re putting in a lot of effort to be a good Linux citizen. Callouts: Package-based installs – no “crappy installers” like predicted on Twitter; if SQL is coming to Linux, we’re going to do it right Failover Clustering – resilience against OS/SQL failures; automatic failover within seconds Log Shipping – warm standbys for DR Xplat CLI – sqlcmd lets you connect/query from any OS; bcp lets you bulk copy data; In-Memory – 30-100x performance increases by keeping tables in-memory and using natively compiled queries ColumnStore – why SQL Server is the leader in Gartner’s Magic Quadrant for Data Warehousing, holds the top 3 slots in performance benchmark Always Encrypted – protect your most sensitive data even from high-privileged database administrators

Features not currently supported on Linux Database Engine Transactional replication Merge replication Stretch DB PolyBase Distributed query with third-party connections System extended stored procedures (XP_CMDSHELL, etc.) Filetable CLR assemblies with the EXTERNAL_ACCESS or UNSAFE permission set Buffer Pool Extension SQL Server Agent Subsystems: CmdExec, PowerShell, Queue Reader, SSIS, SSAS, SSRS Alerts Log Reader Agent Change Data Capture Managed Backup Services SQL Server Browser SQL Server R Services StreamInsight Analysis Services Reporting Services Data Quality Services Master Data Services High Availability Database Mirroring Security Extensible Key Management NB: This slide is correct as at SQL Server 2017 RC2. The list of unsupported features might change in later releases. For more information, see: https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-release-notes.

SQL Server on Linux investment roadmap SQL Server Agent transaction replication ​ Machine Learning Services in R & Python PolyBase on Linux HA on Containers and Kubernetes AD authentication for linked servers and AGs Distributed Transactions (DTC)​ 3rd party AD tools like Centrify

What Did We Just Cover SQL Internal Components

IAM Chains and Allocation Units SQL Data Hierarchy IAM Chains and Allocation Units Allocation Bit Maps Extents Pages Records

What in the Shire Do Hobts Have to Do With My Data?! Allocation Units are made of 3 types IN_ROW_DATA Also known as HoBTs Stands for Heap or B-Trees LOB_DATA Also known as LOBs Stands for Large Object Data ROW_OVERFLOW_DATA Also known as SLOBs Small Large Object Data Partitions

Heaps vs. Tables

B-Tree

Demo

What Did We Just Cover Internal Storage Structures SQL Internal Components Internal Storage Structures

Recovery Models Terms HA – High Availability DR – Disaster Recovery On Premise Full Bulk Logged Simple Terms HA – High Availability DR – Disaster Recovery SLA – Service Level Agreement RTO – Recovery Time Objective RPO – Recovery Point Objective

Recovery Models In the Cloud Full Recovery with constant Transaction Log Backups Point in time recovery up to any time in backup retention Retention depends on DB activity Default capacity can be expanded, cost is Azure Storage Terms HA – High Availability DR – Disaster Recovery SLA – Service Level Agreement RTO – Recovery Time Objective RPO – Recovery Point Objective

Demo

What Did We Just Cover Internal Storage Structures Recovery Models SQL Internal Components Internal Storage Structures Recovery Models

Transaction Log http://www.flickr.com/photos/jo-ah-chim/2350979305/sizes/z/in/photostream/

Transaction Log In Action In Simple Recovery Virtual Log File Demo 03

Demo

Backups Full Transaction Log Differential FileGroup

Restores Full Differential Transaction Log Filegroup Piecemeal Page

Demo

What Did We Just Cover Internal Storage Structures Recovery Models SQL Internal Components Internal Storage Structures Recovery Models Backup Types

Don’t Beat Yourself Up Nobody Knows everything Nobody can know everything Do your best Never stop learning

Additional Terms Query data store Do your best Never stop learning