Didacticiel : Création d'un service de carte mis en cache
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 en utilisant la structure de tuilage ArcGIS Online/Bing Maps/Google Maps. Vous publiez ensuite un service de carte en spécifiant que le cache doit être généré dès que vous procédez à la publication. Enfin, vous testerez le cache dans une application client.
Ce didacticiel est conçu pour vous entraîner à préparer des tâches de mise en cache dans votre organisation. Il est composé de trois sections principales :
Avant de commencer ce didacticiel
Si vous venez d'installer ArcGIS Server, vous devez réaliser certaines étapes préparatoires avant de pouvoir vous connecter au serveur dans ArcMap et publier des services.
- Pour plus d'informations sur la façon de configurer le site ArcGIS Server, consultez la rubrique Démarrage après l'installation du système d'aide.
- Pour savoir comment mettre à disposition du serveur les données référencées par la ressource GIS, consultez la rubrique Rendre vos données accessibles à ArcGIS Server.
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 :
- L'apparence de la carte doit vous convenir à chaque niveau d'échelle avant de la mettre en cache. Une carte papier est conçue pour s'afficher correctement à une échelle, mais une carte mise en cache doit être conçue pour chaque échelle que vous mettez en cache.
- Les niveaux d'échelle que vous sélectionnez sont très importants. Si vous ne choisissez pas assez d'échelles, les utilisateurs peuvent avoir l'impression qu'ils leur manquent des informations ou qu'ils ne peuvent pas obtenir l'affichage de la carte qui leur convient. Si vous choisissez trop d'échelles ou des échelles inutiles, vous augmentez le temps de création du cache et l'espace de stockage requis. A l'inverse, 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.
Dans ce didacticiel, nous supposons que votre organisation utilise la structure de tuilage d'ArcGIS Online/Bing Maps/Google Maps. Pour commencer, suivez les étapes ci-dessous.
Définition du système de coordonnées
Lorsque vous concevez cette carte, définissez le bloc de données de sorte qu'il utilise le système de coordonnées WGS 1984 Web Mercator (sphère auxiliaire) qui est le même que celui utilisé par ArcGIS Online, Google Maps et Bing Maps.
- Démarrez ArcMap et ouvrez une nouvelle carte vide.
- Dans la table des matières d'ArcMAP, cliquez avec le bouton droit de la souris sur le nom du bloc de données (Layers, par défaut), puis sélectionnez Propriétés.
- Cliquez sur l'onglet Système de coordonnées.
- Cliquez sur Système de coordonnées projetées > Monde > WGS 1984 Web Mercator (sphère auxiliaire).
- Cliquez sur OK.
Les étapes susmentionnées ne sont pas vraiment nécessaires, car si ArcGIS remarque que vous essayez de créer un cache de carte dans la structure de tuile ArcGIS Online/Bing Maps/Google Maps, il reprojettera vos données à la volée vers WGS 1984 Web Mercator (sphère auxiliaire). Les étapes sont indiquées à titre indicatif pour que vous puissiez concevoir votre carte en tenant compte de ce système de coordonnées.
Configuration d'ArcMap pour utiliser les mêmes échelles que ArcGIS Online, Bing Maps et Google Maps
Comme votre organisation utilise la même structure de tuilage que ArcGIS Online, Google Maps et Bing Maps, vous pouvez donc limiter la création de votre carte à ces échelles. Vous pouvez charger les échelles dans la liste déroulante appropriée d'ArcMap en procédant comme suit :
- Dans la barre d'outils Standard, cliquez sur la liste déroulante des échelles, puis sélectionnez Personnaliser cette liste.
- Dans la fenêtre Paramètres de l'échelle, cliquez sur Charger et sélectionnez ArcGIS Online / Bing Maps / Google Maps.
- Cochez la case Afficher uniquement ces échelles au moment du zoom. Cette option vous permet seulement de visualiser vos couches et vos classes d'entités aux intervalles des échelles ArcGIS Online / Bing Maps / Google Maps. Elle est particulièrement utile lors de la création d'une carte à mettre en cache à ces échelles.
- Cliquez sur OK pour appliquer les modifications. Vous pouvez maintenant afficher le jeu d'échelles utilisé par ces services de carte Web populaires et basculer entre elles facilement à l'aide de la liste déroulante.
Conception 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.
Pour concevoir une carte correspondant à la structure de tuilage d'ArcGIS Online, Bing Maps et Google Maps, il est recommandé de la concevoir à chaque intervalle d'échelle. 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.
- Sans quitter ArcMap, ajoutez vos jeux de données et effectuez un zoom arrière à l'échelle la plus éloignée (la plus petite). S'il y a lieu, corrigez les problèmes de projection. Tous vos jeux de données doivent utiliser la projection WGS 1984 Web Mercator (sphère auxiliaire) pour être correctement mis en cache.
-
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.
-
Effectuez un zoom avant selon l'échelle la plus proche suivante et définissez la symbologie et l'étiquetage des 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.
- Créez des groupes de couches pour réaliser le suivi des copies des couches. 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.
- Définissez une plage d'échelle sur chaque groupe de couches 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, si un des groupes de couches est mis en cache à 1:577 791, vous pouvez faire en sorte que la couche soit visible uniquement lors d'un zoom arrière supérieur à 1:866 686 et d'un zoom avant supérieur à 1:433 343.
- 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 la liste.
- Enregistrez votre carte. Vous êtes prêt à publier la carte.
Publication du service de carte
Cette section du didacticiel vous guide à travers le processus de publication d'une carte sur ArcGIS Server en utilisant ArcMap. A cette étape, vous définissez le schéma du cache de carte et analysez les performances de la carte. Vous devez spécifier que le cache doit être généré au moment de la publication. Pour commencer, procédez comme suit.
- Ouvrez la carte dans ArcMap et cliquez sur Fichier > Partager en tant que > Service dans le menu principal.
- Dans la fenêtre Partager en tant que service, sélectionnez Publier un service. Cliquez sur Suivant.
- Dans la boîte de dialogue Publier un service, cliquez sur Connecter à ArcGIS Server pour créer une connexion au serveur.
- Dans la fenêtre Ajouter un serveur ArcGIS, sélectionnez Publier les services SIG. Cliquez sur Suivant.
- Pour l'URL du serveur, saisissez l'URL du site ArcGIS Server auquel vous souhaitez vous connecter. Par exemple : http://myserver:6080/arcgis
- Dans la liste déroulante Type de serveur, sélectionnez ArcGIS Server.
- Au cours du processus de publication, un fichier de définition de service est créé et stocké temporairement sur un disque local. A l'issue du processus, la définition de service est chargée sur le serveur et le fichier local est supprimé. Dans le cadre de ce didacticiel, ignorez le dossier intermédiaire par défaut.
- Indiquez un Nom d'utilisateur et un Mot de passe bénéficiant au moins de privilèges d'éditeur sur ArcGIS Server. Si vous n'avez configuré aucun utilisateur ou rôle à des fins de sécurité, une des options consiste à utiliser le compte de l'administrateur principal du site que vous avez défini à la création du site. Gardez cette case cochée pour enregistrer le nom d'utilisateur et le mot de passe. Cliquez sur Terminer.
- Facultativement, dans la fenêtre Publier un service, entrez un nouveau nom pour le service. Cliquez sur Suivant.
- Par défaut, les services sont publiés sur le dossier racine (racine) d'ArcGIS Server. Les services peuvent être organisés dans des sous-dossiers du dossier racine. Choisissez le dossier où vous souhaitez publier le service, ou créez un dossier pour contenir le service. Cliquez sur Continuer.
- L'Editeur de services s'affiche. Dans l'Editeur de services, sélectionnez les opérations que les utilisateurs peuvent effectuer sur le service de carte mis en cache et le schéma de mise en cache. Vous pouvez contrôler en détails la manière dont le serveur exposera votre service. Cliquez sur l'onglet Mise en cache.
- Sous l'onglet Mise en cache, sélectionnez l'option Avec les tuiles d’un cache pour l'affichage du service de carte.
- Dans la liste déroulante Structure de tuilage, sélectionnez ArcGIS Online / Bing Maps / Google Maps.
- Examinez la valeur Estimation de la taille du cache. Ensuite, diminuez (déplacez vers la gauche) la valeur du curseur Niveau d'échelle maximal dans la barre Niveaux de détail jusqu'à ce la valeur Estimation de la taille du cache soit inférieure à 50 Mo. Vous définissez ainsi pour ce didacticiel une taille de cache appropriée à des fins de test.
- Dans le cadre de ce didacticiel, ignorez tous les autres paramètres par défaut. Vous remarquerez qu'une des valeurs par défaut que vous acceptez consiste à créer le cache automatiquement une fois le service publié. En présence de caches de taille supérieure, vous pouvez créer le cache manuellement à un autre moment (le lendemain ou pendant le weekend).Astuce:
Vous devez vérifier d'autres paramètres de cache et les optimiser lorsque vous créez un cache dans un environnement de production. Pour plus d'informations sur le choix des propriétés de cache de carte à l'aide de l'Editeur de services, reportez-vous à la rubrique Propriétés de cache de carte disponibles.
- Cliquez sur Analyser . Cette fonction examine la carte pour voir si elle peut être publiée sur le serveur.Astuce:
Pour disposer d'une surface d'affichage plus grande lors de la configuration de votre service de carte, cliquez sur Réduire en haut du Editeur de services.
- Le cas échéant, corrigez les erreurs dans la fenêtre Préparation avant de pouvoir publier la carte en tant que service. Vous pouvez éventuellement traiter les avertissements et les messages informationnels pour améliorer davantage la performance et l'apparence de votre service. Pour plus d'informations sur la résolution de ces problèmes, reportez-vous à la rubrique Analyse de votre ressource SIG.Remarque :
Vous pouvez enregistrer les dossiers et les géodatabases sur votre site ArcGIS Server et ainsi vous assurer que le serveur puisse reconnaître et utiliser vos données. Si vous effectuez les étapes suivantes, toutes les données référencées par votre carte qui proviennent d'un dossier ou d'une géodatabase non enregistré seront copiées sur le serveur au moment de la publication. Il s'agit d'une mesure de précaution visant à s'assurer que le serveur peut accéder à toutes les données utilisées par le service. Pour obtenir les instructions complètes d'enregistrement d'un dossier ou d'une géodatabase sur votre site ArcGIS Server, reportez-vous à la rubrique Enregistrement des données avec ArcGIS Server ArcGIS for Desktop.
- Facultativement, dans l'Editeur de services, cliquez sur Aperçu . Cela peut vous donner une idée de l'apparence de votre carte sur le Web. Reportez-vous à la rubrique Aperçu d'une carte pour plus d'informations.
- Une fois que vous avez corrigé les erreurs dans votre carte, cliquez sur Publier .
Le service de carte a été immédiatement publié. A l'issue de la publication, le serveur commence à créer des tuiles de cache et il continue jusqu'à ce que le cache soit généré.
Selon votre plus grande échelle, la configuration matérielle de votre serveur, 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.
Test du cache
Une fois le cache terminé, vous pouvez le tester dans une application 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. Une bonne façon de tester le cache consiste à utiliser la visionneuse JavaScript disponible par l'intermédiaire du répertoire des services d'ArcGIS Server.
- Dans un navigateur Web, accédez au répertoire des services. Par exemple : http://myserver:6080/arcgis/rest/services
- Dans la liste des services, cliquez sur votre service de carte. Tous les services de carte sont suivis de (MapServer). Si votre service réside dans un dossier, accédez à ce dossier et sélectionnez le service.
- Une page contenant le nom et la description du service ainsi que la liste des couches s'affiche. Cliquez sur Afficher dans ArCGIS JavaScript.
- Une application Web JavaScript simple apparaît dans une nouvelle fenêtre. Les niveaux du curseur de zoom correspondent aux échelles de votre cache.
- 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. Evitez d'appliquer un zoom au-delà de la valeur Niveau d'échelle maximum que vous paramétrez lors de la première définition du cache, puisque vous n'avez pas créé de tuiles à des échelles supérieures à cette valeur.
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).
- Le compte ArcGIS Server bénéficie d'autorisations d'accès en lecture et en écriture au répertoire du 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.
- Cliquez avec le bouton droit dans l'application Web et sélectionnez Informations sur la page.
- Dans la fenêtre Informations sur la page , cliquez sur le bouton Médias.
- Examinez les images qui apparaissent dans la liste. Si vous voyez des URL qui renvoient au répertoire de cache de votre serveur, vous savez que votre cache est utilisé.
Lectures complémentaires
- Vous trouverez les étapes générales de création d'un cache dans la rubrique Création d'un cache de carte.
- La rubrique Stratégies pour la création de tuiles de cache de carte présente les méthodes à adopter pour créer des caches plus importants.
- Pour en savoir plus sur la mise en cache en 3D, reportez-vous à la rubrique Fonctionnement des caches de globe.