Die Daten, die Sie komprimieren möchten, werden über TDS übertragen . Es gibt hier eine geringfügige Komprimierung, aber bei weitem nicht die Komprimierungsart, die Sie mit der Seiten- / Zeilenkomprimierung, der Sicherungskomprimierung oder der ColumnStore-Komprimierung erhalten.
Es wurde schon einmal nachgefragt:
http://connect.microsoft.com/SQLServer/feedback/details/412131/enable-network-compression-compress-tds-stream
http://connect.microsoft.com/SQLServer/feedback/details/377479/wan-compression-option
Die Artikel sind noch offen, also gibt es vielleicht Hoffnung. Es gibt keine Möglichkeit, dies über die Verbindungszeichenfolge zu steuern, die ich jemals gesehen habe.
In der Zwischenzeit gibt es einige Produkte, die behaupten, dies zu tun, z
http://www.nitrosphere.com/products/nitroaccelerator/
http://toonel.net/tcpany.htm
Sie können das Netzwerk zwischen Ihrem SQL Server und den Anwendungsservern möglicherweise auch so konfigurieren, dass die Komprimierung (und andere Dinge wie Verschlüsselung) unterstützt wird, aber Sie sind hier nicht in meinem Rahmen, und ich bin nicht sicher, ob dies von jeder einzelnen SQL-Funktion unterstützt wird Server.
Und um ehrlich zu sein, bin ich nicht davon überzeugt, dass Sie sich hier auf die Optimierung konzentrieren möchten. Durch die Komprimierung dieses Streams werden die Daten möglicherweise langsamer und die Vorteile des Sendens von weniger Bytes überwiegen. Ich würde lieber Geld für eine bessere Netzwerkkonnektivität zwischen Server und Client (s) investieren, als Zeit damit zu verbringen, in diese Art von Arbeit zu investieren und zu testen, ob sie irgendwelche tatsächlichen Vorteile hat - und dies erst danach tun zu können. Von 10/100 bis Gig Fibre hat eine bekannte und vorhersehbare Auswirkung auf die Netzwerk-E / A.
Ich bin mir nicht sicher, in welchem Format die über die Leitung gesendeten Bytes vorliegen. Sie müssen dafür eine Art Paket-Sniffer einrichten (oder vielleicht hat das schon jemand gemacht und mischt sich ein).
Was die Auswirkung der Komprimierung betrifft, so sind Sie derzeit mit ziemlicher Sicherheit an die E / A und nicht an die CPU gebunden, es sei denn, Sie arbeiten mit Fusion-IO oder anderen High-End-SSD-Lösungen. Solange Sie CPU-Overhead haben, sollten Sie eine schnellere Leistung bei aktivierter Komprimierung erzielen (dies ändert jedoch nicht die Netzwerkleistung , da die Daten vor der Übertragung dekomprimiert werden). Ich sage, dass Sie nichts über Ihre Server, Ihre Anwendung, Ihre Daten oder Ihre Nutzungsmuster wissen - Sie könnten durchaus einen Vorteil haben, wenn die Komprimierung tatsächlich die Leistung beeinträchtigt oder wenn die Daten einfach kein guter Kandidat für gute Komprimierungsverhältnisse sind.