2011-11-02 4 views
0

Je viens de commencer à jouer avec la réplication de notre système et je ne suis pas sûr de la meilleure façon de gérer ce problème.Où stocker les données temporaires pendant la réplication?

Je veux filtrer des données, mais ce n'est pas aussi facile que "où columnName = 'abc'". J'écris donc un gros processus compliqué qui détermine quels enregistrements de chaque table vont être répliqués. Je stocke les PK pour chaque table dans les tables temporaires. J'ai envisagé que le pre_snapshot_script créerait et peuplerait ces tables et que le script post_snapshot les supprimerait. Les instructions de filtrage pour ces tables lisent alors quelque chose comme "où PK dans (sélectionnez pk_id à partir de la table temporaire)"

Donc. Où puis-je mettre ces données? Ai-je besoin de créer des tables persistantes dans ma base de données afin de les marquer pour la réplication? Je suppose que les tables temporaires #temp ou ## ne fonctionneront pas.

Répondre

0

Je pense que vous êtes PK dans (sélectionnez PK à partir de la table) idée peut-être être correcte.

Vous avez raison, il faudrait que ce soit une table persistante. Pouvez-vous fournir un peu plus de détails sur le scénario? Générez-vous des snapshots toutes les heures/tous les jours/toutes les semaines? Toute réplication transactionnelle se poursuit-elle après? Quel genre de logique utilisez-vous? Ces réponses peuvent vous aider à éclairer d'autres solutions ou vous aider à vérifier que votre chemin d'accès initial était correct.

Questions connexes