Los datos que desea comprimir son los que se envían por cable a través de TDS . Aquí hay alguna compresión menor, pero no se acerca al tipo de compresión que obtienes con la compresión de página / fila, compresión de respaldo o compresión ColumnStore.
Se ha pedido antes:
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
Los artículos aún están abiertos, por lo que quizás haya algo de esperanza. No hay forma de controlar esto a través de la cadena de conexión que he visto.
Mientras tanto, hay algunos productos que dicen hacer esto, por ejemplo
http://www.nitrosphere.com/products/nitroaccelerator/
http://toonel.net/tcpany.htm
También puede configurar potencialmente la red entre su SQL Server y los servidores de aplicaciones para admitir la compresión (y otras cosas como el cifrado) pero está más allá de mi alcance aquí, y no estoy seguro de si esto sería compatible con todas las características de SQL Servidor.
Y para ser honesto, no estoy convencido de que este sea el lugar en el que desea centrarse en la optimización. La compresión de esta secuencia en realidad podría ralentizar las cosas y superar los beneficios de enviar menos bytes. Prefiero gastar el dinero en una mejor conectividad de red entre el servidor y el cliente que gastar tiempo invirtiendo en este tipo de trabajo y probar si tiene algún beneficio real, y no poder hacerlo hasta después. Desde 10/100 hasta la fibra óptica tiene un impacto conocido y predecible en la red de E / S.
No estoy seguro sobre el formato de los bytes enviados a través del cable; tendrá que configurar algún tipo de sniffer de paquetes para eso (o tal vez alguien ya lo haya hecho y vaya a intervenir).
En cuanto al impacto de la compresión, a menos que esté utilizando Fusion-IO u otras soluciones de tipo SSD de gama alta, es casi seguro que esté vinculado a E / S actualmente y no a CPU. Por lo tanto, siempre que tenga una sobrecarga de la CPU, debería ver un rendimiento más rápido con la compresión habilitada (pero esto no cambiará el rendimiento de la red , ya que los datos se descomprimen antes de la transmisión). Digo que sin saber nada sobre sus servidores, su aplicación, sus datos o sus patrones de uso, podría tener un caso extremo en el que la compresión realmente perjudica el rendimiento, o donde los datos simplemente no son un buen candidato para buenas relaciones de compresión.