Announcing Public Preview of Accelerated Database Recovery

Today we are excited to announce the public preview of Accelerated Database Recovery! Accelerated Database Recovery (ADR) is a new SQL Server Engine feature (available in Azure SQL, Azure SQL Data Warehouse, and in the upcoming version of SQL Server on-premises) that greatly improves database availability, especially in the presence of long running transactions, by… Read more

Create linked server to readable secondary replica in Managed Instance Business Critical service tier

Azure SQL Database Managed Instance is a fully managed SQL Server Database Engine hosted in Azure cloud that provides most of the Azure SQL Pass and SQL Server functionalities, such as linked servers and built-in free secondary read-only replicas. In this post you will see how to use linked servers to connect to readable secondary… Read more

Azure SQL Database – the database engine that cannot die

Azure SQL Database is highly available database Platform as a Service that guarantees that your database will be up and running 99.99% of time, without worrying about maintenance and downtimes. This is a fully managed SQL Server Database Engine process hosted in Azure cloud that ensures that your SQL Server database is always upgraded/patched without… Read more

SQL Server 2016 – It Just Runs Faster: Always On Availability Groups Turbocharged

When we released Always On Availability Groups in SQL Server 2012 as a new and powerful way to achieve high availability, hardware environments included NUMA machines with low-end multi-core processors and SATA and SAN drives for storage (some SSDs). Performance issues surrounding Availability Groups typically were related to disk I/O or network speeds. As we… Read more

AlwaysOn: Comparing Readable Secondary with the similar functionality available in DB2

In my previous blogs, I had described how Readable Secondary functionality works SQL Server 2012. As you look at other database vendors, you will realize that they also provide the functionality to offload read workload to secondary or mirror. However, if you look closer, you will realize each vendor has significant differences on how this… Read more

AlwaysOn: I just enabled Readable Secondary but my query is blocked?

When you connect to Secondary Replica, but it has not been enabled for read workload, you will get the following error under two situations (1)    You connect directly to one of the databases under availability group. It is denied because the database is not enabld for read workload. (2)    You connect to a non-AG database… Read more

AlwaysOn: Making latest statistics available on Readable Secondary, Read-Only database and Database Snapshot

 In the previous blog we described that stale or missing statistics will potentially lead to a sub-optimal query plan and how it can impact the query performance on on read-only database, database snapshot and readable secondary. This blog describes how we have solved this in SQL 12 for all three flavors of databases transparently… Read more

AlwaysOn: Challenges with statistics on ReadOnly database, Database Snapshot and Secondary Replica

I am sure you all have dealt with situations when the statistics on one or more columns is either missing or not up-to date. When user submits a query for execution, the SQL Server goes through logical (simplifying or restructuring a query) and physical optimization that considers various query plans based on statistical information and… Read more

AlwaysOn: Impact of mapping reporting workload on Readable Secondary to Snapshot Isolation

In my previous blog, I described how Readable Secondary eliminates potential REDO thread blocking for DML work running on the primary replica by mapping all isolation levels used in the reporting workloads to Snapshot Isolation. While it was essential that we eliminate REDO thread blocking with concurrent DML on secondary replica, it comes at… Read more

AlwaysOn: Minimizing blocking of REDO thread when running reporting workload on Secondary Replica

In earlier blog, I discussed the impact on RTO in case the REDO thread gets blocked. While designing this feature, it was one of the key usability constraints we had (i.e. to eliminate REDO blocking for common usage scenario). For the un-initiated, here is the problem   Primary Replica Secondary Replica   Set Isolation… Read more