Recommandations pour la migration de jeux de données schématiques volumineux

Avant de migrer un jeu de données schématiques contenant un grand nombre de diagrammes schématiques, il est recommandé de vérifier la taille des diagrammes schématiques que vous voulez migrer et d'analyser la configuration du jeu de données schématiques.

La migration est un processus long qui consomme beaucoup de mémoire dans les cas suivants :

Dans ces différents cas, il est fortement recommandé de migrer votre jeu de données schématiques en suivant les recommandations de la section Migration de jeux de données schématiques volumineux, étape par étape ci-dessus.

La section A propos des performances lors de l'exécution de processus parallèles pour migrer des diagrammes schématiques fournit des recommandations concernant le nombre de machines que vous devez configurer et le nombre de processus que vous pouvez exécuter en parallèle pour migrer un grand nombre de diagrammes schématiques dans un délai acceptable.

Migration de jeux de données schématiques volumineux, étape par étape

Phase 1 : préparation du jeu de données schématiques à migrer

Cette première phase consiste à analyser la configuration et l'organisation du jeu de données schématiques antérieur à la version 10 que vous voulez migrer et à le préparer pour une migration efficace :

  1. Démarrez ArcMap sur un client antérieur à la version 10 sur lequel l'extension ArcGIS Schematics est installée.
  2. Accédez au jeu de données schématiques antérieur à la version 10 que vous voulez migrer, sélectionnez-le et modifiez-le dans Schematic Designer.
  3. Analysez la définition de chaque classe d'entités schématiques et vérifiez qu'elle comporte des attributs de type Requête, Fonction, Avec mise en forme ou Script.
  4. Comme le décrit la rubrique Préparation des jeux de données de schéma créés avec une version antérieure à la version 10 :
    • Vérifiez la référence spatiale définie pour chaque classe d'entités schématiques.
    • Configurez l'attribut ContainerMark pour les classes d'entités schématiques de nœud que vous voulez migrer comme conteneur.
  5. Vous pouvez également créer des dossiers schématiques temporaires dans votre jeu de données schématiques antérieur à la version 10 et y transférer des sous-ensembles de diagrammes schématiques.

Phase 2 : migration des définitions du jeu de données schématiques

Cette deuxième phase consiste à migrer les définitions du jeu de données schématiques.

  1. Lancez ArcCatalog.
  2. Cliquez avec le bouton droit sur le jeu de données schématiques de version antérieure à 10 à migrer dans l'arborescence Catalogue et pointez sur Migrer vers la version Schematics actuelle.
  3. Spécifiez le type de géométrie pour le nœud schématique et les classes de traçage à migrer dans la boîte de dialogue Sélectionner le type de géométrie qui s'ouvre, puis fermez la boîte de dialogue.
  4. Dans la boîte de dialogue Migrer vers la version Schematics actuelle qui s'ouvre :
    • Spécifiez le jeu de données schématiques en sortie vers lequel effectuer la migration.
    • Cochez Définitions dans la section Activité en sortie.
    • Cliquez sur OK.
Le processus de migration commence. Au terme de l'opération, les définitions du jeu de données schématiques sont migrées.

Phase 3 : migration simultanée de différents sous-ensembles de diagrammes schématiques

Cette troisième phase porte sur la migration des diagrammes schématiques renfermés dans le jeu de données schématiques antérieur à la version 10.

Elle consiste en l'exécution de plusieurs processus de migration parallèles sur différentes machines, chaque processus de migration s'opérant sur différents sous-ensembles de diagrammes schématiques.

Sur chaque machine 10.x, vous devez lancer un ou plusieurs processus de migration comme suit :

  1. Lancez ArcCatalog.
  2. Cliquez avec le bouton droit de la souris sur votre jeu de données schématiques antérieur à la version 10 dans l'arborescence Catalogue et choisissez Migrer vers la version Schematics actuelle.
  3. Fermez la boîte de dialogue Sélectionner le type de géométrie.
  4. Dans la boîte de dialogue Migrer vers la version Schematics actuelle qui s'ouvre :
    • Spécifiez le jeu de données schématiques en sortie vers lequel effectuer la migration.
    • Dans la section Activité en sortie, procédez comme suit :
      • Cochez Diagrammes.
      • Cochez Spécifier des filtres et configurez les filtres SQL à utiliser pour déterminer le sous-ensemble de diagrammes schématiques que ce processus va migrer. Par exemple, créez une expression SQL basée sur un FOLDERID correspondant à un dossier temporaire que vous avez créé au cours de la phase 1.
      • Pour les diagrammes schématiques contenant des entités schématiques dont les attributs sont de type Requête, Fonction, Avec mise en forme ou Script, décochez l'option Avec des évaluations d'attribut.
        RemarqueRemarque :

        Si la définition de votre jeu de données schématiques ne comporte aucun attribut schématique Requête, Fonction, Avec mise en forme ou Script, vous pouvez cocher la case Avec des évaluations d'attribut. L'exécution de la migration avec cette option cochée ou non n'a aucun impact sur le temps nécessaire à la migration de vos diagrammes dans ce cas.

    • Cliquez sur OK.
