configuration et optimisation d'arcgis server

51
Configuration et optimisation d'ArcGIS Server Gaëtan LAVENU ESRI France Sylvain BARD-MAÏER ESRI France 1 UC 2007 Tech Sessions

Upload: others

Post on 19-Jun-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Configuration et optimisation d'ArcGIS Server

Configuration et optimisation

d'ArcGIS Server

Gaëtan LAVENU – ESRI France

Sylvain BARD-MAÏER – ESRI France

1UC 2007 Tech Sessions

Page 2: Configuration et optimisation d'ArcGIS Server

2

Plan de la présentation

• Introduction

• Organiser et gérer ses données

• Concevoir des cartes optimisées pour une utilisation en

ligne

• Mettre en cache ou publier dynamiquement

de services de cartes

• Sécuriser l'accès à un service ou à une application

Page 3: Configuration et optimisation d'ArcGIS Server

3

Plan de la présentation

• Introduction / Concepts

– Fond de carte et couches métier

– Cache et services de cartes dynamiques

– ArcGIS Desktop pour la conception

• Organiser et gérer ses données

• Concevoir des cartes optimisées pour une utilisation en

ligne

• Mettre en cache ou publier dynamiquement

de services de cartes

Page 4: Configuration et optimisation d'ArcGIS Server

4

Couches de fond de carte / Couches métier

• Fond de carte

– Occupation du sol

– Plan topographique

– Imagerie / Orthophotos / Scans

– Parcelles / Batîments / Voirie

• Couches métiers

– Voies représentées par leur hauteur

d'enneigement

– Réseau électrique représentant l'ancienneté

de la dernière opération de maintenance

– Zonage d'inondation attendu selon un scénario

de précipitation et débit de mon cours d'eau

Statiques

Peu de fonctionnalités

Dynamiques

Fonctionnalités

riches

Page 5: Configuration et optimisation d'ArcGIS Server

UC

2007

Tech

5

Fonds de cartes … utiliser des caches

• Découpage d'images

individuelles de la carte

couvrant l'étendue de la

couche à différentes

échelles

• Potentiellement très riches

en termes d'information

cartographique (

symbologie et textes)

• Affichages très rapides

Page 6: Configuration et optimisation d'ArcGIS Server

6

Couches métiers … utiliser des services dynamiques

• Couches vectorielles

• Arrière plan transparent

• Symbologie optimisée

• Affichage dynamique

• Représentation "en temps réel" des

données de la Géodatabase

Page 7: Configuration et optimisation d'ArcGIS Server

7

Dans les deux cas … ArcGIS Desktop

• ArcGIS Desktop est l'outil de conception des services de

carte

– Pour sa simplicité d'utilisation

– Pour la gestion et le traitement des données

– Pour la richesse des options de représentation cartographique

(symbologies, représentations, étiquettes, annotations,…)

• Principales évolution en 9.2

– Notion de représentations cartographiques

– Styles de symboles optimisés pour le rendu d'entités vectorielles

– Système de mashup et de cache (ArcGIS Server)

Page 8: Configuration et optimisation d'ArcGIS Server

8

Plan de la présentation

• Introduction / Concepts

• Organiser et gérer ses données

– Optimiser l'usage des données

• Concevoir des cartes optimisées pour une utilisation en

ligne

• Mettre en cache ou publier dynamiquement

de services de cartes

Page 9: Configuration et optimisation d'ArcGIS Server

9

Organiser et gérer les données

• Déterminer les données nécessaires à la carte

– Les échelles

– Les attributs pour la cartographie

– Les attributs pour les fonctions (interrogation, info-bulles, …)

• Vérifier l'accessibilité aux données

– Performance de la connexion entre les machines du

GIS Server et la Géodatabase

– Disponibilité (considérer le compte utilisé par ArcGIS Server)

– La prise en compte des mises à jour des données (si modification de

schéma dans des Géodatabases ArcSDE, pas de redémarrage des

services nécessaire)

Page 10: Configuration et optimisation d'ArcGIS Server

10

Optimiser l'usage des données

• Optimisation des performances de la Géodatabase

