Parallel processing in TSQL

I will be over in Ireland on Thursday presenting on Service Broker .

It appears few people are actually using it for two way messaging (conversations). 

More are actually using it as a distribution mechanism for getting data from one place to another, asynchronously and reliably.

The other implementation is to perform parallel processing. We are told over and over that we should use set based processing in databases, whilst these are great at obtaining a result set of data in an effiecient manner, any calculations within the set are generally performed sequentially on a set of data. If this calculation is expensive this has a huge impact on performance. This can be seen clearly with a TSQL udf, these are very expensive when compared with system functions (http://sqlblogcasts.com/blogs/simons/archive/2005/01/17/User-Defined-Function-performance-comparison.aspx and http://sqlblogcasts.com/blogs/simons/archive/2006/03/13/Performance-of-formatDateTime-SQLCLR-function.aspx)

So if we want to get ultimate performance we need to do things in parallel, developers for a long time have been writing multi threaded apps, especially with .Net where its really easy. However in TSQL its not very easy, until now. Service broker provides the ability to perform processing in parallel. If you're interest in how then come along next week and see my presention on Service Broker

Also presenting is Tim Sneath former UK resident now over in Redmond working on funky UI things like XAML, and Silverlight.  http://blogs.msdn.com/tims/archive/2007/06/04/silverlight-in-the-uk-and-ireland.aspx



-
Published 03 June 2007 20:30 by simonsabin

Comments

No Comments