This document discusses AlwaysOn availability technologies in SQL Server 2017, including Failover Cluster Instances (FCI) and Availability Groups (AG). It provides an overview of how FCI and AG work to provide high availability and disaster recovery, including capabilities like multi-subnet support. The document also summarizes new features and enhancements to FCI and AG in SQL Server 2014, 2016 and 2017.
This document discusses SQL Server 2019 and provides the following information:
1. It introduces Javier Villegas, a technical speaker and SQL Server expert.
2. It outlines several new capabilities in SQL Server 2019 including artificial intelligence, container support, and big data analytics capabilities using Apache Spark.
3. It compares editions and capabilities of SQL Server on Windows and Linux and notes they are largely the same.
Azure Boot Camp 21.04.2018 SQL Server in Azure Iaas PaaS on-prem Lars PlatzdaschLars Platzdasch
This document provides an overview and comparison of SQL Server hosting options in Azure, including Azure SQL Database (PaaS) and SQL Server in Azure VMs (IaaS). It discusses the key differences between the two options, highlighting that Azure SQL Database is fully managed while SQL Server in VMs gives more control. It also covers topics like manageability, performance metrics, pricing tiers, security best practices, and demos of the Azure portal. The document aims to help audiences choose between the "red pill" of Azure SQL Database or the "blue pill" of SQL Server in Azure VMs.
MySQL configuration - The most important VariablesFromDual GmbH
This document discusses MySQL configuration parameters. It introduces the "Big 9" most important parameters to tune, which include the InnoDB buffer pool size and configuration, the MyISAM key buffer size, and the MySQL query cache size. It provides examples of status variables and metrics to monitor for these components, such as hit ratios and memory utilization. The goal is to help identify performance optimization opportunities through adjusting key configuration settings and analyzing monitoring data.
The document discusses SQL Server 2014's in-memory OLTP feature. It begins by explaining the need for an in-memory architecture due to hardware trends. It then covers how the in-memory tables store and access data via optimized structures and algorithms. Native compiled stored procedures are also discussed. The benefits are high performance for hot datasets that fit entirely in memory, while limitations include unsupported data types and inability to partially store tables.
This document discusses AlwaysOn availability technologies in SQL Server 2017, including Failover Cluster Instances (FCI) and Availability Groups (AG). It provides an overview of how FCI and AG work to provide high availability and disaster recovery, including capabilities like multi-subnet support. The document also summarizes new features and enhancements to FCI and AG in SQL Server 2014, 2016 and 2017.
This document discusses SQL Server 2019 and provides the following information:
1. It introduces Javier Villegas, a technical speaker and SQL Server expert.
2. It outlines several new capabilities in SQL Server 2019 including artificial intelligence, container support, and big data analytics capabilities using Apache Spark.
3. It compares editions and capabilities of SQL Server on Windows and Linux and notes they are largely the same.
Azure Boot Camp 21.04.2018 SQL Server in Azure Iaas PaaS on-prem Lars PlatzdaschLars Platzdasch
This document provides an overview and comparison of SQL Server hosting options in Azure, including Azure SQL Database (PaaS) and SQL Server in Azure VMs (IaaS). It discusses the key differences between the two options, highlighting that Azure SQL Database is fully managed while SQL Server in VMs gives more control. It also covers topics like manageability, performance metrics, pricing tiers, security best practices, and demos of the Azure portal. The document aims to help audiences choose between the "red pill" of Azure SQL Database or the "blue pill" of SQL Server in Azure VMs.
MySQL configuration - The most important VariablesFromDual GmbH
This document discusses MySQL configuration parameters. It introduces the "Big 9" most important parameters to tune, which include the InnoDB buffer pool size and configuration, the MyISAM key buffer size, and the MySQL query cache size. It provides examples of status variables and metrics to monitor for these components, such as hit ratios and memory utilization. The goal is to help identify performance optimization opportunities through adjusting key configuration settings and analyzing monitoring data.
The document discusses SQL Server 2014's in-memory OLTP feature. It begins by explaining the need for an in-memory architecture due to hardware trends. It then covers how the in-memory tables store and access data via optimized structures and algorithms. Native compiled stored procedures are also discussed. The benefits are high performance for hot datasets that fit entirely in memory, while limitations include unsupported data types and inability to partially store tables.
2015: Whats New in MySQL 5.7, At Oracle Open World, November 3rd, 2015 Geir Høydalsvik
MySQL 5.7 includes many new features and improvements such as faster performance, easier configuration and management, and enhanced security. It provides benefits like increased speed for queries, replication, and data compression as well as new capabilities for JSON data, spatial indexing, and instrumentation. Oracle presented benchmarks showing MySQL 5.7 is up to 6 times faster than previous versions.
This session shows an overview of the features and architecture of SQL Server on Linux and Containers. It covers install, config, performance, security, HADR, Docker containers, and tools. Find the demos on http://aka.ms/bobwardms
The document provides an overview and summary of new features in Microsoft SQL Server 2016. It discusses enhancements to the database engine, in-memory OLTP, columnstore indexes, R services, high availability, security, and Reporting Services. Key highlights include support for up to 2TB of durable memory-optimized tables, increased index key size limits, temporal data support, row-level security, and improved integration with Azure and Power BI capabilities. The presentation aims to help users understand and leverage the new and improved features in SQL Server 2016.
Narayan Newton presented on recent developments in MySQL. He discussed how MySQL has fragmented into several variants including MariaDB, PerconaDB, and Drizzle. He provided details on improvements in Oracle MySQL 5.5 and 5.6, Percona Server, and MariaDB including new features like virtual and dynamic columns. Newton also covered optimization improvements and clustering options like Percona Cluster, MySQL Cluster, and Drizzle.
Die Neuheiten in MariaDB 10.2 und MaxScale 2.1MariaDB plc
MariaDB Server 10.2 and MariaDB MaxScale 2.1 introduce several new features for analytics, JSON processing, replication, database compatibility, storage engines, security, administration, and performance. Key additions include window functions, common table expressions, JSON and GeoJSON functions, delayed replication, CHECK constraints, security enhancements, and optimizations to improve scalability, encryption, and query handling.
Modernizing Your Database with SQL Server 2019 discusses SQL Server 2019 features that can help modernize a database, including:
- The Hybrid Buffer Pool which supports persistent memory to improve performance on read-heavy workloads.
- Memory-Optimized TempDB Metadata which stores TempDB metadata in memory-optimized tables to avoid certain blocking issues.
- Intelligent Query Processing features like Adaptive Query Processing, Batch Mode processing on rowstores, and Scalar UDF Inlining which improve query performance.
- Approximate Count Distinct, a new function that provides an estimated count of distinct values in a column faster than a precise count.
- Lightweight profiling, enabled by default, which provides query plan
Brk3288 sql server v.next with support on linux, windows and containers was...Bob Ward
This document discusses Microsoft's plans to deliver SQL Server on Linux and other heterogeneous environments. Key points include:
- SQL Server will be available on Linux, Windows, and Docker containers, allowing choice of operating system. It will support multiple languages and tools.
- Microsoft is delivering more options in response to businesses adopting heterogeneous environments with various data types, languages, and platforms.
- The document outlines SQL Server's capabilities on Linux such as high availability, security, and tools/drivers available now or in development.
This document discusses scaling MySQL databases in Amazon Web Services. It provides an overview of using Amazon RDS versus managing MySQL databases on EC2 instances. While RDS offers ease of use, it has higher costs and less flexibility. The document recommends using EC2 for high performance or flexible setups, and automating database provisioning, backups, and failover. It also discusses sharding databases across multiple instances, using replication and multiple availability zones for resiliency, and tools for monitoring and operations visibility.
Microsoft released SQL Azure more than two years ago - that's enough time for testing (I hope!). So, are you ready to move your data to the Cloud? If you’re considering a business (i.e. a production environment) in the Cloud, you need to think about methods for backing up your data, a backup plan for your data and, eventually, restoring with Red Gate Cloud Services. In this session, you’ll see the differences, functionality, restrictions, and opportunities in SQL Azure and On-Premise SQL Server 2008/2008 R2/2012. We’ll consider topics such as how to be prepared for backup and restore, and which parts of a cloud environment are most important: keys, triggers, indexes, prices, security, service level agreements, etc.
Microsoft SQL Server Distributing Data with R2 BertucciMark Ginnebaugh
This presentation by Paul Bertucci describes an ordered method of determining what users need and which SQL Server data distribution solution is best to use.
There are many needs of data throughout an organization. Getting data to those who need it can be accomplished many different ways with SQL Server 2008 technologies.
This presentation covers data replication, database mirroring and snapshots, older methods such as log shipping and linked servers, and new methods such as using the sync framework.
You'll Learn
* Each of SQL Server’s main data distribution solutions
* How to determine which solution to use to solve different purposes
"Advanced MySQL 5 Tuning" by Michael Monty Widenius @ eLiberatica 2007eLiberatica
This is a presentation held at eLiberatica 2007.
http://www.eliberatica.ro/2007/
One of the biggest events of its kind in Eastern Europe, eLiberatica brings community leaders from around the world to discuss about the hottest topics in FLOSS movement, demonstrating the advantages of adopting, using and developing Open Source and Free Software solutions.
The eLiberatica organizational committee together with our speakers and guests, have graciously allowed media representatives and all attendees to photograph, videotape and otherwise record their sessions, on the condition that the photos, videos and recordings are licensed under the Creative Commons Share-Alike 3.0 License.
The document introduces Diagnostic Management Views (DMVs) and Dynamic Management Functions (DMFs) in SQL Server. It discusses that DMVs and DMFs return server state information and can be used to monitor server health, diagnose problems, and tune performance. It provides examples of common DMVs and DMFs used for query execution and the query plan cache. Finally, it notes that the presentation will demonstrate troubleshooting with DMVs and DMFs.
Introduction to MySQL, and its features with an explanation of the various processes that should be followed in order to have an efficient MySQL implementation.
SQL Server 2016 AlwaysOn Availability Groups New FeaturesJohn Martin
This deck was presented at SQL Relay 2015 in Bristol;
In this deck we will look at some of the new capabilities that are slated for release as part of the Microsoft SQL Server 2016 platform.
Demo code for this deck can be found at: http://1drv.ms/1PC8707
SQL Server 2017 will bring SQL Server to Linux for the first time. This presentation covers the scope, schedule, and architecture as well as a background on why Microsoft is making SQL Server available on Linux.
Virtual Study Beta Exam 71-663 Exchange 2010 Designing And Deploying Messagin...Tobias Koprowski
This is my presentation for VirtualStudy.pl as teh last part of preparation for 71-663 beta exam: 71-663: Pro: Designing and Deploying Messaging Solutions with Microsoft Exchange Server 2010
With the recent release of SQL Server 2016 SP1 providing a consistent programming surface area has generated quite a buzz in the SQL Server community. SQL Server 2016 SP1 allows businesses of all sizes to leverage full feature set such as In-Memory technologies on all editions of SQL Server to get enterprise grade performance. This presentation focuses on the new improvements, new limits on the lower editions, differentiating factors and key scenarios enabled by SQL Server 2016 SP1 which makes SQL Server 2016 SP1 an obvious choice for the customers. This session was delivered to PASS VC DBA fundamentals chapter for everyone to learn about these exciting new improvements announced with SQL Server 2016 SP1 to ensure they are leveraging them to maximize performance and throughput of your SQL Server environment.
The document discusses SQL Server migrations from Oracle databases. It highlights top reasons for customers migrating to SQL Server, including lower total cost of ownership, improved performance, and increased developer productivity. It also outlines concerns about migrations and introduces the SQL Server Migration Assistant (SSMA) tool, which automates components of database migrations to SQL Server.
2015: Whats New in MySQL 5.7, At Oracle Open World, November 3rd, 2015 Geir Høydalsvik
MySQL 5.7 includes many new features and improvements such as faster performance, easier configuration and management, and enhanced security. It provides benefits like increased speed for queries, replication, and data compression as well as new capabilities for JSON data, spatial indexing, and instrumentation. Oracle presented benchmarks showing MySQL 5.7 is up to 6 times faster than previous versions.
This session shows an overview of the features and architecture of SQL Server on Linux and Containers. It covers install, config, performance, security, HADR, Docker containers, and tools. Find the demos on http://aka.ms/bobwardms
The document provides an overview and summary of new features in Microsoft SQL Server 2016. It discusses enhancements to the database engine, in-memory OLTP, columnstore indexes, R services, high availability, security, and Reporting Services. Key highlights include support for up to 2TB of durable memory-optimized tables, increased index key size limits, temporal data support, row-level security, and improved integration with Azure and Power BI capabilities. The presentation aims to help users understand and leverage the new and improved features in SQL Server 2016.
Narayan Newton presented on recent developments in MySQL. He discussed how MySQL has fragmented into several variants including MariaDB, PerconaDB, and Drizzle. He provided details on improvements in Oracle MySQL 5.5 and 5.6, Percona Server, and MariaDB including new features like virtual and dynamic columns. Newton also covered optimization improvements and clustering options like Percona Cluster, MySQL Cluster, and Drizzle.
Die Neuheiten in MariaDB 10.2 und MaxScale 2.1MariaDB plc
MariaDB Server 10.2 and MariaDB MaxScale 2.1 introduce several new features for analytics, JSON processing, replication, database compatibility, storage engines, security, administration, and performance. Key additions include window functions, common table expressions, JSON and GeoJSON functions, delayed replication, CHECK constraints, security enhancements, and optimizations to improve scalability, encryption, and query handling.
Modernizing Your Database with SQL Server 2019 discusses SQL Server 2019 features that can help modernize a database, including:
- The Hybrid Buffer Pool which supports persistent memory to improve performance on read-heavy workloads.
- Memory-Optimized TempDB Metadata which stores TempDB metadata in memory-optimized tables to avoid certain blocking issues.
- Intelligent Query Processing features like Adaptive Query Processing, Batch Mode processing on rowstores, and Scalar UDF Inlining which improve query performance.
- Approximate Count Distinct, a new function that provides an estimated count of distinct values in a column faster than a precise count.
- Lightweight profiling, enabled by default, which provides query plan
Brk3288 sql server v.next with support on linux, windows and containers was...Bob Ward
This document discusses Microsoft's plans to deliver SQL Server on Linux and other heterogeneous environments. Key points include:
- SQL Server will be available on Linux, Windows, and Docker containers, allowing choice of operating system. It will support multiple languages and tools.
- Microsoft is delivering more options in response to businesses adopting heterogeneous environments with various data types, languages, and platforms.
- The document outlines SQL Server's capabilities on Linux such as high availability, security, and tools/drivers available now or in development.
This document discusses scaling MySQL databases in Amazon Web Services. It provides an overview of using Amazon RDS versus managing MySQL databases on EC2 instances. While RDS offers ease of use, it has higher costs and less flexibility. The document recommends using EC2 for high performance or flexible setups, and automating database provisioning, backups, and failover. It also discusses sharding databases across multiple instances, using replication and multiple availability zones for resiliency, and tools for monitoring and operations visibility.
Microsoft released SQL Azure more than two years ago - that's enough time for testing (I hope!). So, are you ready to move your data to the Cloud? If you’re considering a business (i.e. a production environment) in the Cloud, you need to think about methods for backing up your data, a backup plan for your data and, eventually, restoring with Red Gate Cloud Services. In this session, you’ll see the differences, functionality, restrictions, and opportunities in SQL Azure and On-Premise SQL Server 2008/2008 R2/2012. We’ll consider topics such as how to be prepared for backup and restore, and which parts of a cloud environment are most important: keys, triggers, indexes, prices, security, service level agreements, etc.
Microsoft SQL Server Distributing Data with R2 BertucciMark Ginnebaugh
This presentation by Paul Bertucci describes an ordered method of determining what users need and which SQL Server data distribution solution is best to use.
There are many needs of data throughout an organization. Getting data to those who need it can be accomplished many different ways with SQL Server 2008 technologies.
This presentation covers data replication, database mirroring and snapshots, older methods such as log shipping and linked servers, and new methods such as using the sync framework.
You'll Learn
* Each of SQL Server’s main data distribution solutions
* How to determine which solution to use to solve different purposes
"Advanced MySQL 5 Tuning" by Michael Monty Widenius @ eLiberatica 2007eLiberatica
This is a presentation held at eLiberatica 2007.
http://www.eliberatica.ro/2007/
One of the biggest events of its kind in Eastern Europe, eLiberatica brings community leaders from around the world to discuss about the hottest topics in FLOSS movement, demonstrating the advantages of adopting, using and developing Open Source and Free Software solutions.
The eLiberatica organizational committee together with our speakers and guests, have graciously allowed media representatives and all attendees to photograph, videotape and otherwise record their sessions, on the condition that the photos, videos and recordings are licensed under the Creative Commons Share-Alike 3.0 License.
The document introduces Diagnostic Management Views (DMVs) and Dynamic Management Functions (DMFs) in SQL Server. It discusses that DMVs and DMFs return server state information and can be used to monitor server health, diagnose problems, and tune performance. It provides examples of common DMVs and DMFs used for query execution and the query plan cache. Finally, it notes that the presentation will demonstrate troubleshooting with DMVs and DMFs.
Introduction to MySQL, and its features with an explanation of the various processes that should be followed in order to have an efficient MySQL implementation.
SQL Server 2016 AlwaysOn Availability Groups New FeaturesJohn Martin
This deck was presented at SQL Relay 2015 in Bristol;
In this deck we will look at some of the new capabilities that are slated for release as part of the Microsoft SQL Server 2016 platform.
Demo code for this deck can be found at: http://1drv.ms/1PC8707
SQL Server 2017 will bring SQL Server to Linux for the first time. This presentation covers the scope, schedule, and architecture as well as a background on why Microsoft is making SQL Server available on Linux.
Virtual Study Beta Exam 71-663 Exchange 2010 Designing And Deploying Messagin...Tobias Koprowski
This is my presentation for VirtualStudy.pl as teh last part of preparation for 71-663 beta exam: 71-663: Pro: Designing and Deploying Messaging Solutions with Microsoft Exchange Server 2010
With the recent release of SQL Server 2016 SP1 providing a consistent programming surface area has generated quite a buzz in the SQL Server community. SQL Server 2016 SP1 allows businesses of all sizes to leverage full feature set such as In-Memory technologies on all editions of SQL Server to get enterprise grade performance. This presentation focuses on the new improvements, new limits on the lower editions, differentiating factors and key scenarios enabled by SQL Server 2016 SP1 which makes SQL Server 2016 SP1 an obvious choice for the customers. This session was delivered to PASS VC DBA fundamentals chapter for everyone to learn about these exciting new improvements announced with SQL Server 2016 SP1 to ensure they are leveraging them to maximize performance and throughput of your SQL Server environment.
The document discusses SQL Server migrations from Oracle databases. It highlights top reasons for customers migrating to SQL Server, including lower total cost of ownership, improved performance, and increased developer productivity. It also outlines concerns about migrations and introduces the SQL Server Migration Assistant (SSMA) tool, which automates components of database migrations to SQL Server.
This document summarizes a presentation about modernizing SQL Server databases. It discusses:
1. Why organizations may want to modernize their databases, such as to reduce costs, maintain compliance, or keep vendor support.
2. The concept of database compatibility level, which sets database behaviors to be compatible with a specified SQL Server version. Certifying databases based on compatibility level rather than specific SQL Server versions simplifies certification.
3. Tools that can help with the modernization process, including the Database Migration Assistant for assessment and migration, the Database Experimentation Assistant for testing, and the Query Tuning Assistant for addressing query regressions.
4. The recommended process of using these tools is to discover the current
This document provides information about Satya Jayanty, an expert on SQL Server platform upgrades. It includes details about his experience, publications, speaking engagements, and community contributions related to SQL Server. The document also outlines some of the key topics he will cover in his presentation on SQL Server platform upgrades, including upgrade strategies, tools, best practices, and lessons learned from real-world upgrade scenarios.
Attunity Efficient ODR For Sql Server Using Attunity CDC Suite For SSIS Slide...Melissa Kolodziej
This slidedeck focuses on how to leverage your SQL Server skills & software to reduce cost & accelerate SQL Server data replication, synchronization, & real-time integration while enabling operational reporting, business intelligence & data warehousing projects. It also highlights CDC concepts & benefits and how CDC can assist you with data replication projects. Screenshots are included to demonstrate Attunity\'s CDC Suite for SSIS.
Vijaya Lakshmi P has over 3 years of experience as a SQL Server Database Administrator. She has expertise in installing, configuring, managing, monitoring and troubleshooting various versions of Microsoft SQL Server. Some of her responsibilities include database backups, high availability implementations such as database mirroring and log shipping, and addressing issues like locking, blocking and deadlocks. She is currently working as a Software Engineer at Honeywell, Bangalore where she administers the SQL servers for their AEROCMS project.
SQL Server 2008/2008 R2 están fuera de soporte. Pronto pasará lo mismo con Windows Server 2008/2008 R2. Una ruta de solución es migrar a la nube. Te explicamos como en esta presentación
Introduction to microsoft sql server 2008 r2Eduardo Castro
In this presentation we review the new features in SQL 2008 R2.
Regards,
Ing. Eduardo Castro Martinez, PhD
http://comunidadwindows.org
http://ecastrom.blogspot.com
Upgrading to Oracle SOA 12.1 & 12.2 - Practical Steps and Project ExperiencesBruno Alves
The document discusses strategies for upgrading an Oracle SOA Suite from 11g to 12c. It recommends either an in-place upgrade or side-by-side upgrade approach. The in-place upgrade involves updating the existing 11g environment to 12c, while the side-by-side approach sets up a new 12c environment and migrates composites. Lessons from customer upgrade projects include performing a side-by-side upgrade to avoid issues with rollbacks, carefully testing the upgrade, and addressing changes in areas like deployment and tuning between the versions.
The document discusses upgrading Oracle SOA and BPM from version 11g to 12c. It outlines the key upgrade strategies of doing an in-place upgrade versus a side-by-side upgrade. It also discusses whether to upgrade to 12cR1 or 12cR2. Lessons learned from customer upgrade cases emphasize carefully following prerequisites, testing strategies, and considering a side-by-side approach over an in-place upgrade.
SQL Server 2016 is now in review! The newest version promises to deliver new real-time, built-in advanced analytics, advanced security technology, hybrid cloud scenarios as well as amazing rich visualizations on mobile devices.
There are many great reasons to move to SQL 2016, however if you are still working on SQL Server 2005 you may have another good motivator - the end-of-life clock of SQL 2005 is ticking down and support is about to end April 12, 2016.
In this deck we review the significant licensing changes introduced with SQL 2012. If our experience as Microsoft's Gold Certified Member has taught us anything - it is one thing. During migrations many of our clients get outright lost when trying to figure out the number of licenses they have or need. This often leads to under-deployment, and subsequently serious compliance issues with Microsoft. And yes, in some cases over-deployment means big savings back to your department.
Satya SK Jayanty is an experienced data architect and SQL Server expert based in Edinburgh, UK. He offers consulting services related to database development, administration, and performance tuning. He has over 18 years of experience working with SQL Server and providing software architecture and data platform solutions. Some of his past clients include DunnHumby, Cashfac Solutions, Sucden Financials, Firstplus, Flagstone Reinsurance, British Telecom, and The Royal Bank of Scotland Group.
This document provides an overview of SQL Server DBA training topics including:
- Installing and configuring SQL Server, choosing the appropriate edition, and installing service packs
- Security concepts including logins and users
- Administrative tasks such as backups, restores, monitoring, and high availability that DBAs are responsible for
This document provides an overview of SQL Server DBA training topics including:
- Installing and configuring SQL Server, including choosing an edition, installation process, and configuring services
- Security topics such as logins and users
- Additional administrative tasks like managing database files, backups, restores, monitoring, maintenance plans, and high availability options
- Appendices with differences between SQL and Oracle and an installation guide with screenshots
sql server dba with 9+ years of exp and hands on Postgresqlsunil thumma
Sunil Kumar Thumma has over 9 years of experience as a database administrator. He has expertise in SQL Server database administration, installation, configuration, backup, recovery and performance tuning. He is proficient in SQL Server 2000, 2005, 2008 and 2012. He has worked on large production databases for clients such as Ericsson, BMC Software and Tata Consultancy Services. Currently, he works as an IT Analyst at Tata Consultancy Services in Pune, India.
Hp Polyserve Database Utility For Sql Server ConsolidationCB UTBlog
The document discusses how the Database Utility for SQL Server can help identify consolidation opportunities for SQL Server environments running on 20 or more servers. It presents the value proposition of using the utility to run more SQL instances on fewer servers with higher availability and storage utilization while reducing costs. The document outlines the sales cycle process, from identifying opportunities and doing a proof of concept to closing the sale. It provides examples of cost savings and performance gains customers have achieved by consolidating SQL Server workloads with the Database Utility.
The Evolution of SQL Server as a Service - SQL Azure Managed InstanceJavier Villegas
Managed Instance provides a fully managed SQL Server database hosted on Azure PaaS that allows existing SQL Server applications to be migrated to the cloud with minimal changes. It provides near 100% compatibility with on-premises SQL Server along with the management and scalability benefits of PaaS. Key capabilities include built-in high availability, automated backups, isolation within a VNet, and the ability to migrate databases with minimal downtime.
Sankar Prasad Sahu is a senior MS SQL DBA with over 10 years of experience in database administration using SQL Server. He has expertise in installation, configuration, backup/recovery, performance tuning, and troubleshooting of MS SQL servers. Currently he works as an MS SQL DBA for General Growth Properties in Hyderabad, India, providing 24/7 production support for 164 MS SQL database servers.
Multitenancy con SQL Server e Azure SQL DatabaseGianluca Hotz
In questa sessione faremo il punto sulle soluzioni disponibili per venire incontro agli scenari di implementazione multitenancy con SQL Server e Azure SQL Database.
Microsoft SQL Server PaaS (Platform as a Service)Gianluca Hotz
SQL Server in modalità gestita (Platform as a Service) offre un servizio di database relazionale con una copertura funzionale praticamente identica a quella del Database Engine di un SQL Server tradizionale con una riduzione dei costi di implementazione e manutenzione e, in alcuni casi, il beneficio di nuove funzionalità tipicamente introdotte in anticipo rispetto alle versioni On-Premises. In questa sessione faremo una panoramica sullo stato dell'arte delle offerte Micorsoft, con Azure SQL Database, in tutte le sue declinazioni, con particolare attenzione alle Managed Instance, e di quella Amazon con RDS for SQL Server.
SQL Server 2022 Programmability & PerformanceGianluca Hotz
SQL Server 2022 has introduced many new features across all areas of the product. In this session, we will focus on the news regarding programmability and performance improvements.
SQL Server 2022 includes several new features to improve performance, security, and availability. Some key enhancements include buffer pool parallel scans to improve scalability on large memory machines, "hands-free" temporary database improvements to reduce latch contention, and query store hints to shape query plans without code changes. The document provides links to documentation on using new features like resumable add table constraints, XML compression, and hybrid buffer pool direct writes.
Data Integrity with SQL Database LedgerGianluca Hotz
Gianluca Hotz presented on SQL Database Ledger, which enables data integrity in SQL databases through cryptography. SQL Database Ledger captures database state changes in blockchain-inspired data structures called ledgers to provide a tamper-evident record. It makes SQL database data tamper-evident through cryptography while providing the same SQL users already know across Azure and on-premises. SQL Database Ledger offers both append-only and updatable ledger tables to suit different use cases.
Best Practices for Running Microsoft SQL Server on AWSGianluca Hotz
The document discusses best practices for running Microsoft SQL Server on AWS. It provides an overview of options for deploying SQL Server on AWS, including using Amazon RDS or Amazon EC2. When using RDS, AWS manages the SQL Server instance and provides features like automated backups and read replicas. When using EC2, the user has more control but must manage SQL Server, backups, and high availability. The document discusses considerations and techniques for optimizing SQL Server performance on EC2, including storage options and configuration.
Come utilizzare AWS Database Migration Service per migrare SQL Server ad Amaz...Gianluca Hotz
In questo appuntamento affronteremo l'argomento migrazione SQL Server su cloud e come AWS Database Migration Service (DMS) può aiutarci. Per scoprire diversi modi per migrare un database SQL Server su AWS cloud. Per imparare come usare DMS per migrare un database SQL Server su AWS cloud- Per scoprire i vantaggi dell'utilizzo di DMS.
Sempre più aziende guardano con interesse a registri distribuiti e tecnologie Blockchain per non dover dipendere da entità centralizzate di controllo e verifica. Tuttavia, il settore è ancora in continua evoluzione e l’adozione di questo tipo di approccio potrebbe essere eccessivo per molti sistemi che sono ancora per loro natura centralizzati, e la cui riscrittura risulterebbe in investimenti importanti. In questa sessione vedremo una tecnologia antimanomissione dei dati introdotta recentemente in Azure SQL Database.
Youtube: https://www.youtube.com/watch?v=jh3CJ1ns0JQ
Il Query Processor è uno dei componenti più sofisticati di un RDBMS, quello di SQL Server non fa eccezione e sono state introdotte molte novità per risolvere le Query in modo più efficiente. In questa sessione affronteremo l'argomento ripercorrendo le varie funzionalità a partire dal nuovo modello del "Cardinality Estimator", introdotto nella versione 2014, per arrivare a tutto ciò che ricade sotto il nome di "Intelligent Query Processor" tra cui le funzionalità di "Adaptive Query Processing", introdotte nella versione 2017, e le novità introdotte nella versione 2019. Il tutto senza dimenticare le funzionalità per aiutare a gestire eventuali problematiche di regressione e coadiuvato da dimostrazioni pratiche.
Youtube: https://www.youtube.com/watch?v=3hpPpK-qUM0
In questa sessione vedremo una panoramica delle soluzioni SQL Server IaaS e PaaS disponibili in AWS e come affrontare al meglio una migrazione verso tali ambienti.
SQL Server Failover Cluster Instances con Azure Managed DisksGianluca Hotz
Youtube: https://www.youtube.com/watch?v=dgyXkN3FVb4
Come implementare un cluster di SQL Server AlwaysOn Failover Cluster Instances (FCI) con Azure Managed Disks.
SQL Server Failover Cluster Instances con Amazon FSx in AWSGianluca Hotz
Implementare un cluster di SQL Server in modalità AlwaysOn Failover Cluster Instances (FCI) con Amazon Web Services (AWS). In particolare, utilizzando il servizio Amazon EC2 per l’esecuzione delle istanze SQL Server, e il servizio Amazon FSx for Windows File Server per gestire lo storage condiviso, ed implementare una architettura distribuita multi-AZ.
SQL Server Data Virtualization with polybaseGianluca Hotz
Demos: https://github.com/ghotz/Presentations/tree/master/SQL%20Start%202020/Demos
Event site: https://www.sqlstart.it/2020
Vimeo: https://vimeo.com/ugiss/polybase
Polybase è la tecnologia introdotta con SQL Server 2016 per eseguire query distribuite in ambienti eterogenei. Inizialmente con un supporto di sistemi esterni limitato, in SQL Server 2019 è stato esteso per supportare non solo Hadoop e SQL Server in tutte le declinazioni, tra cui Azure SQL Data Warehouse, ma anche Teradata, Oracle, MongoDB e sistemi generici accessibili via ODBC. In questa sessione vedremo come funziona il meccanismo di integrazione dal punto di vista tecnico con qualche esempio pratico.
Open Source Contributions to Postgres: The Basics POSETTE 2024ElizabethGarrettChri
Postgres is the most advanced open-source database in the world and it's supported by a community, not a single company. So how does this work? How does code actually get into Postgres? I recently had a patch submitted and committed and I want to share what I learned in that process. I’ll give you an overview of Postgres versions and how the underlying project codebase functions. I’ll also show you the process for submitting a patch and getting that tested and committed.
ViewShift: Hassle-free Dynamic Policy Enforcement for Every Data LakeWalaa Eldin Moustafa
Dynamic policy enforcement is becoming an increasingly important topic in today’s world where data privacy and compliance is a top priority for companies, individuals, and regulators alike. In these slides, we discuss how LinkedIn implements a powerful dynamic policy enforcement engine, called ViewShift, and integrates it within its data lake. We show the query engine architecture and how catalog implementations can automatically route table resolutions to compliance-enforcing SQL views. Such views have a set of very interesting properties: (1) They are auto-generated from declarative data annotations. (2) They respect user-level consent and preferences (3) They are context-aware, encoding a different set of transformations for different use cases (4) They are portable; while the SQL logic is only implemented in one SQL dialect, it is accessible in all engines.
#SQL #Views #Privacy #Compliance #DataLake
Codeless Generative AI Pipelines
(GenAI with Milvus)
https://ml.dssconf.pl/user.html#!/lecture/DSSML24-041a/rate
Discover the potential of real-time streaming in the context of GenAI as we delve into the intricacies of Apache NiFi and its capabilities. Learn how this tool can significantly simplify the data engineering workflow for GenAI applications, allowing you to focus on the creative aspects rather than the technical complexities. I will guide you through practical examples and use cases, showing the impact of automation on prompt building. From data ingestion to transformation and delivery, witness how Apache NiFi streamlines the entire pipeline, ensuring a smooth and hassle-free experience.
Timothy Spann
https://www.youtube.com/@FLaNK-Stack
https://medium.com/@tspann
https://www.datainmotion.dev/
milvus, unstructured data, vector database, zilliz, cloud, vectors, python, deep learning, generative ai, genai, nifi, kafka, flink, streaming, iot, edge
Learn SQL from basic queries to Advance queriesmanishkhaire30
Dive into the world of data analysis with our comprehensive guide on mastering SQL! This presentation offers a practical approach to learning SQL, focusing on real-world applications and hands-on practice. Whether you're a beginner or looking to sharpen your skills, this guide provides the tools you need to extract, analyze, and interpret data effectively.
Key Highlights:
Foundations of SQL: Understand the basics of SQL, including data retrieval, filtering, and aggregation.
Advanced Queries: Learn to craft complex queries to uncover deep insights from your data.
Data Trends and Patterns: Discover how to identify and interpret trends and patterns in your datasets.
Practical Examples: Follow step-by-step examples to apply SQL techniques in real-world scenarios.
Actionable Insights: Gain the skills to derive actionable insights that drive informed decision-making.
Join us on this journey to enhance your data analysis capabilities and unlock the full potential of SQL. Perfect for data enthusiasts, analysts, and anyone eager to harness the power of data!
#DataAnalysis #SQL #LearningSQL #DataInsights #DataScience #Analytics
The Building Blocks of QuestDB, a Time Series Databasejavier ramirez
Talk Delivered at Valencia Codes Meetup 2024-06.
Traditionally, databases have treated timestamps just as another data type. However, when performing real-time analytics, timestamps should be first class citizens and we need rich time semantics to get the most out of our data. We also need to deal with ever growing datasets while keeping performant, which is as fun as it sounds.
It is no wonder time-series databases are now more popular than ever before. Join me in this session to learn about the internal architecture and building blocks of QuestDB, an open source time-series database designed for speed. We will also review a history of some of the changes we have gone over the past two years to deal with late and unordered data, non-blocking writes, read-replicas, or faster batch ingestion.
The Ipsos - AI - Monitor 2024 Report.pdfSocial Samosa
According to Ipsos AI Monitor's 2024 report, 65% Indians said that products and services using AI have profoundly changed their daily life in the past 3-5 years.
4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...Social Samosa
The Modern Marketing Reckoner (MMR) is a comprehensive resource packed with POVs from 60+ industry leaders on how AI is transforming the 4 key pillars of marketing – product, place, price and promotions.
2. #SQLSAT895
Who am I?
Gianluca Hotz | @glhotz | ghotz@ugiss.org
Independent consultant
20+ years on SQL Server (from 4.21 in 1996)
Database modeling and development, sizing and administration,
upgrade and migration, performance tuning
Community
20+ years Microsoft MVP SQL Server/Data Platform (since 1998)
VMware Experts SQL Server
Founder and president UGISS (PASS Chapter)
Co-organizer DAMAG Meetup community
6. #SQLSAT895
Modernization?
Low Complexity
Version upgrades (e.g. 2008 R2 -> 2017)
Edition upgrades/downgrades (e.g. Standard -> Enterprise)
Medium Complexity
Virtualization
Consolidation
Adding HA/DR
High Complexity
Re-Platforming e.g. Oracle -> SQL Server or Azure SQL Database
Re-Architecting e.g. SQL Server -> Azure SQL Datawarehouse/Data Lake
7. #SQLSAT895
SQL Server flavors
On-Premises
SQL Server (Database Engine, SSAS, SSRS, SSIS, DQS, MDS, MLS)
Analytics Platform System (APS was SQL Server PDW)
IaaS
SQL Server (Database Engine, SSAS, SSRS, SSIS, DQS, MDS, MLS)
VMs, Containers/Kubernetes
PaaS
Azure SQL Database
Azure Synapse Analytics (was Azure SQL Data Warehouse)
Amazon RDS for SQL Server
8. #SQLSAT895
Azure PaaS Operational Data Services
SQL-based
• Azure SQL Database
• Traditional
• Managed Instance
• Azure Database for PostgreSQL
• Azure Database for MySQL
• Azure Database for MariaDB
NoSQL-based
• Azure Cosmos DB
• Redis Cache
My
9. #SQLSAT895
Azure Modern Datawarehouse
Ingestion
• Azure Event Hubs
• Azure Data Factory
Storage
• Azure Blob Storage
• Azure Data Lake Storage
Preparation
• Azure Databricks
• Azure Data Lake Analytics
• Azure HDInsight
Model/serve
• Azure Synapse Analytics (was Azure SQL Datawarehouse)
• Azure Analysis Services
• Power BI
10. #SQLSAT895
SQL Server 2019
Big Data Clusters
Compute pool
SQL Compute
Node
SQL Compute
Node
SQL Compute
Node
…
Compute pool
SQL Compute
Node
IoT data
Directly
read from
HDFS
Persistent storage
…
Storage pool
SQL
Serve
r
Spark
HDFS Data Node
SQL
Serve
r
Spark
HDFS Data Node
SQL
Serve
r
Spark
HDFS Data Node
Kubernetes
pod
Analytics
Custom
apps BI
SQL Server
master instance
Node Node Node Node Node Node Node
SQL
Data mart
SQL Data
Node
SQL Data
Node
Compute pool
SQL Compute
Node
Storage Storage
https://docs.microsoft.com/en-us/sql/big-data-cluster/big-data-cluster-overview
11. #SQLSAT895
Changing platform
Can be easy
Migrating databases to PaaS or containerized versions (but same RDBMS)
or…
Hard: converting databases to other RDBMSs
data must be physically migrated (different types, different representations,…)
database code must be converted (constraints, triggers, functions, procedures,…)
Application code can be
converted completely, to a new platform
just adapted to run against the new RDBMS
adapted to support multiple RDBMSs
12. #SQLSAT895
Different kind of projects
Migration
one time conversion
solution switch-over at a certain point
Porting
side-by-side conversion & evolution
no switch-over, current solutions remain
13. #SQLSAT895
Migration Projects
Usually done by final customers (i.e. not ISVs)
Driving factors
cost reduction
move away from vendor(s)
solution obsolescence
unreliability and/or supportability problems
Application
may be converted to a new platform
may be adapted to run with new RDBMS
14. #SQLSAT895
Porting Projects
Usually done by ISVs
Driving factors
get into new markets
cost reduction for customers (TCO)
more choice for customers
become less dependent from vendor(s)
Application
may be ported to new platform
happens rarely, means re-write or 2 codebases
may be adapted to run with new RDBMS
15. #SQLSAT895
Different kind of Databases to migrate/port
Simple schema
all the logic is inside the application
simple access methods (mostly by cursors)
very limited use of SQL dialects
database is used mostly for storage
Complex schema
much of the logic is inside the database
heavy usage of SQL dialects
database used as a rule and inference engine
16. #SQLSAT895
Origin of problems
Sometimes porting issues arise from
misusage of functionalities
bad decoupling of application/database code
too much row oriented code in the database
low technical skills of coders/architects
Never judge
every application has it own story
a lot of decisions may be compromises
a lot of money was probably already invested
17. #SQLSAT895
Application portability
Code in the RDBMS
has been a best practice for years
still a very good solution for both
integrity
scalability
however… portability is an issue!
different SQL dialects
different type systems
different engine features
18. #SQLSAT895
Changing Architecture
Can be much more harder!
More complex
Low familiarity with non RBMS technologies
Low familiarity with unstructured dta
New implementation patterns
ML & AI will stop to be buzzwords…
19. #SQLSAT895
Edition upgrades/downgrades
Upgrades
Motivations similar to version upgrades
Barriers similar to version upgrades
Complexity usually lower because setup covers the scenario
Downgrades
Main motivation to save money
Barriers similar to version upgrades
Needs reinstallation, less impact for non production environment
21. #SQLSAT895
Current support level End mainstream End extended
SQL Server 2014 Currently supporting all versions July 9, 2019 July 9, 2024
SQL Server 2012
SQL Server 2012 SP2+ is in extended support
which includes security updates, paid support,
and requires purchasing non-security hotfix
support
July 11, 2017 July 12, 2022
SQL Server 2008 and SQL
Server 2008 R2
SQL Server 2008 and 2008 R2 are in extended
support which includes security updates, paid
support, and requires purchasing non-security
hotfix support
July 8, 2014 July 9, 2019
SQL Server 2005 SQL Server 2005 support ended on April 12, 2016 April 12, 2011 April 12, 2016
Learn more about the SQL Server support lifecycle: support.microsoft.com/lifecycle/
SQL Server 2008 and 2008 R2 will no longer be supported starting on July 9, 2019.
When will end of support happen?
22. #SQLSAT895
Extended Security Updates
Applies to
SQL Server 2008 and 2008 R2 Enterprise and Standard editions
Windows Server 2008 and 2008 R2 Datacenter and Standard editions
On-Premise
Must have active SA (or equivalent e.g. EAS, SCE, EES)
Price approximately 75% of latest version license cost
Azure
3 years for free
More info at https://www.microsoft.com/2008-eos
24. #SQLSAT895
SQL Server 2019 Standard Edition
Transparent Data Encryption!
Intelligent Query Processing
Accelerated Database Recovery
Many others
https://techcommunity.microsoft.com/t5/SQL-Server/SQL-
Server-2019-Standard-Edition/ba-p/986121
https://docs.microsoft.com/sql/sql-server/editions-and-
components-of-sql-server-version-15
25. #SQLSAT895
IQP: Scalar UDF in-lining example
Query without UDF Query with UDF (no in-lining) Query with UDF (in-lining)
Execution time 1.6 seconds 29 minutes 11 seconds 1.6 seconds
CREATE FUNCTION dbo.discount_price(@price DECIMAL(12,2), @discount DECIMAL(12,2))
RETURNS DECIMAL (12,2) AS BEGIN RETURN @price * (1 - @discount); END
SELECT L_SHIPDATE, O_SHIPPRIORITY
, SUM(dbo.discount_price(L_EXTENDEDPRICE, L_DISCOUNT))
FROM LINEITEM, ORDERS
WHERE O_ORDERKEY = L_ORDERKEY
GROUP BY L_SHIPDATE, O_SHIPPRIORITY
ORDER BY L_SHIPDATE
10GB CCI compressed TPC-H Schema, 2 x CPUs (12 cores), 96GB RAM, SSD storage
26. #SQLSAT895
SQL Server 2019 Failover Server Benefit
New Software Assurance
Enterprise/Standard Core/Server+CAL
Not enough?
Allowed on passive
Database consistency checks
Log backups
Full backups
Monitoring resource usage data
More
https://cloudblogs.microsoft.com/sqlserver/2
019/10/30/new-high-availability-and-
disaster-recovery-benefits-for-sql-server
27. #SQLSAT895
Version Upgrades: barriers
Licensing Costs
Regressions risk
Application changes costs
Complexity
Testing changes (application or certification processes)
Planning for low downtime
Lack of time/resources/competencies
29. #SQLSAT895
Hardest problems
Factors that require application changes
Breaking changes
Discontinued functionalities
Plan affecting changes may cause performance regressions
New Cardinality Estimator
Hotfixes
New QP strategies/behavior (e.g. Intelligent Query Processing)
Testing changes is hard!
Complete Workload coverage
Concurrent access
30. #SQLSAT895
Database Compatibility Level
Sets behavior compatible with
specified version of SQL Server
Version Native Level Supported Levels
SQL Server 2019 150 150, 140, 130, 120,
110, 100
SQL Server 2017 140 140, 130, 120, 110,
100
Azure SQL Database 150 150, 140, 130, 120,
110, 100
SQL Server 2016 130 130, 120, 110, 100
SQL Server 2014 120 120, 110, 100
SQL Server 2012 110 110, 100, 90
SQL Server 2008 R2 100 100, 90, 80
SQL Server 2008 100 100, 90, 80
SQL Server 2005 90 90, 80
SQL Server 2000 80 80
31. #SQLSAT895
DB Compatibility Level based certification
Target for a database compatibility level
Stop certifying for any given platform (On-Premises, Cloud, PaaS/IaaS)
Stop certifying for a named SQL Server version
Microsoft Database Compatibility Level Protection
Full functional protection (once assessment tools runs with no errors)
Query Plan shape protection (on comparable hardware)
Maintaining backward compatibility very important for SQL Server team…
32. #SQLSAT895
DB Compatibility Level certification benefits
Simplified certification across platforms
E.g. SQL Server On-Premises and Azure SQL Database Managed
Instances
Improved risk management
Decoupling application upgrade from database support upgrade cycles
Allow customers to upgrade/migrate to new/different versions
Benefits from new features Without changing functionalities
Not everything is gated by Database Compatibility levels e.g.
Adaptive Joins: gated
Auto-tuning, new Query memory gateways, leveraging NUMA architecture, Columnstore
indexes: non-gated
33. #SQLSAT895
Functional Change Protection
Breaking Changes
Behavior changes resulting in different outcomes!
Not all protected under Database Compatibility
Protected changes examples
Improved accuracy in compatibility level 130+
Conversion behavior setting LANGUAGE context info
Conversion behavior parsing dates
Non protected changes examples
Column names changes in system objects
35. #SQLSAT895
Functional Change Protection & Trace Flags
Some functional changes gated by Trace Flags
Example: truncation error 8152
Gated by trace flag 460 in SQL 2017 CU12+
Default in SQL 2019 with Compatibility Level 150
https://blogs.msdn.microsoft.com/sql_server_team/string-or-binary-
data-would-be-truncated-replacing-the-infamous-error-8152
36. #SQLSAT895
Discontinued functionalities
Not protected by Compatibility Level!
Removed from database engine
Need to change queries using it
Examples
FASTFIRSTROW
replaced by OPTION (FAST n) in SQL Server 2012
sp_dboption
system stored procedure removed in SQL Server 2012
37. #SQLSAT895
Query Plan shape protection
Plan-affecting changes
Query Optimizer fixes (Trace Flag 4199)
Changes to Cardinality Estimator
These will very likely cause regressions!
Especially Cardinality Estimator
Many queries better performance, other worse
Are you sure you understood how fixes works?
What about fixes for incorrect result causing regressions?
38. #SQLSAT895
Query Optimizer Fixes with TF 4199
SQL Server 2016+ QO fixes from
previous versions enabled by
default under the latest level
previously you had to enable them
but you enabled also current version,
post-RTM, fixes
zero reported errors in support
cases after changing the default
Fully Documented
https://support.microsoft.com/en-
us/help/974006/sql-server-query-
optimizer-hotfix-trace-flag-4199-
servicing-model
Compatibilit
y Level
TF
4199
QO
changes
from
previous
level
QO
changes for
current
version
post-RTM
100-120 Off Disabled Disabled
On Enabled Enabled
130 Off Enabled Disabled
On Enabled Enabled
140 Off Enabled Disabled
On Enabled Enabled
150/Azure Off Enabled Disabled
On Enabled Enabled
39. #SQLSAT895
Query Optimizer fixes further control
SQL Server 2016+ database-level granularity
ALTER DATABASE SCOPED CONFIGURATION SET
QUERY_OPTIMIZER_HOTFIXES = ON|OFF
SQL Server 2016 SP1+ query-level granularity
OPTION(USE HINT('ENABLE_QUERY_OPTIMIZER_HOTFIXES’))
40. #SQLSAT895
Cardinality Estimator problems
Essential for query plan generation
Was largely based on SQL Server 7.0
Redesigned in SQL Server 2014+
Ascending data estimation, correlation assumptions, join
containment, fixed estimation values (e.g. MTVF)
Will most probably cause regressions in performance!
41. #SQLSAT895
Controlling Cardinality Estimation
SQL Server 2014
Bound to Database Compatibility Level 😬
Trace Flags (global, session and query levels)
Trace flag 2312 reverts to CE version 70
Trace flag 9481 use CE version 120
SQL Server 2016+ database-level configuration
ALTER DATABASE SCOPED CONFIGURATION SET
LEGACY_CARDINALITY_ESTIMATION = ON|OFF
SQL Server 2016 SP1+ query-level configuration
OPTION(USE HINT('FORCE_LEGACY_CARDINALITY_ESTIMATION'))
OPTION(USE HINT('FORCE_DEFAULT_CARDINALITY_ESTIMATION'))
42. #SQLSAT895
Query Optimizer Hints
SQL Server 2016 SP1+
Control QO behavior
Mainly to replace trace flags
https://blogs.msdn.microsoft.co
m/sql_server_team/developers-
choice-use-hint-query-hints
USE HINT Trace
Flag
DB
option
Ver.
DISABLE_OPTIMIZED_NESTED_LOOP 2340 2016 SP1+
FORCE_LEGACY_CARDINALITY_ESTIMATION 9841 Yes 2016 SP1+
ENABLE_QUERY_OPTIMIZER_HOTFIXES 4199 Yes 2016 SP1+
DISABLE_PARAMETER_SNIFFING 4136 Yes 2016 SP1+
ASSUME_MIN_SELECTIVITY_FOR_FILTER_ESTIMATES 4137 old CE
9471 new CE
2016 SP1+
DISABLE_OPTIMIZER_ROWGOAL 4138 2016 SP1+
ENABLE_HIST_AMENDMENT_FOR_ASC_KEYS 4139 2016 SP1+
ASSUME_JOIN_PREDICATE_DEPENDS_ON_FILTERS 9476 new CE 2016 SP1+
FORCE_DEFAULT_CARDINALITY_ESTIMATION 2312 2016 SP1+
DISALLOW_BATCH_MODE 2017+
DISABLE_INTERLEAVED_EXECUTION_TVF 2017+
DISABLE_BATCH_MODE_MEMORY_GRANT_FEEDBACK 2017+
DISABLE_BATCH_MODE_ADAPTIVE_JOINS 2017+
DISABLE_ROW_MODE_MEMORY_GRANT_FEEDBACK 2019+
DISABLE_DEFERRED_COMPILATION_TV 2019+
DISABLE_TSQL_SCALAR_UDF_INLINING 2019+
QUERY_OPTIMIZER_COMPATIBILITY_LEVEL_n 2017 CU10+
QUERY_PLAN_PROFILE 2016 SP2 CU3+
2017 CU11+
43. #SQLSAT895
Query Optimizer Compatibility Level
SQL Server 2017 CU10 introduces query-level granularity
OPTION(USE
HINT('QUERY_OPTIMIZER_COMPATIBILITY_LEVEL_n’))
Includes QO fixes enabled by default up to that level
TF 4199 enabled globally will still enable all fixes
https://blogs.msdn.microsoft.com/sql_server_team/developers-
choice-hinting-query-execution-model
44. #SQLSAT895
Microsoft recommended upgrade Plan
Upgrade to
latest SQL
Server
version and
keeping
source
compatibility
level
Enable Query
Store
Create a
baseline of
the workload
Move to
latest
compatibility
level
Quickly fix
regressions
by forcing
last known
good plan!
47. #SQLSAT895
Side-by-side Upgrade Service Availability
Synchronization Strategy Notes
Log Shipping Cutover typically in minutes
Replication Cutover potentially in seconds
Backup/Restore From minutes to hours (depends on
strategy e.g. usage of differential and/or
log backups)
Filesystem/SAN Copy Dependent on technology
Database Mirroring/Availability Groups Cutover typically in seconds
48. #SQLSAT895
Upgrade process to minimize risks
Functional &
Performance
tests
Optimize
Migrate
schema,
objects & data
Remediate
applications
Discover Assess Convert
Data
Sync
Cutover
49. #SQLSAT895
Discover Phase
Which SQL Server versions do I have?
Which Editions am I running?
Which SQL Server components are installed?
How many cores are on each server?
How many databases are in each instance?
What are the sizes of all my databases?
What are the settings for each instance and database?
50. #SQLSAT895
Assessment Tools
Microsoft Assessment and Planning (MAP) Toolkit
SQL PowerDoc
PowerShell Script gather data from WMI in XML
Windows and SQL Server rich inventory in Excel
Best Practices Reports in Excel
Consolidates multiple server/instances
Official https://github.com/kendalvandyke/sqlpowerdoc
Newer https://github.com/bryan5989/SQLPowerDoc
Quest Enterprise Reporter for SQL Server
Based on previously free Discovery Wizard for SQL Server
Part of a suite for compliancy covering several other products (e.g. AD)
51. #SQLSAT895
Microsoft Upgrade/Migration Tools
Upgrade Advisor
Data Migration Assistant (DMA)
Data Experimentation Assistant (DEA)
Data Migration Service (DMS)
SQL Server Migration Assistant (SSMA)
SQL Server Data Tools for Visual Studio (SSDT)
SQL Server Management Studio (SSMS)
“Export Data Tier Application”
“Deploy Database to Microsoft Azure SQL Database” Wizard
52. #SQLSAT895
Upgrade Advisor
Static Analysis
Database Engine
Analysis Services
Reporting Services
Integration Services
Dynamic Analysis
Trace Files
Obsolete!
Use only if source database non supported
You can still find it in SQL Server Feature Packs (2014 latest)
53. #SQLSAT895
Data Migration Assistant
On-premises instances assessment
Blocking issues
Partially supported or unsupported features
Discover issues that may affect compatibility
Breaking Changes, Behavior Changes, Deprecated Features
Discover new features that may benefit after upgrading
Performance, security, Storage
Azure SQL Database SKU Recommendations
Performance counters analysis to suggest SKU Azure SQL Database
Performs the migration
54. #SQLSAT895
Data Migration Assistant V5
Added SQL 2019 destinations (Windows & Linux)
Save and load assessment!!!
Assess SQL queries from external applications
e.g. queries in C# code
Access Migration Toolkit to generate JSON report
Assess SSIS in SSISDB and package store
More info
https://docs.microsoft.com/en-us/sql/dma/dma-whatsnew
55. Versions supported by DMA
Source
SQL Server 2005
SQL Server 2008
SQL Server 2008 R2
SQL Server 2012
SQL Server 2014
SQL Server 2016
SQL Server 2017 on Windows
Destination
SQL Server 2012
SQL Server 2014
SQL Server 2016
SQL Server 2017 on Windows and Linux
SQL Server 2019 on Windows and Linux
Azure SQL Database
Azure SQL Database Managed Instance
57. #SQLSAT895
DMA Problems
Cannot save sessions!
Only Assessment data in JSON format
Azure SQL Database SKU Recommendations
Command Line Interface only
Currently not working…
Bulk Analysis (still in V5?)
Cumbersome process
Errors
dmaDataCollector crashes with pubs, dmacmd.exe is a closed project
LoadWarehouse.sql needs to be fixed
58. #SQLSAT895
Data Migration Assistant Resources
Docs
https://docs.microsoft.com/en-us/sql/dma/dma-
overview
https://docs.microsoft.com/en-us/sql/dma/dma-
consolidatereports
Blog
https://techcommunity.microsoft.com/t5/Microsoft-
Data-Migration/bg-p/MicrosoftDataMigration
59. #SQLSAT895
Database Experimentation Assistant
A/B testing solution for SQL Server
Workload comparison
e.g. upgrades, new indexes, etc.
Capture
SQL Trace
Extended Events (V2.6+)
Replay
DReplay integration
Analysis
Performance improvements and regressions
62. #SQLSAT895
Data Migration Service Resources
Docs
https://docs.microsoft.com/en-us/sql/dea/database-
experimentation-assistant-overview
Blog
https://techcommunity.microsoft.com/t5/Microsoft-Data-
Migration/bg-p/MicrosoftDataMigration
64. #SQLSAT895
DMS Migration Scenarios
SQL Server -> Azure SQL Database Offline
SQL Server -> Azure SQL Database Online
SQL Server -> Azure SQL Database Managed Instance Offline
SQL Server -> Azure SQL Database Managed Instance Online
MySQL -> Azure DB for MySQL Online
PostgreSQL -> Azure DB for PostgreSQL Online
65. #SQLSAT895
Data Migration Service Resources
Docs
https://docs.microsoft.com/en-us/azure/dms/dms-overview
https://docs.microsoft.com/en-us/azure/dms/tutorial-sql-server-to-azure-
sql
Blog
https://techcommunity.microsoft.com/t5/Microsoft-Data-Migration/bg-
p/MicrosoftDataMigration
67. Platforms supported by SSMA
Source
Microsoft Access
DB2
MySQL
Oracle
SAP ASE (Sybase ASE)
Destination
SQL Server 2008
SQL Server 2008 R2
SQL Server 2012
SQL Server 2014
SQL Server 2016
SQL Server 2017 on Windows and Linux
SQL Server 2019 on Windows and Linux
Azure SQL Database
Azure SQL Database Managed Instance
Azure SQL Data Warehouse (Oracle only)
68. #SQLSAT895
SSMA for Oracle: how it works (101)
Creates two “helper” databases
sysdb
ssmatesterdb
Stores metadata in the file system
data stored in xml compressed format
can rename to .gzip and uncompress it
shred xml into lot of files for caching
reports directory
can be safely deleted and re-generated
metadata reside in the original .mb files
69. #SQLSAT895
SSMA for Oracle: sysdb helper database
Provides
code infrastructure to emulate features
system functions
schema features (e.g. sequences)
engine features (e.g. autonomous transactions)
session bound data storage
emulated metadata storage (e.g. packages)
Maintenance
protect metadata
performance related depends on workload
70. #SQLSAT895
SSMA for Oracle: does it really work?
Yes, but don’t expect miracles!
Works well with simple schemas…
Usually won’t do all the work by itself
Very useful for
assessing efforts
assessing problems
doing prototypes
as a learning tool
to translate/emulate some functionalities
71. #SQLSAT895
Testing
Nothing can replace good testing!
Hard to have tests with good coverage of the whole workload
Sometimes is more cost effective to run fewer tests and fix the
problems later…
SQL Server DReplay infrastructure
Often impossible to capture and replay even a fraction of the
workload
72. #SQLSAT895
Workload Tools
Very good for side-by-side, real-time workload replay
Captures XE batch completed and replay commands on-the-fly
Captures execution telemetry (cpu, read, writes, duration)
Reports to find regressions
Developed by a well-known MVP ☺
https://github.com/spaghettidba/WorkloadTools
73. #SQLSAT895
DBA Tools
Lot of PowerShell cmdlets to make the DBA life easier
Many cmdlets target specifically migration/upgrade scenarios
E.g copy logins with synch option
One stop cmdlet migrating an
All instance-level assets (e.g. credentials, linked servers, etc. )
Via backup/restore automation (just specify network share)
https://dbatools.io
75. #SQLSAT895
After the upgrade: remember the plan
Upgrade to
latest SQL
Server
version and
keeping
source
compatibility
level
Enable Query
Store
Create a
baseline of
the workload
Move to
latest
compatibility
level
Quickly fix
regressions
by forcing
last known
good plan!
76. #SQLSAT895
Automatic Tuning
Automatic plan correction
Automatically force last good plan when regression detected
Minimum 10 CPU seconds improvement
sys.dm_db_tuning_recommendations for manual corrections
SQL Server 2017 and Azure SQL Database
https://docs.microsoft.com/en-us/sql/relational-databases/automatic-tuning/automatic-tuning
77. #SQLSAT895
Query Tuning Assistant
Well-defined workflow targeting patterns for query regressions
Independence vs. Correlation
Simple Containment vs. Base Containment
Multi-statement table-valued function (MSTVF) fixed cardinality guess
SQL Server Management Studio Wizard-Based Tool
Can be automated via PowerShell
78. #SQLSAT895
Query Tuning Assistant plan
Upgrade to
latest SQL
Server
version and
keeping
source
compatibilit
y level
Enable
Query Store
Create a
baseline of
the
workload
Move to
latest
compatibilit
y level (or
any target
level to test)
Collect
workload
with new
level and
start
comparing
with
baseline
Instead of
only forcing
last known
good plan,
experiment
with tuning
recommend
ation actions
https://docs.microsoft.com/en-us/sql/relational-databases/performance/upgrade-dbcompat-using-qta
79. #SQLSAT895
Modernization Stream Phases in a SQL
Project
Partner Collect Inspire
Assess Define Inventory Envision Scope
Modernize Detail Setup Test Execute
Support Tune Mentor
80. #SQLSAT895
Assessment phase
Define
• Finalize assessment’s scope
• Finalize questionnaires to be sent to project representatives
• Activities kick-off
Inventory
• Detailed inventory of Windows Server & SQL Servers
• Static analysis of databases & SQL code
• Project representatives interviews (questionnaires)
Envision
• Consolidate & analyze inventory data
• Review configuration, performance, reliability and security best practices
• Prepare modernization scenarios and macro action-plan
Scope
• Discuss deliverables and scenarios with customer
• Finalize modernization scenarios
• Prepare next phases offering (Modernize & Support)
81. #SQLSAT895
Assessment phase: reducing uncertainty
Better planning/flexibility
Size better understood results in reduced expectations and scope
Allows to run several Modernization phases at different times
Leaves the customer with something tangible
Detailed assets inventory
Performance/Security/Reliability automatic assessment
Static analysis of databases code
Possibility to rescope/change scenarios
Enough data to independently run the project
82. #SQLSAT895
On-Premises to Azure PaaS/IaaS migrations
IaaS
SQL Server on Azure VMs
SQL Server on Azure Containers
SQL Server on Azure Kubernetes
PaaS
Azure SQL Database
Azure SQL Database Managed Instance
84. Subnet used for MI
On-Premise to Managed Instance online
workflow
Subnet used for DMS
On-Premise
Cloud network
SQL DB
Managed Instance
Azure Blob Storage
SMB Network Share
85. #SQLSAT895
Other on-premises to PaaS strategies
Method 1 Method 2 Method 3
Target
DB
Azure SQL Database
SQL Server
SSMS
2. Import
1. DeployOR
.bacpac
1. Export
Source
DB
Target
DB
Azure SQL Database
SQL Server
SQL Azure
Migration
Wizard
2. Execute
1. Generate
T-SQL
Source
DB
Target
DB
Azure SQL Database
SQL Server
SSMS
6.
Export/
Import
or Deploy
Data
Migratio
n
Assistant
4. Copy
Copy
DB
Source
DB
5. Publish
1. Import
Visual
Studio
Database
Project
2. Transform
3. Edit, Build
& Test
*.sql
4. Publish (schema only)
Compatible database: manual
copy or deploy wizard in SSMS
Database almost compatible:
SQL Azure Migration Wizard
DMA and SSMS
Refactor with Visual Studio and Data
Migration Assistant, final deploy with
SSMS