Didacticiel : Création d'un service de carte mis en cache

Complexité : Intermédiaire Exigences relatives aux données : Utilisez vos propres données

La meilleure façon de créer des services de carte rapides est de les mettre en cache. Lorsque vous mettez en cache un service de carte, le serveur affiche la carte selon les différents niveaux d'échelle que vous avez définis et enregistre les images. Lorsque le serveur reçoit une demande pour une carte, il est beaucoup plus rapide de renvoyer l'une de ces images mises en cache plutôt que redessiner la carte.

La mise en cache convient aux fonds de carte et aux cartes qui évoluent peu. Pour les cartes qui ne changent que rarement, des outils permettent de mettre à jour le cache. Pour optimiser les performances, il est conseillé de mettre en cache autant de couches que possible. Il peut être utile de créer deux cartes et de séparer les couches qui sont appropriées à la mise en cache des couches qu'il serait impossible de mettre en cache. Par exemple, vous pouvez créer un service de carte mis en cache à partir des couches de fond de carte et un service de carte non mis en cache à partir des couches qui sont actualisées en temps réel ou des couches qui changent suite à une analyse ou à une modélisation.

Pour créer un cache de carte efficace, vous devez effectuer au préalable certaines opérations de conception et de création. Ce didacticiel vous guide à travers le processus de planification et de création d'une carte destinée à être mise en cache. Vous allez ensuite créer un service de carte et le mettre en cache. Enfin, vous testerez le cache dans plusieurs applications clientes.

Pour suivre ce didacticiel, sélectionnez certains jeux de données simples qui couvrent une surface assez petite, telle qu'une municipalité ou un comté. Ce didacticiel est conçu pour vous entraîner à préparer des tâches de mise en cache dans votre organisation. Portez une attention particulière aux instructions et conseils, mais ne vous inquiétez pas si les résultats que vous obtenez ne sont pas irréprochables lors de votre premier essai. La conception de caches convenables demande une certaine pratique.

Ce didacticiel est composé de quatre sections principales :

Création de la carte

Lorsque vous mettez une carte en cache, le serveur l'affiche aux différentes échelles que vous sélectionnez. Une fois que la carte est affichée, vous ne pouvez pas modifier son apparence à moins de recréer ou de mettre à jour le cache. Cela implique deux éléments importants :

Il est possible que votre organisation ait déjà déterminé la structure de tuilage à suivre lors de la mise en cache. Une structure de tuilage détermine certaines propriétés de votre cache, y compris les niveaux d'échelle à créer.

Choix des échelles

Ce didacticiel part du principe que vous créez votre propre structure de tuilage et vous devez choisir des échelles. Pour commencer à définir les échelles appropriées à votre carte, suivez les étapes ci-dessous :

Étapes :
  1. Ouvrez une carte et ajoutez vos jeux de données. Configurez une certaine symbologie initiale pour améliorer l'aspect de votre carte, mais n'entrez pas trop dans les détails à ce stade. Enregistrez la carte.
  2. Prenez quelques minutes pour parcourir les données. Effectuez des zooms et des panoramiques autour des zones que vos utilisateurs consulteront le plus souvent. Au cours de votre navigation, notez mentalement les échelles que vous visionnez.
  3. Réalisez un zoom avant en vous approchant le plus possible de l'échelle que les utilisateurs auront probablement besoin d'appliquer à la carte. Arrondissez un peu cette échelle et écrivez-la.
  4. Prenez l'échelle que vous visionnez actuellement et divisez-la par deux (n'oubliez pas qu'une échelle est en réalité une fraction, sa division par deux double donc le dénominateur). Par exemple, si l'échelle que vous visionnez est de 1:40 000, appliquez un zoom de 1:80 000. La méthode la plus simple consiste à saisir directement l'échelle dans la liste déroulante des échelles. Prenez note de la nouvelle échelle et examinez rapidement la carte.
  5. Continuez à diviser l'échelle par deux et à inscrire l'échelle jusqu'au point où vos utilisateurs n'auront probablement pas besoin d'appliquer d'autres facteurs de zoom arrière. Votre liste d'échelles est maintenant prête.

Remarque : il n'est pas obligatoire de diviser l'échelle par deux ; vous pouvez utiliser d'autres valeurs. Mais dans la plupart des cas, la division par deux fournit une bonne grandeur de zoom.

Configuration d'ArcMap pour utiliser vos échelles

Maintenant que vous avez choisi les échelles, vous pouvez commencer à optimiser l'apparence de la carte à chaque échelle. Lors de la création de la carte, vous pouvez être amené à passer souvent d'une échelle à l'autre. Pour faciliter ces changements, vous pouvez saisir les échelles dans la liste déroulante d'ArcMap :

