I dati che stai cercando di comprimere sono quelli inviati via cavo tramite TDS . C'è una compressione minore qui, ma in nessun posto vicino al tipo di compressione che si ottiene con la compressione di pagine / righe, compressione di backup o compressione ColumnStore.
È stato richiesto prima:
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
Gli oggetti sono ancora aperti, quindi forse c'è qualche speranza. Non c'è modo di controllarlo tramite la stringa di connessione che io abbia mai visto.
Nel frattempo ci sono alcuni prodotti che affermano di farlo, ad es
http://www.nitrosphere.com/products/nitroaccelerator/
http://toonel.net/tcpany.htm
Puoi anche potenzialmente configurare la rete tra il tuo SQL Server e i server delle applicazioni per supportare la compressione (e altre cose come la crittografia) ma qui sei al di fuori del mio ambito di applicazione, e non sono sicuro che questo sarebbe supportato da ogni singola funzionalità di SQL Server.
E ad essere sincero, non sono convinto che questo sia il posto in cui vuoi concentrarti sull'ottimizzazione. La compressione di questo flusso potrebbe effettivamente rallentare le cose e superare i vantaggi dell'invio di meno byte. Preferirei spendere i soldi per una migliore connettività di rete tra server e client piuttosto che spendere tempo investendo in questo tipo di lavoro e testando se ha benefici effettivi - e non potendo farlo fino a dopo. Dal 10/100 al gig la fibra ha un impatto noto e prevedibile sull'I / O di rete.
Non sono sicuro del formato dei byte inviati tramite il filo; dovrete impostare una sorta di sniffer di pacchetti per quello (o forse qualcuno lo ha già fatto e si farà avanti).
Per quanto riguarda l'impatto della compressione, a meno che non si utilizzi Fusion-IO o altre soluzioni di tipo SSD di fascia alta, quasi sicuramente si è attualmente collegati in I / O e non in CPU. Quindi, fintanto che hai un sovraccarico della CPU, dovresti vedere prestazioni più veloci con la compressione abilitata (ma questo non cambierà le prestazioni della rete , poiché i dati non sono compressi prima della trasmissione). Dico che non sapendo nulla dei tuoi server, della tua applicazione, dei tuoi dati o dei tuoi schemi di utilizzo, potresti benissimo avere un caso limite in cui la compressione danneggia effettivamente le prestazioni o dove i dati non sono un buon candidato per buoni rapporti di compressione.