Le processus de migration commence. Au terme de la migration, le sous-ensemble de diagrammes schématiques est migré dans le jeu de données schématiques en sortie.
RemarqueRemarque :

Au cours de chaque processus de migration, lors de la migration d'un diagramme donné, l'application Schematics vérifie si ce diagramme existe déjà dans le jeu de données schématiques en sortie. Ce diagramme n'est migré que s'il n'est pas présent dans le jeu de données schématiques en sortie.

Phase 4 : mise à jour des attributs dans les entités schématiques des diagrammes schématiques migrés (phase facultative)

Si vous décochez la case Avec des évaluations d'attribut lors de la migration d'un sous-ensemble de diagrammes, aucun des attributs de type Requête, Fonction, Avec mise en forme ou Script définis pour les entités schématiques dans les diagrammes migrés n'est évalué. Dans ce cas, vous devez mettre à jour ces attributs ultérieurement.

Pour les diagrammes schématiques basés sur le générateur standard ou configurés à partir de requêtes personnalisées, l'exemple de script Python suivant illustre comment ces attributs peuvent être facilement et rapidement mis à jour. Il repose sur l'outil de géotraitement Mettre à jour les diagrammes et fonctionne dans différentes situations :

  • Cas A : actualisation des attributs sur tous les diagrammes schématiques que vous avez migrés dans un dossier schématique donné
  • Cas B : actualisation des attributs sur tous les diagrammes schématiques migrés qui reposent sur un modèle de diagramme spécifié
  • Cas C : actualisation des attributs sur tous les diagrammes schématiques migrés qui n'ont pas été mis à jour depuis N jours
# Name: RefreshingAttributesInMigratedDiagrams.py
# Description: Refreshing attributes on schematic features contained in migrated diagrams
# Requirement: ArcGIS Schematics extension

# import system modules
import arcpy
msgNoLicenseAvailable = "ArcGIS Schematics extension license required"

try:
    # Checks out the ArcGIS Schematics extension license
    if arcpy.CheckExtension("Schematics") == "Available":
        arcpy.CheckOutExtension("Schematics")
    else:
        raise Exception(msgNoLicenseAvailable)

    # Sets Schematics general settings
    dataLocation="C:/ArcGIS/ArcTutor/Schematics/Schematics_In_ArcMap"
    gdbName="ElecDemo.gdb"
    in_schDataset="ElecDemo"
    in_schFolder="MyTemporaryFolderName"
    in_diagTempName="GeoSchematic"
    updateOption="REFRESH"
    recOption1="RECURSIVE"
    nbDays="60"

    # Sets environment settings
    arcpy.env.overwriteOutput = True
    arcpy.env.workspace = dataLocation + "/" + gdbName

    # Case A - Refreshing attributes on schematic diagrams that were migrated on a particular schematic folder.
    arcpy.UpdateDiagrams_schematics(in_schDataset + "/" + in_schFolder1,"REFRESH")

    # Case B - Refreshing attributes on all migrated schematic diagrams that are based on a specified diagram template.
    arcpy.UpdateDiagrams_schematics(in_schDataset, "REFRESH", "RECURSIVE", in_diagTempName)

    # Case C - Refreshing attributes on all migrated schematic diagrams that have not been updated for N days.
    arcpy.UpdateDiagrams_schematics(in_schDataset, "REFRESH", "RECURSIVE", "#", nbDays)

    # Returns the ArcGIS Schematics extension license
    arcpy.CheckInExtension("Schematics")

    print "Script completed successfully"

except Exception as e:
    # If an error occurred, print line number and error message
    import traceback, sys
    tb = sys.exc_info()[2]
    print "An error occurred on line %i" % tb.tb_lineno
    print str(e)