– Construire les indexes adéquats

– Utiliser une précision de données (spatiales et attributaires) adaptée

– Optimiser la base de données (DBA)

• Utiliser les données pertinentes aux échelles pertinentes

– Ne pas hésiter à généraliser ou à agréger les données

• Déterminer les champs indispensables pour la cartographie

– Les champs pour les classifications (champs numériques si possible)

– Les champs à utilise pour les étiquetages

– Les champs des Représentations

• Limiter le MXD à un Bloc de Données

• Essayer d'utiliser des couches ayant la même projection

Page 11: Configuration et optimisation d'ArcGIS Server

11

Plan de la présentation

• Introduction / Concepts

• Organiser et gérer ses données

– Optimiser l'usage des données

• Concevoir des cartes optimisées pour une utilisation en

ligne

– Conception du document ArcMap

– Affichage des informations pertinentes

– Choix de symbologie et d'éléments textuels efficaces

– Optimiser la performance globale de la carte

• Mettre en cache ou publier dynamiquement

de services de cartes

Page 12: Configuration et optimisation d'ArcGIS Server

12

Réduire la quantités d'information visible

• Une carte de démarrage simple

– Minimiser les couches visible par défaut

– Les couches supplémentaires sont activées par l'utilisateur

– Utiliser des ensembles de définition

• Utiliser les plages d'échelle d'affichage

– Afficher un nombre similaire d'objets à toute les échelles

– Regrouper les couches par échelles plutôt que par thème

Page 13: Configuration et optimisation d'ArcGIS Server

13

Choisir une symbologie optimum

• Ce qui accélère l'affichage …

– Les géométries simples (mono-partie, sans segments paramétriques)

– Utilisation appropriée des options de niveaux de symboles

– Faire des classification plutôt sur des entiers que sur des chaînes

• Ce qui ralentit l'affichage …

– Les symboles avec des formes complexe ou de nombreuses couches

– Les "gros" symboles (> 60 pts)

– Les lignes avec des motifs et des modèles complexes

– Les trames surfaciques complexes (images/gradients/densité de

points)

– Les effets spéciaux (halos, transparence, masques)

Page 14: Configuration et optimisation d'ArcGIS Server

14

Symboles ponctuels

* Temps d'affichage avec un shapefile de 30000 entités

Page 15: Configuration et optimisation d'ArcGIS Server

15

Symboles linéaires / Contours de polygones

* Temps d'affichage avec un shapefile de 100 000 entités

Page 16: Configuration et optimisation d'ArcGIS Server

16

Symboles surfaciques

* Temps d'affichage avec un shapefile de 75000 entités

Page 17: Configuration et optimisation d'ArcGIS Server

UC

2007

Tech

17

Etiquetage de la carte

• Ce qui accélère l'affichage …

– Utiliser les annotations plutôt que les étiquettes

– Utiliser les pondérations et règles de conflit des étiquettes le moins

possible

– Faire des classification plutôt sur des entiers que sur des chaînes

• Ce qui ralentit l'affichage …

– Effets spéciaux (remplissage par des trames, les halos, …)

– Les grandes tailles de texte ( > 60 pts)

– Les bulles et lignes de rappel

– Les classes d'étiquettes avec des requêtes SQL et VB scripts

complexes

– Eviter les règles de placement complexes (Maplex)

Page 18: Configuration et optimisation d'ArcGIS Server

18

Plan de la présentation

• Introduction / Concepts

• Organiser et gérer ses données

• Concevoir des cartes optimisées pour une utilisation en ligne

• Mettre en cache ou publier dynamiquement

de services de cartes

– Quand utiliser des caches

– Comment ça marche

– Conseils et astuces

Page 19: Configuration et optimisation d'ArcGIS Server

19

Un cache c'est quoi au juste ?

Des images pré-calculées de votre carte à différentes échelles stockées sur le disque

Niveaux

d'échelles

du cache

Lignes

Colonnes

Page 20: Configuration et optimisation d'ArcGIS Server

20

Utiliser un cache (ou pas)

• Qu'est ce qui est le plus rapide ?

