2013-10-15 29 views
5

RetainSameConnection öğesinin yanlış olması gereken durumlar var mı?RetainSameConnection - kullanın ya da değil?

varsayılan olarak yanlış olduğunu ve belki ayar var olma hakkına sahip yoksa merak ediyorum neden oldukça görmüyorum.

+0

Neden Varsayılan uygun olmadığını düşünüyorsun? – billinkc

+2

Bağlantılar pahalıdır. Bir paketin süresi boyunca korunabiliyorsa, her görevle bir tanesini açmak ve kapatmak daha iyi olacaktır. Her bir yinelemeyle bir bağlantının açıldığı ve kapatıldığı döngüler için. Bağlantıların tutulması gereken durumlar varsa, en azından varsayılan değer olmamalıdır. Benim nacizane fikrime göre – Metaphor

cevap

5

art arda paket yürütme sırasında bir veri kaynağı tüketmiyorsanız, RetainSameConnection böylece bağlantı yok edilebilir olarak yanlış bırakın ve kullanım sonunda havuzuna döndü. Tekrar tekrar aynı veri kaynağı isabet konum olarak

true RetainSameConnection ayarlayın. Ayrıca, bir oturum değişkenini (MySQL'in SQL_BIG_SELECTS gibi) ayarlarken veya paket içinde kullanmak için geçici bir tablo oluştururken bunu da istersiniz.

0

iki neden: false RetainSameConnection bağlantısı her görevi sonra kapalı kalmasına neden ETMEZ: 1. Bağlantılar 2. Paralellik etkili Birincisi, bir mit dışına elde etmektir pahalıdır. o komutlarını vermek için gerekli gördükleri (Nor gerçek yapar.)

varsayılan yapılandırması altından SSIS veritabanına gibi birçok bağlantıları açılacaktır. Örneğin, öncelikli operatörler tarafından sınırlandırılmamış, aynı bağlantı üzerinde iki farklı tabloda çalışan iki göreviniz olabilir. SSIS, iki komutu bağımsız olarak işlemek için iki bağlantıyı açmaya karar verebilir. Başka bir senaryo, aynı bağlantıyı hedefleyen bir Kaynak bileşen ve Hedef bileşeniyle tek bir veri akışınız olabilir. SSIS, biri Kaynak için, diğeri de Hedef için olmak üzere iki bağlantı örneği kullanmaya karar verebilir. Yine - SSIS'nin amacı veri verimini artırmak için ayrı bağlantılar kullanmaktır.

Yani - false olarak ayarlanır RetainSameConnection hemen her zaman iyi bir şeydir. Genellikle varsayılanların varsayılanlar olduğu için oldukça iyi bir sebep vardır.

RetainSameConnection gerçek olamayacak için çok az sayıda senaryo vardır: 1. veritabanı kontrollü hareketleri kullanmak istiyoruz. SSIS, görevleri gerçekleştirmek için birkaç bağlantı açmayı seçerse, SQL işleminiz hepsini kapsamaz. SSIS'yi yalnızca açmak için zorlamak, komutlarınızın hepsinin aynı işlemde kayıtlı olmasını sağlar. 2. Veritabanınız "yetersiz" veya yük altında ve SSIS paketinizin etkisini azaltmak istiyorsunuz. SSIS'i yalnızca bir bağlantıyla kısıtlamak, bununla ilgili yardımcı olabilir.

İlgili konular