Dane, które chcesz skompresować, są przesyłane przewodowo przez TDS . Występuje tutaj niewielka kompresja, ale nigdzie w pobliżu rodzaju kompresji uzyskiwanej w przypadku kompresji strony / wiersza, kompresji kopii zapasowej lub kompresji ColumnStore.
Został on wcześniej zapytany:
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
Przedmioty są nadal otwarte, więc może jest jakaś nadzieja. Nie ma sposobu, aby to kontrolować za pomocą ciągu połączenia, który kiedykolwiek widziałem.
W międzyczasie istnieją produkty, które twierdzą, że to robią, np
http://www.nitrosphere.com/products/nitroaccelerator/
http://toonel.net/tcpany.htm
Możesz także potencjalnie skonfigurować sieć między serwerem SQL Server a serwerami aplikacji, aby obsługiwała kompresję (i inne rzeczy, takie jak szyfrowanie), ale jesteś poza moim zakresem, a nie jestem pewien, czy byłoby to obsługiwane przez każdą funkcję SQL Serwer.
I szczerze mówiąc, nie jestem przekonany, że to miejsce, na którym chcesz się skupić na optymalizacji. Kompresowanie tego strumienia może faktycznie spowolnić proces i przeważyć korzyści wynikające z wysłania mniejszej liczby bajtów. Wolę poświęcić pieniądze na lepszą łączność sieciową między serwerem a klientem (klientami) niż poświęcać czas na inwestowanie w tego rodzaju pracę i testowanie, czy przynosi to jakieś rzeczywiste korzyści - i nie będę w stanie tego zrobić do tego czasu. Od 10/100 do gigabajtów światłowód ma znany i przewidywalny wpływ na sieciowe operacje we / wy.
Nie jestem pewien formatu bajtów przesyłanych przewodowo; będziesz musiał skonfigurować do tego jakiś rodzaj sniffera pakietów (a może ktoś już to zrobił i włączy się).
Jeśli chodzi o wpływ kompresji, o ile nie korzystasz z Fusion-IO lub innych zaawansowanych rozwiązań typu SSD, prawie na pewno jesteś obecnie związany I / O, a nie procesorem. Tak długo, jak masz narzut procesora, powinieneś widzieć większą wydajność z włączoną kompresją (ale to nie zmieni wydajności sieci , ponieważ dane są nieskompresowane przed transmisją). Mówię, że nie wiedząc nic o twoich serwerach, aplikacji, danych lub wzorcach użytkowania - możesz mieć bardzo dobry przypadek, w którym kompresja faktycznie szkodzi wydajności lub gdzie dane po prostu nie są dobrym kandydatem na dobre współczynniki kompresji.