– Demander à un processus de générer une image de la carte

– Demander à un serveur Web de renvoyer une image existante

• Avec un cache, la carte est calculée une seule fois

• Le calcul du cache est un investissement

• Cache

– Fond de carte

– Couche métier plus ou moins statique

– Etiquetage et/ou symbologie complexe

• Pas de cache

– Couches dynamiques (régulièrement mises à jour)

– Couches fonctionnelles (sélections, requêtes, géotraitements, …)

Page 21: Configuration et optimisation d'ArcGIS Server

• Ombrage du relief

• Transparence des couches

• Etiquetage Maplex

• Pas d'ombrage

• Couleurs simples

• Annotations

Un moyen de faire rimer qualité cartographique avec

performance d'affichage

Cache: Affichage = 1 s. Dynamique: Affichage = 4 s.

Page 22: Configuration et optimisation d'ArcGIS Server

22

Le cache devient un standard d'industrie

• Google Maps

• Microsoft Virtual Earth

• Yahoo! Maps

• ArcGIS Online

• NASA World Wind

• Autres …

• Projet OGC: WMS-C (Web Mapping Service - Cached)

– Projet d'en faire un profil spécifique du WMS

Page 23: Configuration et optimisation d'ArcGIS Server

23

Comment créer un cache ?

• Application:

– En 9.2: dans ArcCatalog

– En 9.3: dans ArcCatalog ou le Manager

• Créer un document ArcMap puis le publier

• Utiliser l'onglet Cache dans les propriétés du Map Service

Page 24: Configuration et optimisation d'ArcGIS Server

Deux types de cache

• Cache fusionné (option par défaut)

– Inclus toutes les couches du Map Service

dans une seule image

– Très bonne performance

– Impossible de rendre individuellement

visible/invisible l'une ou l'autre des couches

• Cache multi-couche

– Calcul des images par couches

ou groupes de couches

– La performance décroit avec le nombre

de couches ou groupe de couches

– Intéressant pour le client ArcMap

– Possible de rendre individuellement

visible/invisible l'une ou l'autre des couches

Page 25: Configuration et optimisation d'ArcGIS Server

25

Démo 1

Comparer une application avec et sans cache

Page 26: Configuration et optimisation d'ArcGIS Server

UC

2007

Tech

26

Puis-je continuer à accéder aux données ?

• Oui … le serveur continue à accéder aux

données pour les opérations suivantes

• Query

• Identify

• Selection

Page 27: Configuration et optimisation d'ArcGIS Server

UC

2007

Tech

27

Avant de créer votre premier cache

• Bien réfléchir à la visibilité des couches / différentes échelles

– Raisonner niveau d'échelle par niveau d'échelle

• Réfléchir au schéma des tuiles?

– Origine du tuilage

– Taille des tuiles (en pixels)

– Niveaux d'échelles

– Etendue géographique

• Utiliser si possible un même schéma pour tous les caches

– Prendre les mêmes étendues et les mêmes niveaux d'échelle pour tous

les caches

– Permet de s'assurer d'une combinaison performante des caches dans

tous les client s(ArcGIS Desktop, Applications Web Map, …)

• Essayer de créer des fonds de carte regroupés par

thématiques

– Cadastre, Hydrographie, Réseau routier, Imagerie, …

Page 28: Configuration et optimisation d'ArcGIS Server

28

Schéma de tuilage (1/3)

• Chaque cache possède une référence spatiale

– Issue du Bloc de Données du document ArcMap

• Origine du tuilage

– Exprimé en unités de la carte

– Aucune tuile ne pourra être générée à l'Est ou au Nord de ce point

• Taille des tuiles

– Exprimés en pixels

Page 29: Configuration et optimisation d'ArcGIS Server

29

Schéma de tuilage (2/3)

• Résolution des images

– Exprimé en DPI (Dot Per Inch)

– Par défaut 96 dpi, si > alors plus de fichiers seront générés

• Echelles (Level Of Details)

– Liste des échelles pour lesquels

seront calculées un cache

– Influence directement le nombre

de fichiers images à créer

Page 30: Configuration et optimisation d'ArcGIS Server