Étapes :
  1. Cliquez dans la liste déroulante des échelles d'ArcMap.
  2. Cliquez sur Personnaliser cette liste.
    Capture d'écran de la liste des échelles
  3. Si vous souhaitez que vos échelles soient les seules à apparaître dans la liste, cliquez sur Supprimer tout.
  4. Saisissez une de vos échelles dans la zone appropriée et cliquez sur Ajouter. Répétez cette opération pour ajouter toutes vos échelles, puis cliquez sur OK.
    Capture d'écran de la boîte de dialogue Paramètres de l'échelle

Création de la carte

Il est maintenant temps de passer aux tâches de conception de la carte à proprement parler. L'un des avantages de la mise en cache de la carte est que, pendant la phase de conception, vous pouvez utiliser tous les outils cartographiques à votre disposition sans vous inquiéter de leur impact sur les performances. Prenez le temps d'optimiser l'apparence de votre carte, car une fois le cache créé, vous ne pourrez pas apporter de modifications sans avoir à recréer ou mettre à jour le cache. Les utilisateurs du cache ne pourront pas non plus modifier la symbologie, car ils consultent simplement des images préexistantes de la carte, qui sont stockées sur le serveur.

Il est recommandé de concevoir la carte à chacune des échelles que vous avez sélectionnées pour votre cache. Cette opération est plus facile pour les données raster, car ArcMap rééchantillonne les données lorsque vous changez d'échelle. Les données vectorielles, cependant, sont symbolisées avec les mêmes tailles de points et de lignes à chaque échelle et requièrent un peu plus d'effort pour éviter que la carte n'ait l'air trop encombrée ou trop clairsemée. Vous pouvez adopter la méthode de conception décrite ci-dessous si votre carte contient des données vectorielles.

Étapes :
  1. Ouvrez votre carte dans ArcMap et effectuez un zoom arrière à l'échelle la plus éloignée (la plus petite).
  2. Définissez la symbologie et l'étiquetage de vos couches pour cette échelle.

    Astuce : vous pouvez définir un ensemble de définitions pour réduire le nombre d'entités visibles à cette échelle. Par exemple, si vous avez une couche de villes, vous pouvez définir un ensemble de définitions qui restreint l'affichage aux villes dont la population est supérieure à 20 000.

    Capture d'écran de la boîte de dialogue Générateur de requêtes située sous l'onglet Ensemble de définitions de la boîte de dialogue Propriétés de la couche
  3. Effectuez un zoom avant selon l'échelle la plus proche suivante.
  4. Définissez la symbologie et l'étiquetage de vos couches pour cette échelle.

    Astuce : si vous souhaitez modifier la symbologie, l'étiquetage ou l'ensemble de définitions sur une couche que vous avez déjà symbolisée à une échelle différente, ajoutez une autre copie de la couche à la carte. Pour ce faire, cliquez avec le bouton droit de la souris sur la couche dans la table des matières d'ArcMap, puis sélectionnez Copier. Cliquez ensuite avec le bouton droit de la souris sur le nom du bloc de données et sélectionnez Coller des couches.

    Si les copies d'une couche deviennent nombreuses, vous pouvez utiliser un groupe de couches pour en réaliser le suivi. Il est plus facile de créer un groupe de couches pour chaque échelle. De cette façon, vous n'avez plus qu'à définir la dépendance d'échelle sur le groupe au lieu de chaque couche individuelle. Vous pouvez même inclure l'échelle dans le nom. Par exemple, vous pouvez avoir cette hiérarchie de groupe de couches :

    Capture d'écran de la hiérarchie de groupe de couches dans la table des matières

    Vous devez définir une plage d'échelle sur chaque couche afin qu'une seule soit visible à chaque échelle mise en cache. Configurez la plage d'échelle avec une tolérance autour de chaque échelle de cache. Par exemple, avec la couche de routes illustrée ci-dessus qui sera mise en cache à 1:1 500 000, vous pouvez faire en sorte que la couche soit visible uniquement lors d'un zoom arrière supérieur à 1:1 000 000 et d'un zoom avant supérieur à 1:2 000 000.

  5. Continuez à effectuer un zoom à chaque échelle consécutive et à réaliser la symbolisation appropriée jusqu'à ce que vous ayez traité toutes les échelles de votre liste.
  6. Enregistrez votre carte et fermez ArcMap. Vous êtes prêt à publier la carte.

Publication du service de carte

Pour créer le cache, vous devez d'abord publier votre carte en tant que service. Vous pouvez utiliser le gestionnaire ArcGIS Server ou la fenêtre Catalogue. Ces instructions feront appel à la fenêtre Catalogue, puisque vous l'utiliserez de toute façon pour créer le cache. En outre, le lancement des outils de mise en cache n'est disponible que dans ArcGIS Desktop.

