Conservation de la hiérarchie des tables dans Réplication de données d'instance
Décidez si vous souhaitez répliquer une hiérarchie de tables parent-enfant et quelle stratégie utiliser pour répliquer les données dans Réplication de données d'instance (IDR).
Avant de créer un ensemble de réplications, déterminez si la table que vous souhaitez répliquer fait partie d’une hiérarchie de tables parent-enfant. Si c’est le cas, décidez si vous souhaitez conserver la hiérarchie et si vous souhaitez répliquer les données du point de vue parent (en conservant uniquement les colonnes appartenant à la table parent) ou du point de vue enfant (en conservant toutes les colonnes appartenant aux tables enfants). Passez en revue les stratégies disponibles suivantes.
- Stratégie 1 : préserver l’intégralité de la hiérarchie et répliquer les colonnes enfants
- Vous pouvez conserver l’intégralité de la hiérarchie, y compris toutes les colonnes de la table enfant, en créant une entrée sortante pour chaque table enfant et en spécifiant un filtre sys_class_name pour chaque table enfant.
Par exemple, pour répliquer la table de tâches et vous assurer que toutes les colonnes de toutes les tables enfants sont incluses, spécifiez les éléments suivants :
Tableau 1. Entrées sortantes Table Filtre Tâche sys_class_name=tâche Incident sys_class_name=incident Problème sys_class_name=problème Demande de changement sys_class_name=changement Et ainsi de suite, pour toutes les tables enfants, y compris les filtres avec chaque table pour le sys_class_name.
Avec cette stratégie, les enregistrements sont insérés dans chaque table enfant du consommateur, y compris les données des colonnes appartenant à chaque table enfant du producteur.
- Stratégie 2 : Préservez la hiérarchie, mais ne répliquez pas les colonnes enfants
- Pour conserver la hiérarchie mais uniquement répliquer les colonnes de la table parente, répliquez la table parente et incluez le champ Nom de classe [sys_class_name] dans la liste Champs inclus . L’inclusion du champ Nom de classe maintient la distinction entre les enregistrements parents et enfants sur l’instance du consommateur.Par exemple, si vous souhaitez répliquer la table Tâche et ses enfants (Incident, Problème, Demande de changement), mais uniquement répliquer les colonnes qui appartiennent à la table Tâche, spécifiez les éléments suivants :
Tableau 2. Entrée sortante Table Champs inclus Tâche Nom de classe Dans cette stratégie, la colonne sys_class_name de la table Tâche consommateur reçoit des entrées pour la table parente (tâche) et les tables enfants (incident, problème et changement), et les enregistrements sont insérés dans les tables enfants respectives du consommateur. Toutefois, sans le filtre sys_class_name, les colonnes uniques à chaque table enfant ne sont pas répliquées.
- Stratégie 3 : ignorer la hiérarchie et répliquer uniquement les données de table parentes
- Pour ignorer la hiérarchie et répliquer uniquement les enregistrements parents, répliquez la table parente et excluez le champ Nom de classe [sys_class_name] de la liste Champs inclus . L’exclusion du champ Nom de classe supprime la distinction entre les enregistrements parents et enfants sur l’instance de consommateur. Tous les enregistrements répliqués sur le consommateur seront des enregistrements de table parente.Par exemple, si vous souhaitez répliquer des enregistrements à partir de la table de tâches et considérer simplement tous les enregistrements comme des tâches à des fins de génération de rapports ou d’audit, spécifiez les éléments suivants :
Tableau 3. Entrée sortante Table Champs inclus Tâche Tous les champs à l’exception du nom de classe Dans cette stratégie, lorsque vous répliquez la table Tâche, tous les enregistrements répliqués ont une valeur tâche dans la colonne sys_class_name et aucune colonne appartenant aux tables enfants n’est répliquée.
Modification du comportement hérité
Vous pouvez répliquer toute la hiérarchie de table parent-enfant dans les ensembles de Utahréplications créés avant , mais vous devez créer des entrées sortantes distinctes pour chaque table et inclure le filtre sys_class_name respectif dans chaque table. Cela signifie que vous pouvez utiliser la stratégie 1 ci-dessus pour reproduire la hiérarchie, mais pas les stratégies 2 ou 3.
Vous pouvez également utiliser n’importe quelle stratégie en modifiant l’ensemble de réplications du producteur et en définissant la valeur du champ Utiliser le nom de table sur Vrai. Notez que ce champ est masqué par défaut et que vous devez l’ajouter à votre formulaire Ensemble de réplications du producteur pour le modifier. Le champ Utiliser le nom de la table est défini par défaut sur Vrai pour tous les nouveaux ensembles de réplications de producteurs que vous créez à partir de la version Utah.