Cet exemple de script peut vous aider à écrire votre propre script afin d'actualiser les attributs des entités schématiques renfermées dans vos diagrammes migrés.
RemarqueRemarque :

L'option REFRESH builder_ est essentielle dans ce script. Elle permet de mettre à jour le contenu des diagrammes en actualisant uniquement les attributs des entités schématiques associées aux entités de réseau ou les enregistrements renvoyés par les requêtes personnalisées. Aucun autre changement dans ces entités de réseau ou enregistrements interrogés n'est répercuté dans le diagramme schématique après la mise à jour.

Pour en savoir plus sur la mise à jour des diagrammes à l'aide de l'option Actualiser les attributs

Pour actualiser les attributs dans vos diagrammes migrés, procédez comme suit :

  1. Lancez ArcCatalog.
  2. Copiez et collez votre script dans la fenêtre Python.
  3. Appuyez sur Entrée.

Phase 5 : réorganisation de votre jeu de données schématiques migré (phase facultative)

Si vous avez créé des dossiers schématiques temporaires dans votre jeu de données schématiques antérieur à la version 10 pour migrer facilement vos diagrammes schématiques dans chaque dossier, les dossiers temporaires sont également présents dans le jeu de données schématiques migré. Vous pouvez maintenant transférer les diagrammes schématiques migrés vers ces dossiers à l'emplacement schématique voulu et supprimer les dossiers temporaires.

A propos des performances lors de l'exécution de processus parallèles pour migrer des diagrammes schématiques

Pour migrer un grand nombre de diagrammes schématiques particulièrement volumineux (par exemple des diagrammes contenant 2 000 entités schématiques), il est recommandé d'exécuter plusieurs processus de migration parallèles sur différentes machines, chaque processus de migration s'opérant sur différents sous-ensembles de diagrammes schématiques. Les sections suivantes détaillent la configuration requise pour les machines clientes qui prendront en charge le processus de migration et le serveur de base de données vers lequel la migration va s'effectuer, et fournissent des recommandations visant à adapter l'ampleur de ces processus.

Configuration requise pour les machines clientes ArcGIS Desktop 10.2

  • Processeur : double cœur minimum
  • Mémoire installée (RAM) : 4 Go au minimum pour prendre en charge la migration de 1 000 diagrammes schématiques volumineux en exécutant deux processus parallèles, chaque processus s'opérant sur 500 diagrammes schématiques.

    Une mémoire installée de 8 Go est recommandée pour le processeur en cas d'exécution de quatre processus parallèles et de migration de 2 000 diagrammes volumineux, à raison de 500 diagrammes par processus.

Configuration requise pour la machine du serveur de base de données

  • Mémoire installée (RAM) :16 Go au minimum
  • Taille de la base de données : si l'on considère que 1 000 diagrammes contenant 2 000 entités schématiques nécessitent chacun environ 1,5 Go d'espace disque, la base de données doit être correctement adaptée pour prendre en charge la taille des diagrammes qui seront migrés.

Adaptation des processus de migration pour une exécution en parallèle

La migration de diagrammes schématiques antérieurs à la version 10 renfermés dans des géodatabases fichiers vers des géodatabases fichiers ou SDE est assez rapide : 500 diagrammes schématiques volumineux sont migrés en une heure environ. Toutefois, la migration de diagrammes contenus dans un jeu de données schématiques antérieur à la version 10 et stockés dans des géodatabases SDE vers SDE est assez longue : 500 diagrammes volumineux sont migrés en six heures environ. Ce délai peut être doublé (à environ 12 heures) dans une instance comportant plusieurs attributs schématiques de type Requête, Fonction, Avec mise en forme ou Script, si ces attributs sont évalués au cours de la migration.

Si le nombre de diagrammes schématiques que vous voulez migrer est élevé (par exemple, 10 000 diagrammes), vous pouvez tous les migrer en une nuit en procédant comme suit :

  • Divisez les 10 000 diagrammes schématiques en 20 sous-ensembles. Répartissez, par exemple, vos diagrammes schématiques dans 20 dossiers schématiques temporaires.
  • Configurez quatre ou cinq machines clientes Desktop 10.2.
  • Démarrez quatre ou cinq processus de migration parallèles sur chaque machine cliente Desktop 10.2, chaque processus s'opérant sur un sous-ensemble de diagrammes particulier, par exemple sur un dossier schématique donné.

5/10/2014