Home Dashboard Directory Help
Search

Enable Network Compression (compress TDS stream) by RonOrtloff


Status: 

Active


43
0
Sign in
to vote
Type: Suggestion
ID: 412131
Opened: 2/6/2009 1:53:07 PM
Access Restriction: Public
0
Workaround(s)
view

Description

When transferring data between SQL instances on different servers, network sometimes becomes a bottleneck. If the size of the payload can be compressed prior to transmit perf may increase (given adequate resources to process the compression).

Consider adding the ability to compress the TDS stream for future a SQL Server release.
Details
Sign in to post a comment.
Posted by Marco Russo - SQLBI on 3/25/2014 at 8:06 AM
This would be much more important now that we have Windows Azure and hybrid scenarios (i.e. SharePoint running on IaaS and databases running on-prem, with PowerPivot refreshing data reading from an on-prem SQL Server instance).
Posted by Miron contrib on 10/2/2013 at 3:35 AM
It's an interesting option.

Microsoft, please do update.
Posted by Joel Mansford on 7/12/2011 at 3:48 AM
Adding this to the SQL Native Client would greatly benefit one of my client's environments where they are utilising lots of SQL based datasets within an MS Excel based reporting.

Also @Zlatko I cannot see any reference to TCP compression in the article at http://msdn.microsoft.com/en-us/library/dd263442.aspx
Posted by MatthewAdams on 9/21/2010 at 1:11 PM
We also would like to see this. Accessing a remote db, such as one across a WAN or in a cloud (like SQL Azure) could benefit greatly from built-in TDS packet compression. SQLNitro is showing up to 90% better performance in my application with compression enabled (as long as encryption and mutliple active result sets are off). If communication where compressed after encryption, then the encrypt setting would not be a problem. As for multiple active result sets, I'm filing a separate issue for that, as it seems that causes much worse performance over a WAN connection, even with a single query and single result set.
Posted by wdurkin on 9/8/2009 at 8:34 AM
We typically see this when we want to move large amounts of data between SQL Servers over a WAN connection.

The best way to fix this would be to offer TDS compression within the SQL Server Client and Server (maybe as an Enterprise Edition feature), where the server can be set to send using compressed TDS to any client with this turned on (default), otherwise don't compress.

When you want to setup Replication you create the initial snapshot and bcp the data between the servers, bcp uses TDS and would benefit enormously through the compression.

I saw a tool to do this, SQLNitro, but would prefer the functionality to be baked into the product from MS.
Posted by Microsoft on 2/20/2009 at 10:20 AM
Dear Customer,

Thank you for helping us improve our products!
The issue of TDS compression has come up already, and we are considering possibilities. As you mention, it is not a something that would provide a benefit in all scenarios. We need to spend some time justifying the need for it and thinking about a safe way to enable without negatively impacting existing use cases. We’ll keep the issue open until make a final a decision, and we’ll keep you updated of the progress.

Meanwhile, please take a look at this link that explains how Windows Server 2008 does TCP compression for SQL Server 2008, which might be sufficient for your scenario - http://msdn.microsoft.com/en-us/library/dd263442.aspx.

Thanks again,
Zlatko Michailov
Program Manager, SQL Protocols
Sign in to post a workaround.