ข้อมูลที่คุณกำลังมองหาการบีบอัดจะถูกส่งผ่านสายที่ผ่านTDS มีการบีบอัดเล็กน้อยที่นี่ แต่ไม่มีที่ไหนใกล้กับชนิดของการบีบอัดที่คุณได้รับด้วยการบีบอัดหน้า / แถวการบีบอัดข้อมูลสำรองหรือการบีบอัด ColumnStore
มันถูกถามมาก่อน:
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
รายการยังเปิดอยู่ดังนั้นอาจมีความหวังบ้าง ไม่มีวิธีควบคุมสิ่งนี้ผ่านสายเชื่อมต่อที่ฉันเคยเห็น
ในระหว่างนี้มีผลิตภัณฑ์บางอย่างที่อ้างว่าทำเช่น
http://www.nitrosphere.com/products/nitroaccelerator/
http://toonel.net/tcpany.htm
คุณยังสามารถกำหนดค่าเครือข่ายระหว่าง SQL Server ของคุณและแอพพลิเคชันเซิร์ฟเวอร์เพื่อสนับสนุนการบีบอัด (และสิ่งอื่น ๆ เช่นการเข้ารหัส) แต่คุณอยู่นอกเหนือขอบเขตของฉันที่นี่และฉันไม่แน่ใจว่าจะรองรับคุณลักษณะทุกอย่างของ SQL หรือไม่ เซิร์ฟเวอร์
และตามจริงแล้วฉันไม่เชื่อว่านี่คือสถานที่ที่คุณต้องการมุ่งเน้นการเพิ่มประสิทธิภาพ การบีบอัดสตรีมนี้อาจทำให้สิ่งต่าง ๆ ช้าลงและมีความได้เปรียบในการส่งไบต์ที่น้อยลง ฉันควรทิ้งเงินลงบนการเชื่อมต่อเครือข่ายที่ดีขึ้นระหว่างเซิร์ฟเวอร์และลูกค้ามากกว่าที่จะใช้เวลาในการลงทุนในงานประเภทนี้และทดสอบว่ามันมีประโยชน์จริง ๆ หรือไม่และไม่สามารถทำเช่นนั้นได้ในภายหลัง จาก 10/100 ถึง gig fiber มีผลกระทบที่รู้จักและคาดการณ์ได้ใน I / O เครือข่าย
ฉันไม่แน่ใจเกี่ยวกับรูปแบบของไบต์ที่ส่งผ่านสาย คุณจะต้องติดตั้งแพ็คเก็ตดมกลิ่นแบบนั้น (หรืออาจมีคนทำไปแล้วและจะตีระฆัง)
สำหรับผลกระทบของการบีบอัดยกเว้นว่าคุณอยู่ใน Fusion-IO หรือโซลูชันชนิด SSD ระดับไฮเอนด์อื่น ๆ คุณเกือบจะแน่นอน I / O ที่ถูกผูกไว้ในปัจจุบันและไม่ใช่ CPU-bound ดังนั้นตราบใดที่คุณมีโอเวอร์เฮดของ CPU คุณควรเห็นประสิทธิภาพที่เร็วขึ้นด้วยการเปิดใช้งานการบีบอัด (แต่สิ่งนี้จะไม่เปลี่ยนประสิทธิภาพของเครือข่ายเนื่องจากข้อมูลจะไม่ถูกบีบอัดก่อนส่งข้อมูล) ฉันบอกว่าการไม่รู้อะไรเกี่ยวกับเซิร์ฟเวอร์แอปพลิเคชันของคุณข้อมูลหรือรูปแบบการใช้งานของคุณ - คุณอาจมีกรณีที่การบีบอัดทำให้ประสิทธิภาพลดลงหรือที่ข้อมูลไม่เหมาะสมสำหรับอัตราส่วนการบีบอัดที่ดี