2010-11-05 18 views
1

En fait, je suis en utilisant le Microsoft OLE DB Provider for SQL Server avec ADO, ma question est sur le paramètre Packet Size qui est utilisé dans la chaîne de connexion, la documentation MSDN ditQuestion sur le fournisseur Microsoft OLE DB pour SQL Server

Taille du paquet Indique une paquet réseau taille en octets. La taille d'un paquet valeur de la propriété doit être comprise entre 512 et 32767. La taille du paquet réseau par défaut SQLOLEDB est 4096.

existe un avantage ou un inconvénient dans l'exercice de ma demande si je suis utiliser la valeur max (32767) pour ce paramètre?

Répondre

2

Vous utiliseriez une petite taille de paquet pour syntoniser de nombreuses petites transactions courtes, et une grande taille de paquet pour syntoniser moins de gros transferts.

Raison: Trop grand d'une taille de paquet pour de petits transferts, et vous gaspillez des ressources à transférer des données matelassées. Trop petit d'une taille de paquet sur de gros transferts et vous gaspillez des ressources générant/transférant des en-têtes de paquet.

0

Si vous ne faites que charger/charger en masse au maximum.

Le plus gros paquet est meilleur. C'est pas rembourré lorsque vous transférez réellement une plus petite quantité de données comme Kevin mentionné. Des paquets plus petits sont raisonnables si votre connexion est instable et que vous souhaitez que vos données s'affichent plus rapidement dès l'arrivée des premiers enregistrements. Avec des paquets plus gros, vous devrez attendre "plus longtemps" jusqu'à ce que vous obteniez les premiers résultats.