Dans le gestionnaire et dans ArcCatalog, vous pouvez créer un service de deux façons. L'assistant Publier une ressource SIG vous invite à fournir un minimum d'informations nécessaires pour configurer le service. Il définit des valeurs par défaut pour toutes les autres propriétés du service. Par opposition, l'assistant Ajouter un nouveau service vous permet de définir des propriétés avancées avant de publier le service. Ces instructions expliquent comment utiliser l'assistant Ajouter un nouveau service afin d'augmenter le nombre par défaut d'instances en cours d'exécution. Ces instances plus nombreuses seront en mesure d'utiliser un plus grand nombre de ressources du processeur lors de la création du cache.

Étapes :
  1. Ouvrez ArcCatalog et établissez une connexion administrateur à votre serveur SIG. Reportez-vous à la rubrique Etablissement d'une connexion administrative à ArcGIS Server dans ArcCatalog si vous avez besoin d'aide pour cette étape.
  2. Cliquez avec le bouton droit de la souris sur la connexion, puis sélectionnez Ajouter un nouveau service.
  3. Attribuez un nom au service et cliquez sur Suivant.
  4. Renseignez la zone de texte Carte en accédant à la carte que vous avez créée. Le compte utilisateur du conteneur ArcGIS (SOC) a besoin d'autorisations pour lire ce document et toutes données qu'il référence.
  5. Utilisez la liste déroulante Répertoire de cache du serveur pour sélectionner le répertoire dans lequel vous souhaitez créer votre cache. Si la liste est vierge, vous devez ajouter un répertoire de cache du serveur avant de continuer. Reportez-vous à la rubrique Création d'un répertoire du serveur pour obtenir de l'aide.
  6. Une fois que vous avez sélectionné votre répertoire de cache du serveur, cliquez sur Suivant. Cliquez de nouveau sur Suivant pour sélectionner les fonctions par défaut du service.
  7. Vous êtes maintenant parvenu à la page de l'assistant dans laquelle vous pouvez sélectionner le modèle de groupage et le nombre d'instances du service. Pour les services mis en cache, vous devez toujours sélectionner la valeur par défaut Groupé. Vous pouvez en revanche augmenter ou réduire le nombre maximal d'instances à un nombre supérieur à 2.

    Dans la plupart des cas, une unité centrale peut gérer au moins 3 instances pendant la mise en cache. Les machines plus puissantes, ou les configurations dotées de plusieurs machines SOC, peuvent en gérer encore plus. Si vous souhaitez consacrer toute la puissance de votre serveur à la création du cache ou si votre déploiement ArcGIS Server est très vaste, vous pouvez augmenter le nombre maximal par défaut d'instances.

    Capture d'écran de l'onglet Groupage de l'assistant Ajouter un service ArcGIS

    Vous pouvez vous demander si vous avez besoin d'augmenter la valeur d'expiration par défaut, puisque la durée de création du cache peut être longue. En fait, vous n'avez pas besoin de la modifier, car les outils de mise en cache réinitialisent la valeur d'expiration sur une valeur très élevée avant de commencer à créer des tuiles.

  8. Après avoir modifié le nombre maximal d'instances, cliquez sur Suivant, puis à nouveau sur Suivant pour accepter les autres valeurs par défaut de l'assistant. Sur la dernière page, choisissez Oui, je souhaite démarrer le service maintenant, puis cliquez sur Terminer pour créer le service.
  9. Dans ArcCatalog, utilisez l'onglet Aperçu pour vérifier que l'aspect du service vous convient.

Création du cache

Maintenant que votre service de carte est prêt, vous pouvez créer le cache. Pour commencer la mise en cache, procédez comme suit :

