Thanks for the article - I took a look and it still seems odd to me that a snapshot could be 2-3x's the size of the source db. If the snapshot file is a copy of the original pages that were changed - how can the size ever be more than that of the original db? Seems to be the the worst case is that every page is in the snapshot file and therefore should be right at the size of the source db. I will do some add'l digging to see if I can answer this myself. Thanks again.

It's not - it can't get any bigger than the size of the database at the time the snapshot was created. The only time the snapshot can be bigger than the database is if the database is physically shrunk after the snapshot is created and WITH NOTRUNCATE is not specified.

Why do you think the article implies that the snapshot will be bigger than the database? It doesn't. The two byte sizes quoted are for the snapshot, not the database.

SanjayAttray (1/7/2010)For us it actually/nearly crashed a server. Original DB size was 34.45 GB but snapshot grew more than 78 GB where the Disk size allocated was 80 GB.

From there on my rule for creating a snapshot is that you should have at least 3 - 4 times the disk space compared to original database if the transaction level is high on original database. And that you if you have rollback statements.

They had to have something else going on, or they're confused by nomenclature - snapshot just can't get bigger than the database - once all pages from the database are copied, there's nothing else that can make the snapshot grow.

Paul Randal (1/11/2010)...snapshot just can't get bigger than the database - once all pages from the database are copied, there's nothing else that can make the snapshot grow.

True, but it could appear that way:

Consider a database 80GB in size.A snapshot of that database reaches 78GB in size.Objects are then deleted from the main database.The main database is then shrunk to 1GB.The snapshot is now larger than the database, since extents are never deallocated from the snapshot.