Dans ArcGIS Pro, le concept d’historique des données en branche désigne l’enregistrement détaillé des modifications apportées aux jeux de données qui sont inscrits en tant que branche versionnée au sein d’une géodatabase. Chaque modification (insertion, mise à jour ou suppression) est consignée en tant que nouvelle entrée dans la table métier. Grâce à ce suivi méticuleux des modifications, un historique des modifications est conservé et vous permet de gérer et d’examiner efficacement l’évolution de vos données dans le temps. Cependant, lorsque les données sont modifiées, les mises à jour s’accumulent et l’archive peut se développer considérablement, ce qui peut épuiser la capacité de stockage.
Outil Nettoyer l’historique des données en branche
Pour résoudre ce problème, l’outil de géotraitement Nettoyer l’historique des données en branche est disponible. Il a été conçu pour faciliter la gestion et le nettoyage de l’historique du versionnement de branche. Le processus de nettoyage implique la suppression des enregistrements d’archive retirés qui ne sont plus référencés par aucune version ou branche. L’outil identifie les enregistrements qui peuvent sans risque être nettoyés en fonction de certains critères, en s’assurant que seules les entrées appropriées sont supprimées tout en conservant les données historiques nécessaires. 
Pratiques conseillées pour l’utilisation de l’outil Nettoyer l’historique des données en branche
L’outil Prune Branch History (Nettoyer l’historique des données en branche) est une ressource précieuse pour gérer la taille des jeux de données en branche versionnées en supprimant les données historiques inutiles. Le suivi de ces pratiques conseillées vous aidera à optimiser votre utilisation de cet outil et à garantir une expérience fluide afin que votre géodatabase demeure efficace et bien organisée.
Réaliser des opérations de maintenance régulières : vous devez réconcilier et réinjecter les modifications régulièrement afin de fusionner vos mises à jour dans la version par défaut, dans l’idéal tous les jours ou toutes les semaines. Les versions non réconciliées, les conflits non résolus et les versions non supprimées après réconciliation peuvent empêcher le nettoyage des lignes.

En savoir plus sur les scénarios de versions de branche et sur la réconciliation et la réinjection des mises à jour dans une version de branche.
-
Établir des critères de nettoyage : une définition claire de vos critères de nettoyage, tels que des dates spécifiques ou des conditions requises en matière de performances, vous aidera à créer des processus de nettoyage plus efficaces.
Identifier les données à nettoyer : choisissez une date limite pour les données à nettoyer, en fonction des besoins de vos processus et de la signification des données historiques.
Réaliser une exécution test : utilisez l’outil avec l’option Report Only (Consigner uniquement) activée. Cette méthode ne nettoie pas les données. Elle génère simplement un rapport dans le résultat Output Log File (Fichier journal en sortie) sur le nombre d’enregistrements archivés pouvant être nettoyés.
-
Examiner le fichier journal : une fois que vous avez exécuté l’outil, examinez le résultat Output Log File (Fichier journal en sortie) créé pour voir combien d’enregistrements d’archive sont éligibles au nettoyage. Surveillez les avertissements ou erreurs qui ont trait au processus de nettoyage dans les fichiers journaux et prenez les mesures appropriées.
Sauvegarder les données : réalisez toujours une sauvegarde de la base de données entière avant d’utiliser l’outil Nettoyer l’historique des données en branche. Cette sauvegarde garantit que vous pouvez restaurer vos données si nécessaire.
-
Planifier l’exécution de l’outil : pour réduire l’impact système, il est préférable d’exécuter l’outil en dehors des heures de pointe, pendant les week-ends ou aux heures où le service d’entités qui référence le jeu de données en branche versionnées peut être arrêté.
Éviter les moments référencés : vérifiez que toutes les versions restantes sont réconciliées.
Remarque :
Vous pouvez rencontrer des erreurs liées aux moments référencés lorsque vous utilisez l’outil Nettoyer l’historique des données en branche.
-
Surveiller et examiner : évaluez régulièrement les versions de branche afin d’identifier les données historiques qui peuvent nécessiter un nettoyage. De plus, effectuez le suivi de la taille de vos jeux de données en branche versionnées et exécutez l’outil Nettoyer l’historique des données en branche comme il convient pour gérer efficacement le stockage.
Conditions préalables à l’utilisation de l’outil Nettoyer l’historique des données en branche
Avant d’utiliser l’outil de géotraitement Nettoyer l’historique des données en branche, les conditions préalables suivantes doivent être remplies.
- L’outil peut uniquement être exécuté par le propriétaire du jeu de données spécifié dans Input Dataset (Jeu de données en entrée).
Conseil :
Seul l’administrateur de géodatabase peut afficher toutes les versions privées. Par conséquent, les propriétaires de jeux de données doivent le consulter pour connaître le moment référencé le plus ancien pour définir Prune Before Date (Nettoyer les éléments antérieurs à [date/heure]).
- La sélection Input Dataset (Jeu de données en entrée) doit être inscrite en tant que branche versionnée.
Avant de spécifier la sélection Input Dataset (Jeu de données en entrée), les propriétaires doivent vérifier que Versioning Type (Type de versionnement) est défini sur Branch (Branche) dans la boîte de dialogue Geodatabase Connection Properties (Propriétés de connexion de géodatabase).