Étapes :
  1. Dans ArcCatalog ou la fenêtre Catalogue d'ArcMap, recherchez votre service dans l'arborescence du catalogue. Cliquez avec le bouton droit de la souris et choisissez Propriétés du service.
  2. Cliquez sur l'onglet Mise en cache. Vous pouvez ici accéder à certaines des propriétés du cache. Vous utiliserez cet onglet pour configurer la structure de tuilage avant de commencer à créer les tuiles en cache.
  3. Choisissez d'afficher le service de carte avec l'option Utiliser les tuiles d'un cache à définir ci-dessous.
  4. Saisissez une de vos échelles dans la zone de texte Echelles, puis cliquez sur Ajouter. L'échelle doit apparaître dans la liste.
  5. Continuez à saisir d'autres échelles et à cliquer sur Ajouter pour chacune jusqu'à ce que vous ayez atteint la fin de votre liste.
  6. Définissez Format des tuiles sur JPEG. Ce format génère de petites tuiles et réduit l'espace disque requis pour le stockage du cache. Les clients peuvent également charger les tuiles plus rapidement.
    Capture d'écran de l'onglet Mise en cache situé dans la boîte de dialogue Propriétés de l'objet serveur de carte

    Remarque : cette étape suppose que vous n'allez pas superposer ce cache sur un autre service. Pour les services de superposition, tels que les réseaux routiers et de limites, choisissez plutôt PNG8 ou PNG32. Utilisez PNG32 si votre service de superposition a plus de 256 couleurs.

  7. Vous avez maintenant configuré votre structure de tuilage (vous utiliserez les valeurs par défaut pour toutes les autres propriétés). Il est temps de commencer à créer des tuiles. Cliquez sur Créer les tuiles.
  8. L'outil Gérer le cache des tuiles du serveur de carte apparaît avec la plupart des informations requises déjà renseignées. Vous utiliserez cet outil pour créer des tuiles. Prenez un moment pour examiner les paramètres de l'outil.
  9. Définissez le paramètre Mode de mise à jour sur Recréer toutes les tuiles. Vous utiliserez la plupart du temps ce paramètre pour créer et mettre à jour vos caches.
  10. Vous pouvez également modifier le paramètre Nombre d'instances de serveur de carte. Ce nombre est une mesure de la puissance de calcul du serveur que vous souhaitez consacrer à la création du cache.
    Capture d'écran illustrant le paramètre Mode de mise à jour de l'outil Gérer le cache des tuiles du serveur de carte

    Reportez-vous à la rubrique Allocation de ressources de serveur à la création d'un cache de carte pour en savoir plus sur ce paramètre.

  11. Maintenant que vous avez indiqué les propriétés essentielles de l'outil, cliquez sur OK pour commencer à générer le cache.

Selon votre plus grande échelle, l'étendue de vos données et d'autres facteurs, la génération du cache peut prendre du temps. Si vous avez choisi des jeux de données simples avec une petite étendue géographique pour cet exercice, le cache sera probablement terminé en moins d'une heure. La fenêtre d'état du géotraitement affiche une barre de progression qui indique le pourcentage de création du cache.

Sur Linux/Solaris, vous pouvez créer/mettre à jour les caches à partir de la ligne de commande.

Test du cache

Une fois le cache terminé, vous pouvez le tester dans une application cartographique Web pour vous assurer que l'aspect et le comportement de la carte vous conviennent. C'est également un bon moyen de vérifier que les tuiles sont reconnues et utilisées avec succès par l'application.

Pour le test, vous pouvez utiliser une application Web simple. Le gestionnaire ArcGIS Server convient parfaitement pour créer l'application de test.

Étapes :
  1. Cliquez sur l'onglet Accueil du gestionnaire, puis sur Créer une application Web.
  2. Attribuez un Nom à votre application Web et entrez une Description (si vous le souhaitez) Cliquez ensuite sur Suivant.
  3. Dans ce volet, cliquez sur Ajouter une couche. Accédez ensuite à votre service de carte mis en cache et ajoutez-le à la carte. Si vous avez besoin d'aide pour réaliser cette étape, reportez-vous aux rubriques Sélection des couches à afficher.
  4. Vous avez réalisé la partie la plus importante de l'assistant. Cliquez sur Terminer pour accepter les valeurs par défaut des autres paramètres de l'application.
  5. L'application Web terminée apparaîtra dans une nouvelle fenêtre. Les niveaux du curseur de zoom correspondent aux échelles de votre cache.
    Capture d'écran du curseur de niveau de zoom
  6. Effectuez des panoramiques autour de la carte et des zooms à différents niveaux. Lors de ces opérations, les tuiles de la carte doivent apparaître très rapidement.

Dépannage

S'il vous semble que l'application n'utilise pas le cache, vérifiez les points suivants :

  • La version des service packs correspond (si des service packs sont appliqués).
  • Vous avez créé un cache fusionné au lieu d'un cache multi-couches. Le paramètre par défaut est le cache fusionné et ces instructions, si elles sont suivies exactement, créent un cache fusionné.
  • Le compte utilisateur du conteneur ArcGIS dispose d'autorisations en Lecture et en Ecriture sur le répertoire de cache de votre serveur.

Si vous utilisez Mozilla Firefox pour afficher votre application Web, vous pouvez facilement savoir si les tuiles de votre cache sont utilisées.

Étapes :
  1. Cliquez sur Outils, puis sur Information sur la page.
  2. Cliquez sur l'onglet Médias.
  3. Examinez les images qui apparaissent dans la liste. Si vous voyez des images du répertoire de cache de votre serveur (ou son répertoire virtuel associé), vous savez que votre cache est utilisé.
    Capture d'écran de l'onglet Médias de la boîte de dialogue Information sur la page dans Mozilla Firefox

Lectures complémentaires


2/28/2012