Création de tâches pour l'environnement UNIX/Linux
ArcGIS Server peut exécuter les outils de géotraitement qui résident dans les boîtes à outils qui se trouvent sur un ordinateur UNIX/Linux. Ces outils peuvent référencer des données qui résident sur les ordinateurs UNIX/Linux. Cependant, la création d'outils est limitée à ArcGIS Desktop, qui s'exécute sur Windows uniquement. En d'autres termes, vous devez copier vos boîtes à outils et vos cartes sur l'ordinateur UNIX/Linux après les avoir créées sous Windows. Vous pouvez ensuite publier ces ressources dans ArcGIS Server.
Outils de création pour UNIX/Linux
Les outils de création pour UNIX/Linux posent essentiellement un problème, celui des chemins. Windows utilise la convention des lettres de lecteur (D:\, par exemple) pour les disques locaux et la convention d'affectation des noms UNC pour les ressources situées sur le réseau local (\\<hôte>\<répertoire>, par exemple). UNIX/Linux utilise quant à lui la convention des barres obliques /<hôte>/<répertoire> pour les chemins. Lorsque vous créez et testez vos outils sous Windows, tous vos chemins utilisent la convention Windows. Avant de transférer vos outils sous UNIX/Linux, vous devez choisir un mode de conversion des chemins Windows en chemins UNIX/Linux. Il existe plusieurs manières d'y parvenir :
- Utilisez des chemins relatifs pour les données (aucune conversion de chemins n'est nécessaire).
- Utilisez des couches ArcMap et convertissez leurs chemins avant de les copier sous UNIX/Linux.
- Autorisez ArcGIS Server à convertir des chemins UNC Windows en chemins UNIX/Linux.
- Utilisez une combinaison des techniques précitées.
Utilisation de chemins relatifs pour les données
La méthode la plus simple consiste de loin à utiliser la structure des dossiers de partage de l'outil pour enregistrer toutes les données utilisées par vos outils. Vous devez ensuite définir les propriétés des cartes, des outils de modèle et des outils de script sur l'option d'enregistrement des chemins relatifs. Puis copiez le dossier de partage de l'outil sur la plate-forme UNIX/Linux et publiez le service à l'aide d'ArcGIS Server Manager. Lors de leur exécution, les tâches du service peuvent trouver toutes leurs données relatives au dossier Toolshare.
Utilisation de couches ArcMap
Cette technique vous permet de publier un document ArcMap contenant des couches d'outils. Vos outils de modèle et de script utilisent des couches et des tables dans la table des matières ArcMap. Puis procédez comme suit avant de copier votre carte et vos boîtes à outils sur UNIX/Linux :
- Ouvrez votre document ArcMap et décochez l'option d'enregistrement des chemins relatifs pour les sources de données :
- Dans ArcMap, sélectionnez Fichier > Propriétés de la carte.
- Dans la boîte de dialogue des propriétés, vérifiez que l'option Enregistrer les chemins relatifs pour les sources de données est décochée.
- Cliquez sur OK pour enregistrer les propriétés, puis enregistrez la carte et quittez l'application.
- Dans la fenêtre Catalogue, cliquez avec le bouton droit sur la carte et cliquez sur Définir les sources de données.
- Dans la boîte de dialogue Définir les sources de données, indiquez le chemin d'accès UNIX/Linux à toutes les couches, y compris les sous-couches des couches d'outils. (La modification des sous-couches des couches d'outils est nécessaire uniquement si vous utilisez un service de carte obtenu.)
- Une fois les chemins définis, fermez la boîte de dialogue et copiez la carte et les boîtes à outils sur l'ordinateur UNIX/Linux.
- Publiez le service en publiant la carte qui contient les couches d'outils, et non la boîte à outils.
Autorisation d'ArcGIS Server à convertir des chemins UNC Windows
Lorsqu'un service de géotraitement est exécuté sous UNIX/Linux, tous les chemins UNC Windows (\\hôte\) sont convertis en chemins UNIX/Linux (/hôte/). Les chemins Windows locaux (D:\) ne sont pas convertis.
En d'autres termes, vous pouvez monter le disque UNIX/Linux (/hôte/) sur votre ordinateur Windows et faire référence aux données du disque monté à l'aide du chemin UNC Windows (\\hôte\). Copiez ensuite vos documents et boîtes à outils sur l'ordinateur UNIX/Linux et publiez-les.
Utilisation d'une combinaison de ces techniques
Vous pouvez utiliser une combinaison de ces trois techniques Par exemple, certaines de vos données peuvent être enregistrées par rapport à votre boîte à outils et vos outils peuvent utiliser des chemins relatifs. Pour le sous-ensemble de données qui n'est pas enregistré par rapport à votre boîte à outils, vous pouvez utiliser des couches dans le document ArcMap qui font référence aux données, puis convertir le chemin avant de le copier.
Limitations connues dans l'environnement UNIX/Linux
Même si la conversion des chemins reste le principal problème, il existe deux autres problèmes spécifiques aux services qui s'exécutent sous UNIX/Linux : la limite de 100 caractères et le nom des jeux de données en minuscules. Ces problèmes sont décrits ci-dessous.
Chemins des couvertures et des grilles limités à 100 caractères
Deux formats de données sont limités en nombre de caractères dans leur chemin :
- les grilles (format raster ESRI natif),
- les couvertures (fonctions ArcInfo Workstation).
La longueur totale du chemin d'une couverture ou d'une grille ne peut pas dépasser 100 caractères. Etant donné que les données intermédiaires et en sortie sont écrites dans l'espace de travail temporaire, le nombre total de caractères dans l'espace de travail temporaire ne peut pas dépasser 100.
Voici un exemple de contenu de %scratchworkspace% :
/disk/arcgisserver/arcgisjobs/drivetimepolygonsservice_gpserver/ jc01a0ddb3dc94455b8eb6629cf421798/scratch/
Portion de chemin |
Nombre de caractères |
Description |
---|---|---|
/disk/arcgisserver/arcgisjobs/ |
30 |
Répertoire de tâches. Comme le répertoire de tâches est défini par vous-même ou par votre administrateur système, le nombre de caractères reste sous contrôle. |
drivetimepolygonsservice_gpserver/ |
34 |
Nom du service (_gpserver est automatiquement ajouté par ArcGIS Server). Etant donné que vous nommez le service, vous contrôlez le nombre de caractères. |
<nom de dossier> |
Lorsque vous publiez un service, vous pouvez désigner un nom de dossier. Le nom de ce dossier s'affiche ici. Le nombre de caractères du nom du dossier est sous votre contrôle. |
|
jc01a0ddb3dc94455b8eb6629cf421798/scratch/ |
42 |
ID de tâche unique plus le dossier temporaire. Elle est définie par ArcGIS Server et n'est pas sous votre contrôle. |
TOTAL |
106 |
Dans le tableau ci-dessus, le chemin d'accès à l'espace de travail temporaire comporte 106 caractères. La limite de 100 caractères est donc dépassée et vous devez réduire ce chemin de 6 caractères. Dans l'exemple ci-dessus, la solution la plus simple consiste à raccourcir le nom du service drivetimepolygonsservice en dtpolys, par exemple.
Noms de jeu de données en minuscules
Les noms des grilles et des couvertures doivent être en minuscules sous UNIX/Linux. Bien que ces deux jeux de données soient les seuls à nécessiter des noms en minuscules, vous devez vous habituer à utiliser des noms en minuscules pour tous les jeux de données, y compris les noms de répertoires.