- La sélection Input Dataset (Jeu de données en entrée) peut être une table unique, une classe d’entités ou un jeu de classes d’entités. Si un jeu de classes d’entités est sélectionné, l’outil traite également toutes les classes d’entités qu’il contient, ainsi que toutes les données associées en dehors de ce jeu de données, en excluant les autres se trouvant dans différents jeux de classes d’entités.
Conseil :
Si une classe d’entités a été supprimée d’un jeu de classes d’entités, il est conseillé d’utiliser le jeu de classes d’entités même comme Input Dataset (Jeu de données en entrée).
Un verrou de structure exclusif est requis sur les données Input Dataset (Jeu de données en entrée) pour garantir la cohérence dans un environnement multiutilisateur. Ce verrou empêche toute modification de structure alors que d’autres utilisateurs accèdent au jeu de données. Une planification minutieuse est essentielle. Par exemple, vous pouvez programmer des modifications de structure lorsque les autres utilisateurs sont hors connexion afin de ne pas impacter leur travail. Si le jeu de données est publié en tant que service, utilisez ArcGIS Server Manager pour arrêter le service avant d’effectuer des modifications de structure.
En savoir plus sur l’affichage et la gestion des verrous sur vos jeux de données
Utiliser l’outil Prune Branch History (Nettoyer l’historique des données en branche)
Pour supprimer les enregistrements d’archive retirés des jeux de données en branche versionnées à l’aide de l’outil Prune Branch History (Nettoyer l’historique des données en branche), procédez comme suit :
Conseil :
L’outil Nettoyer l’historique des données en branche nettoie les enregistrements archivés uniquement dans la version par défaut.
- Pour ouvrir l’outil de géotraitement Prune Branch History (Nettoyer l’historique des données en branche), accédez à l’onglet Analysis (Analyse) et cliquez sur Tools (Outils) dans le groupe Geoprocessing (Géotraitement). Vous pouvez également rechercher l’outil dans le jeu d’outils Data Management Tools (Outils de gestion des données) de la boîte à outils Versions.

La boîte de dialogue de l’outil de géotraitement Nettoyer l’historique des données en branche s’ouvre avec les paramètres par défaut.

- Pour Input Dataset (Jeu de données en entrée), dans le menu déroulant, sélectionnez un jeu de données unique ou utilisez le bouton de navigation
pour sélectionner un jeu de classes d’entités, une classe d’entités ou une table contenant les données en branche versionnées à nettoyer. - Pour Output Log File (Fichier journal en sortie), utilisez le bouton de navigation
pour spécifier l’emplacement d’enregistrement du fichier journal en sortie. - Vous pouvez également sélectionner le paramètre Report Only (Consigner uniquement) pour générer uniquement un rapport sur le nombre d’enregistrements d’archive éligibles ou ne pas le sélectionner pour procéder au nettoyage.
- Si le paramètre Report Only (Consigner uniquement) est sélectionné, seul le nombre total d’enregistrements éligibles est indiqué dans le résultat Output Log File (Fichier journal en sortie). Les enregistrements eux-mêmes ne sont pas nettoyés. L’option Report Only (Consigner uniquement) est activée par défaut.

- Les enregistrements d’archive éligibles seront nettoyés si le paramètre Report Only (Consigner uniquement) n’est pas sélectionné.

