Insertion en masse dans SQL Server à partir d'un invité VMWare à l'aide d'un commutateur distribué


10

Ce n'est généralement pas un problème de serveur SQL, mais la configuration semble affecter uniquement les INSERTS EN VRAC aux serveurs SQL.

Nous avons récemment déplacé VM Hardware et tous les invités déplacés ont vu leurs commutateurs virtuels passer de standard à distribué.

J'ai alors commencé à recevoir

Une erreur fatale s'est produite lors de la lecture du flux d'entrée à partir du réseau. La session sera terminée (erreur d'entrée: 64, erreur de sortie: 0)

sur deux serveurs SQL pendant les opérations BULK INSERT. L'un des serveurs SQL était une machine virtuelle avec la nouvelle configuration et l'autre était un serveur physique. Les deux opérations BULK INSERT provenaient d'une machine virtuelle avec la nouvelle configuration. Les BULK INSERTs n'échouaient pas à chaque fois, c'était très aléatoire quand c'était le cas.

Lorsque nous avons changé le commutateur virtuel pour qu'il devienne un commutateur standard au lieu d'un commutateur distribué, le problème disparaît.

Je cherche plus d'explication pour expliquer pourquoi cela ne fonctionne pas avec un commutateur distribué au lieu d'une résolution. Je suppose que l'opération BULK INSERT est série et avec un commutateur distribué, les paquets sont acheminés via différents hôtes, dont certains peuvent être plus occupés que d'autres, et arrivent sur le serveur de destination au-delà d'un certain seuil de latence. (remarque: il n'y a rien dans le journal des événements de Windows au moment des erreurs sur le serveur source ou de destination)

MISE À JOUR: il s'avère que le problème était dû à la carte réseau. Toutes nos machines virtuelles ont été configurées avec une carte réseau E1000 qui fonctionnait assez bien sur les commutateurs standard. Une fois que nous sommes passés aux commutateurs distribués, nous avons commencé à voir des problèmes avec les gros transferts de données, pas seulement les requêtes SQL. La modification de la carte réseau en VMXNET3 semble avoir résolu le problème.


La VM affiche-t-elle des erreurs?
user1207758

Aucune erreur sur l'invité ou l'hôte VM.
Bob Klimes

Réponses:


0

Problème pur de vmware / réseau, il apparaît.

Je suggère d'essayer de trouver un problème de connectivité entre les clients et le serveur qui n'est pas SQL (ping ou quoi que ce soit). Cela vous aidera à trouver un chemin de dépannage plus clair.


Il semble que ce soit un problème de vmware car je peux recréer un comportement avec une copie de fichier volumineuse
Bob Klimes

1

Je suggérerais d'utiliser Wireshark ou Microsoft NetMon et de flairer le trafic pour voir ce qui se passe ici. Peut également être lié à la fonctionnalité de déchargement de cheminée TCP, en supposant que quelque chose a changé au niveau de la carte réseau:

http://support.microsoft.com/kb/942861


0

nous avons rencontré cette erreur il y a une semaine. notre équipe réseau, notre équipe sécurité et notre équipe base de données recherchent tout. À la fin des recherches, nous avons détecté la ressource d'erreur. C'est le périphérique IPS. Demandez à votre équipe de sécurité s'il y a une signature sur le périphérique IPS.


Quel périphérique IPS? Comment votre environnement se compare-t-il à celui du demandeur et comment résoudra-t-il son problème?
Colin 't Hart
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.