UC

2007

Tech

30

Schéma de tuilage (3/3)

• Format des images

– PNG8 :

• Format compressé sans perte, codé sur 8-bit (palettes de 256 coucleurs)

• La transparence est codée dans dans la palette (bien supportée par les

navigateurs web)

– PNG24:

• Format compressé sans perte, codé sur 24-bit (3 bandes, 16 M de

couleurs)

• La valeur de transparence est codée en en-tête du fichier (non supporté

par certains navigateurs web)

– PNG32:

• Format compressé sans perte, codé sur 32-bit (4 bandes, 16 M de

couleurs)

• La valeur de transparence est codée sur une bande bien supportée par

les navigateurs web)

– JPEG

• Format compressé avec perte, 16 M de couleur, ne supporte pas la

transparence

Page 31: Configuration et optimisation d'ArcGIS Server

UC

2007

Tech

31

Cache Tile Format

• PNG32 — a lossless, four-channel image format that

supports large color variations (16 million colors) and

transparency.

• JPEG — a lossy, three-channel image format that supports

large color variations (16 million colors) but does not

support transparency.

Page 32: Configuration et optimisation d'ArcGIS Server

32

Le fichier de configuration du cache (conf.xml)

• Contient tous les paramètres du cache

• Situé à la racine de l'arborescence

des fichiers images

Page 33: Configuration et optimisation d'ArcGIS Server

UC 2007 Tech Sessions 33

Option Anti-aliasing

• Permet d'obtenir des contours et des textes plus lissés

• Le résultat à l'écran peut potentiellement être meilleur

qu'avec ArcMap

• Attention à cette option lors d'une superposition de plusieurs

caches dans une même carte

– http://serverx.esri.com/antialiasingexamples/

Page 34: Configuration et optimisation d'ArcGIS Server

UC

2007

Tech

34

Gérer ses caches – Les outils 9.2

• GenerateMapServerTilingScheme

– Génère un schéma de tuilage

(conf.xml)

• GenerateMapServerCache

– Génère les tuiles de cache d'un Map Service

– Possibilité d'utiliser un autre schéma que celui proposé par défaut

• UpdateMapServerCache

– Met à jour le cache existant d'un Map Service dans une certaine étendue

– Permet de recréer uniquement les tuiles manquantes ou toutes les tuiles

• DeleteMapServerCache

– Supprime la totalité du cache d'un Map Service

Page 35: Configuration et optimisation d'ArcGIS Server

35

Quelques conseils pour générer des caches très

volumineux

• Découper la zone géographique en plusieurs tâches de

calcul de cache distinctes

– Utiliser la commande UpdateMapServerCache sur une étendue

spécifique avec un script (Service Pack 2)

• Si des zones géographiques ne doivent pas être mise en

cache, alors utiliser des "étendues personnalisées" dans

votre MXD

– Corse, Sicile, France Métropolitaine mais pas toutes les échelles

de la Méditerranée

– Vous pouvez créer plusieurs fois le cache avec l'option "Etendue

globale" en utilisant dans le MXD des étendues personnalisées

différentes (il ne faut pas modifier le schéma de tuilage)

Page 36: Configuration et optimisation d'ArcGIS Server

36

Ordres de grandeur: Cartosphère France Raster

• Calcul avec un processeur Intel Dual-Core et 3 Go de RAM

Echelle Tailles des fichiers Temps de

génération

1: 500 000 100 K 2 min

… … …

1: 50 000 200 M 2 h

1: 20 000 1 Go 7 h

1: 2500 26 Go 45 h

Total: 60 Go

Page 37: Configuration et optimisation d'ArcGIS Server

37

Démo 2

Créer un cache avec ArcCatalog

Page 38: Configuration et optimisation d'ArcGIS Server

38

Les caches avec l'application Web Map

Page 39: Configuration et optimisation d'ArcGIS Server

39

Les caches avec l'application Web Map

• L'application Web Map (le Web ADF) d'ArcGIS Server est

conçu pour travailler avec un ou plusieurs services

cachés

• Utiliser si possible la version 9.2 Service Pack 2

