SQL Server 2008 Data Compression, what it is - how does it work?
As you know data compression facility is added onto the SQL Server 2008 version, though this is not a new feature and I would call it as an enhanced feature in SQL Server. This subject of data compression has already been introduced in SQL Server 2005 version which is usage of VARDECIMAL with having table-level option can be used with decimals & numeric fields data, so this has been stretched further in 2008 version to the users.
So this compression is a big leap in 2008 and different to normal compression formats, say if you have enabled data compress on a table or index then underlying row/page format will be different in terms of ROW & PAGE value that is stored in the engine. This value of compression can only be useful/available within SQL 2008 storage engine and that will not be available for previous versions. Going further such page is compressed separately, with the prefixes and dictionaries stored in the page itself.
Compression does not occur until the page is nearly full, as pages are allocated atomically and compressing a half a page to a quarter page wouldn't gain anything. Bear in mind about performance discounts in using this row/page compression, while selecting data from these fillers CPU utilization & I/O will go high along with heavy memory usage. Though I haven't had a chance to compare such utilization with the data compression performance to that of SQL Server 2005, so I can't directly say whether or not it was faster or produced smaller compressed files. In general, though, data compression enables data in a database to be stored more effectively and reduces the storage requirements for your data. Data compression also provides significant performance improvements for large I/O-bound workloads, getting data to and from the database more quickly.
Always there will be a trade-off between achieving highest performance and sensible usage of data compression. Still I have to study further on this feature to share my experience, meanwhile for further information on this feature follow the below links:
SQL2005-2008_DataCompression by Kimberly Tripp
TypesOfDataCompression-SQL2008 by Sunil Agarwal
WMV - LiveMeeting-Presentation on SQL Server 2008 Data Compression
Data-Capture_with_Data-compression