Planification d'un cache de carte
Avant de créer un cache de carte, il est essentiel de définir la structure de tuilage à utiliser et d'évaluer les ressources nécessaires pour créer le cache. Prenez aussi le temps d'élaborer soigneusement votre carte pour qu'elle soit utilisable à chaque niveau d'échelle de la structure de tuilage.
La création d'un cache de grande taille peut prendre beaucoup de temps et nécessiter de nombreuses ressources, il faut donc que vous soyez sûr d'obtenir ce que vous voulez avant de commencer la création du cache. Si possible, exécutez une version test du cache sur une petite zone de la carte ou créez seulement les premiers niveaux du cache pour vous assurer que les images apparaissent comme vous le souhaitez.
Conception de cartes qui seront mises en cache
Lorsque vous créez une carte papier, celle-ci n'est visible qu'à une seule échelle. En revanche, les encarts qui affichent des zones détaillées de la carte peuvent eux utiliser une ou deux autres échelles. L'ajustement de votre carte pour qu'elle reflète fidèlement la généralisation, la symbologie et l'étiquetage employés peut relever du défi même avec ce petit nombre d'échelles. Lorsque vous créez une carte qui sera mise en cache et affichée sur l'écran d'un ordinateur, vous devez en plus vous assurer que la carte est lisible et exploitable dans toutes les échelles en cache.
Démarrage avec un modèle
La page Map Templates du Centre de ressources ArcGIS contient des exemples téléchargeables de cartes à plusieurs échelles. Ces "modèles de carte" comprennent une carte et un jeu de données d'exemple, que vous pouvez modifier en fonction des données et conceptions dont vous avez besoin. Actuellement, il existe des modèles disponibles pour les rues, la topographie, les infrastructures d'état, les sentiers, les événements historiques et les superpositions de référence (à afficher par-dessus l'imagerie) et d'autres modèles sont en cours de réalisation. Même si vous ne projetez pas d'utiliser les modèles, en télécharger certains et étudier l'organisation de la table des matières des cartes et des jeux de données peut vous aider à comprendre comment réaliser une carte à plusieurs échelles.
Le reste de cette rubrique d'aide présente les principes de conception des cartes mises en cache, qui sont appliqués aux modèles. Si vous concevez une carte destinée à recouvrir des services ArcGIS Online, Bing Maps ou Google Maps dans une application Web, il est conseillé de lire également Conception d'une carte pour superposer ArcGIS Online, Google Maps ou Bing Maps.
Choix des échelles et définition des dépendances d'échelle
Pour vérifier que votre carte est correctement conçue, appliquez les dépendances d'échelle aux étiquettes et aux entités. Examinez les images mises en cache donnée en exemple ci-dessous. Lorsque vous effectuez un zoom sur la carte, vous pouvez remarquer que les mots et les symboles changent pour fournir plus d'informations. Les lignes représentant les routes sont plus épaisses et les villes sont représentées par des polygones et non plus par des points. De même, la carte utilise des jeux de données plus détaillés étant donné que les jeux de données utilisés pour un zoom arrière n'offrent pas le niveau de détail requis pour des vues agrandies. Les rues et leurs étiquettes n'apparaissent qu'aux échelles les plus proches, autrement elles encombreraient la carte. Ces changements dépendants des échelles permettent d'afficher de manière organisée plus d'informations sur la carte.
Vous pouvez configurer des entités ou des étiquettes sur votre carte pour qu'elles ne soient visibles qu'à certaines échelles ou pour qu'elles apparaissent différemment en fonction de l'échelle. Les dépendances d'échelle que vous définissez pour les couches de votre carte et les niveaux d'échelle que vous sélectionnez pour votre structure de tuilage doivent être soigneusement coordonnés. Les entités auxquelles vous appliquez une dépendance d'échelle sont inutiles sauf si votre structure de tuilage comporte un niveau d'échelle permettant de les rendre visibles.
Par exemple, si vous avez utilisé une plage d'échelles permettant de révéler certaines entités lorsque l'utilisateur effectue un zoom avant au-delà de 1:2 000, l'échelle la plus proche dans le cache ne doit pas être 1:2 500, car, dans ce cas, l'utilisateur ne verra pas les entités. En revanche, si vous ajoutez l'échelle 1:1 250 à la structure de tuilage, les utilisateurs verront les entités. Si vous n'avez pas ajouté l'échelle supplémentaire, vous pouvez modifier la plage d'échelles afin que les entités apparaissent lors d'un zoom avant supérieur à 1:3 000.
Si vous devez mettre en cache une carte que vous ne pouvez pas modifier, vous pouvez quand même concevoir la structure de tuilage de sorte qu'elle tire parti des caractéristiques de la carte. Si possible, ouvrez la carte dans ArcMap et examinez les propriétés de couche pour déterminer s'il existe des couches dépendantes d'une échelle et à quelles échelles elles sont activées et désactivées. Si une couche est dépendante d'une échelle, pensez à inclure un niveau d'échelle permettant de rendre la couche visible dans votre structure de tuilage. Par exemple, si une couche est définie pour apparaître entre les échelles 1:150 000 et 1:250 000, vous pouvez inclure 1:200 000 comme facteur d'échelle dans votre structure de tuilage pour que la couche apparaisse dans le cache.
Choix d'un système de coordonnées
Le bloc de données que vous mettez en cache peut utiliser n'importe quel système de coordonnées. Toutefois, si vous envisagez de superposer votre cache avec un autre cache, vous devez utiliser le même système de coordonnées pour les deux. Ceci est également vrai si vous superposez votre cache avec des tuiles provenant d'un service de carte en ligne. Les services ArcGIS Online, Google Maps et Microsoft Bing Maps utilisent tous le système de coordonnées projetées WGS 1984 Web Mercator (Sphère auxiliaire).
Avant ArcGIS 10, les services ArcGIS Online utilisaient le système de coordonnées géographiques WGS 1984. Ces services sont destinés à être retirés, et tous les nouveaux caches que vous créez pour qu'ils superposent des services ArcGIS Online doivent utiliser WGS 1984 Web Mercator (Sphère auxiliaire).
Planification de la visibilité des couches
Par défaut, les outils de mise en cache créent un cache fusionné de votre carte. Cela signifie que toutes les couches de votre carte sont mises en cache dans une image. Par conséquent, vous ne pouvez pas activer ou désactiver les couches dans un cache fusionné.
Les caches fusionnés sont les caches par défaut parce qu'ils sont rapides. Il est plus rapide pour le serveur d'obtenir une image qu'obtenir plusieurs images. Si vous ne souhaitez pas créer un cache fusionné, vous pouvez utiliser un cache multi-couches. Dans ce type de cache, vous pouvez choisir les groupes de couches sur la carte qui seront mis en cache ensemble. Toutefois, cela signifie que lorsque des clients utilisent votre cache, ils doivent attendre que le serveur récupère plusieurs images, qu'il les superpose et qu'il leur appose des étiquettes. Sauf si vous utilisez ArcMap comme client, un cache multi-couches ne vous permettra pas d'améliorer beaucoup les performances.
Alors, comment conserver la possibilité d'activer et de désactiver les couches tout en utilisant des caches fusionnés ? En général, les clients peuvent superposer plus rapidement n caches fusionnés que n couches dans un cache multi-couches. Une solution consiste donc à regrouper les ensembles associés de couches dans votre carte, puis de placer chaque groupe dans sa propre carte. Publiez un service de carte et créez un cache fusionné à partir de chaque carte.
Par exemple, supposons que votre carte possède les couches suivantes : Banques, Restaurants, Musées, Bibliothèques, Centres commerciaux, Parcelles, Routes, Rivières, Limites des comtés, Lacs, Parcs et Altitude.
Si vous utilisez simplement ArcMap pour visionner le document, vous pouvez activer et désactiver ces couches comme bon vous semble. Toutefois, si vous comptez publier cette carte sur le Web à l'aide des caches de carte, il est préférable de combiner certaines de ces couches. En passant la liste des couches en revue, vous pouvez établir ces trois regroupements logiques à partir desquels créer des cartes distinctes :
Carte 1 (Points d'intérêt)
- Banques
- Restaurants
- Musées
- Bibliothèques
- Centres commerciaux
Carte 2 (Paysage culturel)
- Parcelles
- Routes
- Parcs
- Limites des comtés
Carte 3 (Entités physiques)
- Rivières
- Lacs
- Altitude
Pour chaque carte, vous pouvez créer un service de carte avec un cache fusionné. Veillez à utiliser la même structure de tuilage pour chaque cache. Vous pouvez ensuite superposer les trois services de carte.
Si vous pensez qu'il est sans doute inutile de consulter les entités physiques sans le paysage culturel, vous pouvez sans risque combiner les cartes 2 et 3 dans une seule carte, ce qui permet d'améliorer encore plus les performances.
Anticipation du temps de création du cache
Lorsque vous créez un cache pour un service de carte, ArcGIS Server doit effectuer le rendu des images de carte qui couvrent toute l'étendue de la zone que vous avez créée pour le cache, à chaque niveau d'échelle indiqué. Dans le cas d'un cache de plusieurs couches, ArcGIS Server doit répéter le processus pour chaque couche. Il doit également créer les fichiers et la structure de dossiers nécessaires pour contenir le cache.
Le temps nécessaire à la création du cache dépend aussi des niveaux d'échelle que vous avez choisis, du nombre de ressources serveur que vous avez dédiées à la création du cache et de la densité des informations sur la carte. Même si vous utilisez un serveur puissant, la génération d'un cache volumineux peut parfois prendre des jours, voire des semaines. Malgré le temps investi, l'utilisation du cache reste très avantageuse en termes d'amélioration des performances, et ce dans de nombreux cas.
Remarque : bien que la génération du cache puisse être très longue, vous n'avez pas à vous soucier du délai d'expiration du service. Les outils de mise en cache ajustent automatiquement le temps d'utilisation maximal autorisé du service sur une valeur très élevée avant de créer le cache. Une fois le cache généré, les outils de mise en cache redéfinissent le temps d'utilisation maximal sur sa valeur d'origine.
Choix du type de cache
La génération du cache se terminera plus rapidement si vous utilisez le type de cache fusionné, qui met en cache toutes les couches ensemble dans une image. Lorsque vous créez un cache multi-couches, le serveur crée un ensemble distinct d'images mises en cache pour chaque couche. Cela signifie que chaque couche doit être rendue à tous les niveaux d'échelle sur toute l'étendue du cache. Plus vous avez créé de couches et plus la génération du cache sera longue.
Choix des niveaux d'échelle
Lorsque vous choisissez les niveaux d'échelle pour votre cache, gardez à l'esprit que plus vous vous rapprochez de la carte, plus le nombre de tuiles nécessaires pour couvrir l'étendue de la carte est élevé et plus la génération du cache prendra de temps. Chaque fois que vous divisez par deux le dénominateur de l'échelle, le nombre de tuiles nécessaires pour couvrir une surface carrée de la carte est multiplié par quatre. Par exemple, une carte carrée à l'échelle 1:500 contient quatre fois plus de tuiles qu'une carte à l'échelle 1:1 000, et une carte carrée à l'échelle 1:250 contient seize fois plus de tuiles qu'une carte à l'échelle 1:1 000.
Pour avoir une idée de la vitesse à laquelle le nombre de tuiles peut augmenter dans un cache, ouvrez votre carte dans ArcMap. Effectuez un zoom arrière de manière à voir une zone de la carte correspondant à un espace d'environ 256 pixels de large et 256 pixels de haut. (Cette surface variera en fonction de vos paramètres d'affichage. Il est fort probable qu'elle ait une arête d'environ 6,35 à 8,26 centimètres. A cette échelle, une seule tuile en cache serait nécessaire avec les paramètres par défaut pour couvrir la surface. Maintenant, divisez par deux le dénominateur de l'échelle actuelle. (Par exemple, si la carte était affichée initialement à l'échelle 1:40 000, effectuez un zoom avant jusqu'à 1:20 000.) A cette échelle, quatre tuiles seraient nécessaires pour couvrir la même surface. Divisez de nouveau par deux le dénominateur et environ 16 tuiles seront nécessaires pour couvrir la surface. Le tableau ci-dessous montre comment le nombre de tuiles requises pour couvrir la surface carrée d'origine augmente chaque fois que le dénominateur est réduit de moitié. La première échelle de 1:32 000 000 peut couvrir une surface correspondant approximativement à l'Ouest des Etats-Unis dans une tuile de 256 x 256 pixels.
Niveau 1 |
1:32 000 000 |
1 tuile |
Niveau 2 |
1:16 000 000 |
4 tuiles |
Niveau 3 |
1:8 000 000 |
16 tuiles |
Niveau 4 |
1:4 000 000 |
64 tuiles |
Niveau 5 |
1:2 000 000 |
256 tuiles |
Niveau 6 |
1:1 000 000 |
1 024 tuiles |
Niveau 7 |
1:500 000 |
4 096 tuiles |
Niveau 8 |
1:250 000 |
16 384 tuiles |
Niveau 9 |
1:125 000 |
65 536 tuiles |
Niveau 10 |
1:62 500 |
262 144 tuiles |
Niveau 11 | 1:31 250 | 1 048 576 tuiles |
Ressources de serveur
Plus vous avez consacré d'instances de service à une exécution sur le cache et plus il sera généré rapidement. En général, chaque unité centrale dédiée à la mise en cache peut gérer approximativement trois instances, bien que certaines unités centrales puissent en gérer plus. Reportez-vous à la rubrique Allocation de ressources de serveur à la création d'un cache de carte pour savoir combien consacrer d'instances à la mise en cache.
Densité d'informations dans la carte
La taille du cache et le temps requis pour créer le cache sont tous les deux affectés par la densité des informations dans la carte. Des zones de la carte avec de nombreuses modifications des couleurs et des motifs généreront des tuiles en cache de plus grande taille que des zones plus homogènes. Par exemple, des cartes avec des images raster à haute résolution généreront probablement des tuiles de grande taille ; non pas en raison de la taille de l'image d'origine sur le disque, mais en raison de la variation des couleurs et des motifs entre les pixels image.
De manière similaire, des cartes qui contiennent de nombreuses couches et dont le rendu prend relativement longtemps dans ArcMap nécessiteront en général plus de temps pour créer un cache. Cela tient au fait que le serveur doit représenter de manière répétée les couches appropriées de la carte lorsqu'il crée les tuiles pour chaque niveau d'échelle.
Moteur d'affichage des services de carte
Depuis la version 9.3.1, ArcGIS Server comporte un moteur d'affichage amélioré qui fait appel aux fichiers de définition de service de carte (.msd). Lorsque vous publiez votre carte à l'aide de la barre d'outils Publication de services de carte d'ArcMap, un fichier .msd est créé et le moteur d'affichage rapide est utilisé. Si vous publiez votre carte selon la méthode traditionnelle en utilisant comme source un fichier de carte (.mxd), le moteur d'affichage rapide n'est pas utilisé.
Les services MSD ont tendance à créer des tuiles plus rapidement que les services MXD. La différence de temps dépend des symboles utilisés, et de la taille et des échelles de la carte.
Surveillance de l'avancement du cache
L'outil Gérer le cache des tuiles du serveur de carte contient une barre de progression qui vous permet de savoir quel pourcentage du cache est terminé. Vous pouvez également visualiser l'avancement des opérations en ouvrant l'Explorateur Windows et en notant le nombre de fichiers et de dossiers qui ont été créés dans votre répertoire de cache. N'oubliez pas que les plus grandes échelles de votre cache seront les plus longues à représenter. La couche finale seule peut éventuellement prendre plus de temps que toutes les autres couches cumulées, selon les échelles que vous avez choisies pour votre cache.
Préparation du matériel
Les caches peuvent être stockés sur n'importe quelle machine au niveau de votre serveur SIG ou Web ou sur différents périphériques SAN (storage area network) ou NAS (network-attached storage). Si vous disposez de ressources suffisantes, vous pouvez choisir de consacrer une ou plusieurs machines de votre déploiement uniquement à la création et au stockage des caches.
Par défaut, l'espace minimal dans lequel Windows peut stocker un fichier (taille d'agrégat) est de 4 Ko. Si votre cache contient un grand nombre de tuiles dont la taille est inférieure à 4 Ko, vous remarquerez que la taille que prend le cache sur le disque est beaucoup plus élevée que la taille réelle des fichiers. Pour réduire l'espace perdu, vous pouvez utiliser le format de stockage du cache compact introduit dans la version ArcGIS Server 10 ou stocker vos tuiles sur un disque ou une partition formatée avec une plus petite taille d'agrégat, par exemple 1 Ko 512 octets.
Pour savoir si beaucoup de vos tuiles seront plus petites que la taille d'agrégat, il est conseillé de créer un cache de test dont la surface est représentative de votre carte et d'examiner la taille des tuiles obtenues. Parmi les types de caches dont les tailles de fichiers ont tendance à être plus petites et qu'il est par conséquent préférable de stocker avec des tailles d'agrégat plus restreintes figurent les suivants :
- Caches PNG 8.
- Les caches avec des entités dispersées qui sont conçus pour superposer un fond de plan.
- Les caches dont les tuiles sont relativement petites (256 x 256 ou moins). Cette catégorie inclut les caches conçus pour superposer Google Maps ou Bing Maps.
- Les caches dotés d'un grand nombre de tuiles vides en raison d'échelles élevées, de surfaces stériles ou d'un manque de données.
Les points ci-dessus concernant les fichiers de petite taille ne s'appliquent qu'au format de stockage Eclaté. Par opposition, le format de stockage Compact a été conçu pour libérer l'espace perdu en stockant les tuiles dans un flux de données indexé continu. Pour plus d'informations, reportez-vous à la rubrique Propriétés de cache de carte disponibles.