Modifier un indice spatial

La fonctionnalité est limitée dans la version Basic.

Pour tous les autres types spatiaux et géodatabases, il est rare de devoir gérer l’index spatial. Cependant, si vous remarquez une baisse des performances des requêtes spatiales après avoir ajouté ou supprimé un grand nombre d’entités, il se peut que vous constatiez une amélioration des performances des requêtes spatiales si vous reconstruisez (Oracle) ou recréez l’index spatial dans la classe d’entités affectée.

Vous pouvez être amené à modifier l’indice spatial d’une classe d’entités dans les cas suivants :

  • Si vous constatez une dégradation des performances lorsque vous utilisez la classe d’entités, reconstruisez ou recalculez l’indice spatial.
  • Si vous avez ajouté ou supprimé un grand nombre d’entités dans SQL Server et que le type de données spatiales de la classe d’entités est Geometry (Géométrie), validez l’index spatial pour déterminer si vous devez le recalculer ou s’il convient plutôt de mettre à jour l’étendue de la classe d’entités.
    Conseil :

    Vous pouvez voir le type de stockage de géométrie utilisé pour votre classe d’entités en consultant la propriété Storage (Stockage) sous l’onglet Source de la boîte de dialogue Feature Class Properties (Propriétés de la classe d’entités).

  • Vous souhaitez ajouter ou copier un grand nombre d’entités à une classe d’entités existante. Dans ce cas, vous pouvez supprimer l’indice spatial avant d’ajouter les données. Cela n’est pas obligatoire, mais supprimer l’indice spatial permet d’optimiser les performances de chargement des données. Créez un index spatial une fois que vous avez fini d’ajouter les entités.
Remarque :

La reconstruction, le recalcul ou la création d’un indice spatial pour une classe d’entités dans une géodatabase d’entreprise est une opération consommatrice de ressources du serveur. Elle ne doit pas être effectuée sur de grandes classes d'entités lorsque de nombreux utilisateurs sont connectés au serveur.

Notez également que ArcGIS Desktop Advanced ou Desktop Standard doit être installé pour modifier l’indice spatial d’une classe d’entités dans une géodatabase d’entreprise.

Reconstruire ou recalculer un indice spatial

Pour reconstruire ou recalculer un index spatial dans une classe d’entités de géodatabase fichier, mobile ou d’entreprise dans Oracle, Db2, PostgreSQL ou SQL Server (en utilisant le type spatial Geography (Géographie)), procédez comme suit :

  1. Dans la fenêtre Catalog (Catalogue), connectez-vous à la géodatabase qui contient la classe d’entités avec l’indice spatial à modifier.

    Pour les géodatabases d’entreprise, connectez-vous en tant que propriétaire de la classe d’entités.

  2. Cliquez avec le bouton droit de la souris sur la classe d'entités et choisissez Propriétés.
  3. Cliquez sur l'onglet Index.
  4. Développez la section Index spatial.
  5. Cliquez sur Recalculate (Recalculer) (ou sur Rebuild (Reconstruire) si votre classe d’entités se trouve dans Oracle).
    L’indice recalculé reflète les données actuelles.
  6. Cliquez sur OK pour fermer la boîte de dialogue Feature Class Properties (Propriétés de la classe d’entités).

Valider un index spatial dans SQL Server (Géometrie)

Pour savoir si vous devez recalculer l’index spatial ou l’étendue dans une classe d’identités peu performante utilisant la classe d’entités Geometry (Géométrie) dans SQL Server, validez l’index spatial.

  1. Dans la fenêtre Catalog (Catalogue), connectez-vous à la géodatabase qui contient la classe d’entités avec l’indice spatial à modifier.

    Pour les géodatabases d’entreprise, connectez-vous en tant que propriétaire de la classe d’entités.

  2. Cliquez avec le bouton droit de la souris sur la classe d'entités et choisissez Propriétés.
  3. Cliquez sur l'onglet Index.
  4. Développez la section Index spatial.
  5. Cliquez sur Validate (Valider) pour savoir s’il est nécessaire de recalculer l’indice spatial. La validation renvoie l’un des messages suivants :
    • The spatial index bounding box matches the feature class extent. (La zone de contour de l’indice spatial correspond à l’étendue de la classe d’entités.) : si vous recevez ce message, il n’est pas nécessaire de recalculer l’indice spatial. Cliquez sur OK pour fermer la boîte de dialogue Feature Class Properties (Propriétés de la classe d’entités).
    • The spatial index bounding box and feature class extent do not match. (La zone de contour de l’indice spatial et l’étendue de la classe d’entités ne correspondent pas.) Recalculate the spatial index. (Recalculez l’indice spatial.) : si vous recevez ce message, cliquez sur Recalculate (Recalculer).
    • The spatial index bounding box and feature class extent do not match. (La zone de contour de l’indice spatial et l’étendue de la classe d’entités ne correspondent pas.) Run the Recalculate Feature Class Extent geoprocessing tool. (Exécutez l’outil de géotraitement Recalculer l’étendue de la classe d’entités.) : si vous recevez ce message, cliquez sur OK pour fermer la boîte de dialogue Feature Class Properties (Propriétés de la classe d’entités) et exécutez l’outil Recalculate Feature Class Extent (Recalculer l’étendue de la classe d'entités) sur cette classe d’entités.

Supprimer un indice spatial

Pour ajouter un grand nombre d’entités à une classe d’entités existante en une seule opération, supprimez l’index spatial pour réduire le temps nécessaire à l’ajout des nouvelles entités. Une fois les nouvelles entités ajoutées, créez un index spatial dans la classe d’entités.

  1. Dans la fenêtre Catalog (Catalogue), connectez-vous à la géodatabase qui contient la classe d’entités avec l’indice spatial à supprimer.

    Pour les géodatabases d’entreprise, connectez-vous en tant que propriétaire de la classe d’entités.

  2. Cliquez avec le bouton droit de la souris sur la classe d'entités et choisissez Propriétés.
  3. Cliquez sur l'onglet Index.
  4. Développez la section Index spatial.
  5. Cliquez sur Delete (Supprimer) et sur OK pour fermer la boîte de dialogue Feature Class Properties (Propriétés de la classe d’entités).
  6. Ajoutez ou copiez des lignes dans la classe d’entités.
  7. Rouvrez la boîte de dialogue Feature Class Properties (Propriétés de la classe d’entités) de la classe d’entités, développez la section Spatial Index (Indice spatial) et cliquez sur Create (Créer).

    Un nouvel indice spatial est ajouté à la classe d’entités. Il inclut les entités récemment ajoutées.

  8. Cliquez sur OK pour fermer la boîte de dialogue Feature Class Properties (Propriétés de la classe d’entités).