Captures instantanées des publications de fusion avec des filtres paramétrés

Lorsque vous utilisez des filtres de lignes paramétrés dans les publications de fusion, la réplication initialise chaque abonnement avec une capture instantanée en deux parties. Une capture instantanée est d'abord créée. Elle contient tous les objets nécessaires à la publication ainsi que le schéma des objets publiés mais pas les données. Ensuite, chaque abonnement est initialisé avec une capture instantanée qui comprend les objets et le schéma provenant de la capture instantanée du schéma ainsi que les données appartenant à la partition de l'abonnement. Si plusieurs abonnements reçoivent une partition donnée (en d'autres termes, s'ils reçoivent les mêmes schéma et données), la capture instantanée de cette partition n'est créée qu'une seule fois ; plusieurs abonnements sont initialisés à l'aide de la même capture instantanée. Pour plus d'informations sur les filtres de lignes paramétrés, consultez Filtres de lignes paramétrés.

Pour créer des captures instantanées de publication avec des filtres paramétrés, trois méthodes sont possibles :

  • Vous pouvez prégénérer des captures instantanées pour chaque partition. Cette option vous permet de contrôler le moment où les captures instantanées sont générées.

    Vous pouvez également choisir d'actualiser les captures selon une planification définie. Les nouveaux Abonnés à une partition dont vous avez créé une capture instantanée reçoivent une capture à jour.

  • Vous pouvez autoriser les Abonnés à demander la génération et l'application d'une capture instantanée lors de leur première synchronisation. Cette option permet aux nouveaux Abonnés de se synchroniser sans intervention d'un administrateur (l'Agent SQL Server doit être en cours d'exécution sur le serveur de publication pour que la capture instantanée puisse être générée).

    Notes

    Si le filtrage d'un ou plusieurs articles de la publication donne des partitions qui ne se chevauchent pas et sont uniques pour chaque abonnement, les métadonnées sont nettoyées à chaque exécution de l'Agent de fusion. Cela signifie que la capture instantanée partitionnée expire plus rapidement. Lorsque vous optez pour cette méthode, envisagez d'autoriser les Abonnées à initialiser la génération et la remise de capture instantanée. Pour plus d'informations sur les options de filtrage, consultez Filtres de lignes paramétrés.

  • Vous pouvez générer manuellement une capture instantanée pour chaque Abonné avec l'Agent de capture instantanée. L'Abonné doit alors fournir l'emplacement de la capture instantanée à l'Agent de fusion afin qu'il puisse extraire et appliquer la capture instantanée appropriée.

    Notes

    Cette option est prise en charge pour assurer la compatibilité descendante et n'autorise pas les partages de captures instantanées FTP.

L'approche la plus souple est celle qui consiste à combiner les options de capture instantanée prégénérée et de capture demandée par l'Abonné : les captures instantanées sont prégénérées et actualisées à intervalles planifiés (généralement pendant les heures creuses) mais un Abonné peut générer sa propre capture en cas de création d'un abonnement nécessitant une nouvelle partition.

Prenons l'exemple de Adventure Works, qui possède une force de vente nomade chargée d'approvisionner en stock différents magasins. Chaque commercial reçoit un abonnement basé sur son nom de connexion, lequel extrait les données relatives aux magasins dont le commercial est responsable. L'administrateur choisit de prégénérer des captures instantanées et de les actualiser tous les dimanches. De temps à autre, un nouvel utilisateur est ajouté au système et a besoin de données pour une partition dont il n'existe aucune capture disponible. L'administrateur décide par ailleurs d'autoriser les captures instantanées initialisées par l'Abonné pour éviter que ce dernier se retrouve dans une situation où il est incapable de s'abonner à la publication car aucune capture instantanée n'est disponible. Lorsque le nouvel Abonné se connecte pour la première fois, la capture est générée pour la partition spécifiée et appliquée à l'Abonné (l'Agent SQL Server doit être en cours d'exécution sur le serveur de publication pour que la capture puisse être générée).

Pour créer une capture instantanée d'une publication avec des filtres paramétrés

Paramètres de sécurité de l'Agent de capture instantanée

L'Agent de capture instantanée crée des captures de chaque partition. Pour les captures instantanées prégénérées et celles demandées par un Abonné, l'Agent s'exécute et se connecte avec les informations d'identification spécifiées au moment de la création du travail de l'Agent de capture instantanée pour la publication (ce travail est créé par l'Assistant Nouvelle publication ou par sp_addpublication_snapshot). Pour modifier les informations d'identification, utilisez sp_changedynamicsnapshot_job. Pour plus d'informations, consultez sp_changedynamicsnapshot_job (Transact-SQL).