– Plus de possibilité de superposition des caches dans l'application

• Pour tirer partie des performances du cache:

– La navigation est limitée aux échelles du cache

– Les tuiles ne sont pas projetées à la volée

• Différences entre les implémentations de l'ADF en Java et

.NET

Page 40: Configuration et optimisation d'ArcGIS Server

UC

2007

Tech

40

Les caches avec l'application Web Map (9.2 SP2)

• Critères de superposition des services cachés avec Java:

– Les projections doivent être les mêmes

– Les échelles communes entre les caches doivent être les mêmes

• Critères de superposition des services cachés avec .Net:

– Les projections doivent être les mêmes

– Les échelles communes entre les caches doivent être les mêmes

– Les origines et les tailles de tuiles doivent être les mêmes

• L'utilisation d'un même fichier conf.xml lors de la création

des caches règle le problème en assurant un schéma de

tuilage identique

Page 41: Configuration et optimisation d'ArcGIS Server

41

Utiliser des services cachés dans ArcMap

%temp%\esrimapcache\

Page 42: Configuration et optimisation d'ArcGIS Server

UC

2007

Tech

42

Utiliser des services cachés dans ArcMap

• ArcMap est très bien adapté à la consommation des

caches ArcGIS Server

• Zooms très fluides …

– ArcMap associe un niveau d'échelle dans le cache puis le ré-

échantillonne à la volée si nécessaire

– Utilise le niveau d'échelle inférieur le plus proche de l'échelle

courante. Au 1 : 7000 il prendra le niveau d'échelle 5000 et non le

10000.

– La qualité de l'image peut donc varier si vous êtes proche ou non

des niveaux d'échelles prévus dans le cache

• On peut facilement combiner plusieurs couches issues de

services cachés (transparence, …)

• Support la reprojection et la rotation de la carte

Page 43: Configuration et optimisation d'ArcGIS Server

43

Démo 3

Consommer un service caché

avec ArcMap

Page 44: Configuration et optimisation d'ArcGIS Server

UC

2007

Tech

44

Consommer le cache par développement

• Utiliser les ArcObjects ou l'API SOAP pour

accéder aux informations de configuration d'un

cache

–Interface ITiledMapServer (dans ESRI.ArcGIS.Carto)

• GetTileCacheInfo

• GetTileImageInfo

• Lecture directe et analyse du fichier de

configuration (conf.xml).

– Python, VBScript, VB6, JavaScript, …

Page 45: Configuration et optimisation d'ArcGIS Server

Consommer le cache par développement

Utilisation de l'API SOAP dans Visual Studio 2005

Page 46: Configuration et optimisation d'ArcGIS Server

UC

2007

Tech

46

Evolution du mécanisme de cache en 9.3

• Facilité de gestion

– ArcGIS Manager et ArcGIS Desktop

• Support du calcul de cache à la demande

– Les tuiles sont construites lorsque un utilisateur les demande (pour

la première fois)

• Possibilité de créer un cache partiel sur des zones

géographiques prédéfinies (par exemple les zones

urbaines les plus peuplées)

• Possibilité de créer des caches selon le même schéma

de tuilage que Google Maps ou Virtual Earth

Page 47: Configuration et optimisation d'ArcGIS Server

UC

2007

Tech

47

Création de cache dans ArcGIS 9.3

Page 48: Configuration et optimisation d'ArcGIS Server

48

Pourquoi le cache à la demande ?

Page 49: Configuration et optimisation d'ArcGIS Server

49

Démo 4

Créer un cache partiel

et configurer un cache à la demande

Page 50: Configuration et optimisation d'ArcGIS Server

UC

2007

Tech

50

Conclusion

• Optimiser l'accès et la gestion des données publiées

• Concevoir le document cartographique avec l'idée de le

publier

• Utiliser les symbologies optimisées

• Exploiter les mécanisme d'optimisation d'ArcGIS Server

– Map Service cachés

– Map Services dynamiques

Page 51: Configuration et optimisation d'ArcGIS Server

51

Questions / Réponses

Merci de bien vouloir

remplir le questionnaire