Performance Tuning Microsoft Azure SQL Database

Sign in to queue

Description

Even though the cloud provides elastic scale and seemingly infinite resources, you still have to design, monitor and tune performance. Microsoft Azure SQL Database has architectural differences from SQL Server and understanding how these can impact performance is critical. In this session, Microsoft Azure MVP, Eric D. Boyd, will show you how you can identify bottlenecks and the cause of performance problems in SQL Database. This session will introduce you to the tools you can use to investigate throttling, connection events and resources, and poorly performing queries such as dynamic management objects (DMVs and DMFs) and cloud-based tools in Microsoft Azure. You will also learn how to appropriately handle throttling in your applications and scale by partitioning databases.

Day:

1

Embed

Download

The Discussion

  • User profile image
    LukePuplett

    Woah. Major no-no in here. Do not use Parallel.ForEach to run a query across each of the shards. Parallel.For and ForEach will use a thread per core on the machine and then inject a new thread only on detection of a blocked thread, once per second.

    It is NOT a convenient way to spawn, say, 10 tasks to run on 10 shards. You are not issuing those queries all at once.

    To genuinely issue all the queries at once (and you should), you must "manually" create and run 10 Task instances for each shard, stick them all in a collection and wait on them all.

Add Your 2 Cents