- Si le paramètre Report Only (Consigner uniquement) est sélectionné, seul le nombre total d’enregistrements éligibles est indiqué dans le résultat Output Log File (Fichier journal en sortie). Les enregistrements eux-mêmes ne sont pas nettoyés. L’option Report Only (Consigner uniquement) est activée par défaut.
- Vous pouvez également sélectionner le paramètre Only Prune System Tables (Nettoyer uniquement les tables système) pour ne cibler que les tables internes.
Lorsque ce paramètre est activé, seules les tables système internes éligibles des jeux de données de contrôleur sont listées ou nettoyées.
- Si le paramètre Only Prune System Tables (Nettoyer uniquement les tables système) est activé, seules les tables système internes éligibles des jeux de données de contrôleur sont nettoyées ou signalées dans le fichier journal.
- Par défaut, ce paramètre Only Prune System Tables (Nettoyer uniquement les tables système) est désactivé, ce qui signifie que toutes les tables éligibles seront incluses.
Remarque :
Avec ArcGIS Pro 3.5, les tables système internes se réfèrent spécifiquement aux tables de topologie de réseau du réseau de distribution, qui stockent toutes les associations, telles que la connectivité et l’inclusion. - Définissez éventuellement une valeur pour le paramètre Prune Before Date (Nettoyer les éléments antérieurs à [date/heure]) pour nettoyer les enregistrements archivés dont la date est antérieure à une date et une heure spécifiées.
Conseil :
Vérifiez que la date est exprimée en UTC (Temps universel coordonné) pour assurer la cohérence de la référence.
- Si le champ Prune Before Date (Nettoyer les éléments antérieurs à [date/heure]) est vide, l’outil nettoie autant que possible l’historique d’archivage éligible en fonction des moments référencés.

- Si une date est spécifiée dans le champ Prune Before Date (Nettoyer les éléments antérieurs à [date/heure]), seules les données archivées jusqu’à ce moment seront supprimées.

Remarque :
Si la valeur Prune Before Date (Nettoyer les éléments antérieurs à [date/heure]) n’est pas valide parce qu’une version ou un réplica de service d’entités utilise un moment référencé antérieur à la date de nettoyage demandée, l’outil affiche un avertissement et indique le moment le plus ancien pouvant être utilisé, ainsi que des détails sur la version de blocage.
En savoir plus sur les moments référencés, l’ouverture de la vue des versions, la gestion des versions de branche et la gestion des réplicas de service d’entités.
- Si le champ Prune Before Date (Nettoyer les éléments antérieurs à [date/heure]) est vide, l’outil nettoie autant que possible l’historique d’archivage éligible en fonction des moments référencés.
- Cliquez sur Run (Exécuter) pour générer un rapport ou nettoyer l’historique des données en branche sur le jeu de données en branche versionnées spécifié.
Remarque :
Vous pouvez également sélectionner Schedule Run (Planifier l’exécution) pour exécuter l’outil à une heure ultérieure avec une récurrence facultative en utilisant le menu déroulant situé en regard du bouton Run (Exécuter).

En savoir plus sur la planification des outils de géotraitement
Une fois que l’outil Prune Branch History (Nettoyer l’historique des données en branche) a été exécuté, ouvrez la boîte de dialogue des propriétés de votre table ou classe d’entités. Sous l’onglet Source, le paramètre Archive History (Historique d’archivage) indique la date la plus récente à laquelle l’outil a été utilisé pour nettoyer les lignes retirées de ce jeu de données.
En savoir plus sur l’outil Nettoyer l’historique des données en branche
En savoir plus sur l’historique des données en branche et sur les concepts clés inhérents à l’utilisation de l’outil Nettoyer l’historique des données en branche.
Remarque :
Une fois les enregistrements nettoyés, ils sont supprimés définitivement. Les requêtes historiques aux moments spécifiés ne peuvent plus être réalisées puisque les données ne sont plus disponibles.
Gestion des erreurs au cours du nettoyage
Si l’outil Prune Branch History (Nettoyer l’historique des données en branche) rencontre une erreur au cours du traitement (en raison de problèmes de mémoire ou d’une perte de connexion, par exemple), résolvez l’erreur et relancer l’outil.
Un message d’avertissement apparaît si l’outil Nettoyer l’historique des données en branche rencontre des moments référencés qui empêchent l’opération. Ce message comportera des détails sur les moments référencés et indiquera les versions qui entraînent ce blocage.
Si l’outil Prune Branch History (Nettoyer l’historique des données en branche) renvoie une erreur indiquant que la valeur du paramètre Prune Before Date (Nettoyer les éléments antérieurs à [date/heure]) n’est pas valide en raison d’un moment référencé, vérifiez les propriétés de version de l’ancêtre commun et de l’ancêtre précédent dans la vue des versions.
Si l’opération de nettoyage est bloquée, vous devrez peut-être ajuster le paramètre Prune Before Date (Nettoyer les éléments antérieurs à [date/heure]) sur une date ultérieure qui n’entre en conflit avec aucun moment référencé.
Consultez Historique des données en branche pour en savoir plus sur le fonctionnement de l’outil Nettoyer l’historique des données en branche, ainsi que les concepts clés et points à prendre en compte pour nettoyer l’historique des données en branche.
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?