2010-03-17 16 views
3

J'ai un scénario dans lequel je devais déplacer une grande quantité de données, et j'ai besoin d'utiliser BizTalk pour contrôler le flux et contenir la logique métier. Le problème est que BizTalk ne sera pas capable de gérer la quantité de données qui doit être déplacée.Appel de SSIS à partir de BizTalk Orchestration

Nous avons décidé d'utiliser une orchestration BizTalk pour lancer un package SSIS qui effectue le gros du travail. Cependant, il y a une mise en garde dans le fait que nous devons être en mesure de transmettre des informations dans SSIS telles que l'emplacement du fichier et des informations sur la façon de diviser certaines données.

Ma question est, quelle est la meilleure façon d'appeler SSIS à partir d'une orchestration étant donné ces paramètres? Dois-je créer un service web autour d'elle? Y a-t-il un adaptateur ou une procédure stockée que je peux appeler? Ou y a-t-il un moyen de l'appeler directement à partir de l'orchestration?

Répondre

0

Nous avons fini par avoir besoin de transmettre des variables au package SSIS pour qu'il corresponde de nouveau à l'orchestration qui l'avait lancé. Nous avons également besoin d'utiliser la même orchestration mais de lancer des packages SSIS différents en fonction de l'emplacement de réception.

Nous avons fini avec une solution comme ceci:

  1. Orchestration appelle une procédure stockée avec deux paramètres: GUID corrélation et emplacement de réception.
  2. La procédure stockée stocke les valeurs requises dans la table de configuration SSIS.
  3. La procédure stockée appelle serveur SQL Job Agent selon le cas
  4. exécute Job emploi SSIS
  5. SSIS emploi se termine avec succès ou a des erreurs et écrit le résultat dans un fichier XML avec le GUID corrélation. BizTalk prend le fichier XML et corrèle sur le GUID
  6. BizTalk prend en charge la gestion des erreurs en cas de besoin.

Notre collègue a écrit une explication beaucoup plus détaillée de cette solution here, pour toute personne intéressée.

+0

lien mort - pouvez-vous s'il vous plaît réviser? –