Benchmarking: 1-TB table population (part 2: optimizing log block IO size and how log IO works)

(For the hardware setup I'm using, see this post. For the baseline performance measurements for this benchmark, see this post.) In my previous post in the series, I described the benchmark I'm optimizing – populating a 1-TB clustered index as fast as possible using default values. I proved to you that I had an IO bottleneck […]

DBCC CHECKFILEGROUP bug fixed in 2008 SP1 CU6

Back in September I blogged about an old 2005 bug that prevented DBCC CHECKFILEGROUP checking the partitions of an object on the specified filegroup unless *all* partitions of the object are on the specified filegroup (not a smart way to set things up!). The bug was fixed ages ago in 2005 but has only just […]

Benchmarking: 1-TB table population (part 1: the baseline)

(For the hardware setup I'm using, see this post.) As part of my new benchmarking series I first wanted to play around with different configurations of data files and backup files for a 1-TB database to see what kind of performance gains I can get invoking the parallelism possible when backing up and restoring the database. […]

Remote DB maintenance auditing promotion

Okay, this post is describing some new services we provide (we are a consulting firm after all :-), but there's a promotion at the bottom where you can save $$$ on one of the new services. We're starting to offer a set of standalone auditing services that we can perform remotely, greatly reducing the cost of […]

Interesting case of watching log file growth during a perf test

I'm running some performance tests on the hardware we have (more details on the first of these tomorrow) and I was surprised to see some explosive transaction log growth while running in the SIMPLE recovery model with single row insert transactions! Without spoiling tomorrow's thunder too much, I've got a setup with varying numbers of […]

New blog on SQLskills.com: Paul’s Electronics

At the start of the year I decided to get seriously back into playing with electronics after a long haitus. I agonized about where to blog about all this stuff (as I like to blog a *lot*, as you all well know) and I initially thought it would be cool to have everything intermingled on […]

What three events brought you here?

Yesterday I was discussing life-direction-changing-events with Kimberly and our great friend Libby and I thought it would be interesting to find out from people how their lives brought them to where they are today. I'm often tagged in these kinds of blog posts from other people, so today I'm going to start one of my […]

Arduino projects: LED 10-bar array

I finally had some time over the last two days to play with the Arduino board I picked up late last year. The Arduino is a pretty neat concept – wrapping a microcontroller up in a neat board that makes playing with sensors, displays, motors, etc and prototyping very simple. It's all open source and […]

Diskeeper 10 Intelliwrite corruption bug

A couple of years ago I blogged about 3rd-party file system filter drivers and how if they're not coded correctly to cope with NTFS alternate streams they will cause all kinds of weird corruption errors to be reported when DBCC CHECKDB is running. At the time I'd only seen the issue a couple of times so thought […]

Turning off the ghost cleanup task for a performance gain

I've blogged about ghost records and the ghost cleanup task a couple of time before (the only place it is really explained AFAIK), but one of my fellow MVPs was asking me some questions about it today for a customer of theirs and couldn't find the trace flag to turn it off. My previous blog […]

Misconceptions around database snapshots and transaction rollbacks

This is a quick post to clarify an article I saw on SQLServerCentral this morning that seemed to state that transaction rollbacks push data into database snapshots. This is absolutely not true. A database page is copied into a database snapshot before it is changed in the source database. Although the mechanism is commonly called copy-on-write, […]

Date changes for SQL Connections and Boston public class

Due to some Microsoft date changes, the Spring SQL Connections show had to move to the week of April 12th. As a knock-on effect – and believe me, there were a bunch for us! – the public class Immersion Event we're doing in Boston had to move out of that week, and is now two […]

TechNet Magazine: January 2010 SQL Q&A column

Happy New Year!  The January edition of TechNet Magazine is available on the web now and has the latest installment of my regular SQL Q&A column. This month's topics are: Using backups for corruption recovery Why snapshot isolation is required when using change tracking, and its performance implications Is DBCC CHECKDB a really comprehensive integrity […]