Disponible avec une licence Standard ou Advanced.
ST_Raster est un type de données qui vous permet de stocker des données raster directement dans une table de géodatabase. Vous utilisez le type ST_Raster si vous devez accéder aux données raster de votre géodatabase à l'aide de SQL.
Utilisez l'outil de géotraitement Créer un type de raster ou un script Python qui appelle l'outil pour installer le type ST_Raster dans une géodatabase.
Une fois le type installé, vous devez modifier les paramètres de configuration de la géodatabase pour que les nouveaux rasters créés dans la géodatabase utilisent le type de données ST_Raster.
Mettre à jour le fichier extproc
L'agent de procédure externe (extproc) Oracle doit accéder à la bibliothèque ST_Raster (libst_raster_ora).
Si ArcMap ou ArcGIS Server est installé sur le serveur Oracle, vous pouvez mettre à jour le fichier extproc.ora pour qu'il désigne libst_raster_ora dans <ArcGIS client installation directory>\DatabaseSupport\Oracle\<Operating System>. Dans votre fichier, veillez à désigner la bibliothèque appropriée pour le système d'exploitation de votre serveur Oracle. Une fois le fichier exptroc.ora mis à jour, effectuez l'installation de ST_Raster.
Si aucun client ArcGIS n'est installé sur le serveur Oracle, commencez par copier la bibliothèque libst_raster_ora dans le serveur Oracle, mettez à jour le fichier extproc.ora, puis créez la bibliothèque.
Procédez comme suit si ArcMap ou ArcGIS for Server n'est pas installé sur le serveur Oracle :
- Crée un répertoire sur le serveur Oracle qui soit accessible à votre instance d'Oracle.
- Téléchargez les bibliothèques à partir de My Esri ou copiez la bibliothèque libst_raster_ora à partir de <ArcMap or ArcGIS Server installation directory>\DatabaseSupport\Oracle\<Operating System>.
- Dans le répertoire que vous avez créé, placez la bibliothèque libst_raster_ora appropriée au système d'exploitation du serveur Oracle.
- Mettez à jour le fichier extproc.ora pour inclure le chemin d'accès dans la bibliothèque libst_raster_ora.
- Utilisez SQL pour vous connecter à la base de données Oracle en tant qu'utilisateur sde, puis créez la bibliothèque libst_raster_ora d'Oracle.
CREATE LIBRARY LIBST_RASTER AS '<absolute path to libst_raster_ora library>' /
Maintenant que le serveur Oracle est configuré, vous pouvez installer ST_Raster.
Installer ST_Raster
Vous pouvez exécuter l'outil Créer un type de raster à partir d'ArcGIS Desktop (Standard ou Advanced) ou exécuter un script Python à partir d'un client ArcGIS Server ou ArcGIS Desktop (Standard ou Advanced) pour installer le type ST_Raster.
Exécutez l'outil Créer un type de raster.
Si vous avez accès à ArcGIS Desktop (Standard ou Advanced), exécutez l'outil Créer un type de raster pour installer le type ST_Raster.
- Démarrez un client ArcGIS Desktop.
- Connectez-vous à la géodatabase en tant qu'utilisateur sde.
- Ouvrez l'outil Créer un type de raster.
Cet outil se trouve dans le jeu d'outils Geodatabase Administration de la boîte à outils Gestion des données.
- Spécifiez la connexion à la base de données que vous avez créée à l'étape 2 comme Connexion à la géodatabase en entrée.
- Cliquez sur OK (ArcMap) ou sur Exécuter (ArcGIS Pro).
Utiliser Python
Ensuite, vous pouvez exécuter un script Python pour créer un fichier de connexion à une base de données (.sde) qui permet d'établir une connexion à la géodatabase en tant qu'administrateur de géodatabase, et installer le type ST_Raster dans la géodatabase.
- Ouvrez une fenêtre de commande, importez le module ArcPy, puis utilisez la fonction CreateDatabaseConnection_management pour créer un fichier de connexion à la base de données (.sde) qui permet d'établir une connexion à la géodatabase en tant qu'administrateur de géodatabase. Si vous vous connectez à l'aide de l'authentification de la base de données, veillez à enregistrer le nom d'utilisateur et le mot de passe avec le fichier de connexion.
Dans cet exemple, un fichier de connexion (adminconnect.sde) est créé dans C:\temp. La connexion à l'instance Oracle teamdata/orcl est établie en tant qu'utilisateur sde.
import arcpy arcpy.CreateDatabaseConnection_management (r'c:/temp',"adminconnect.sde", "ORACLE", "teamdata/orcl", "DATABASE_AUTH", "sde", "Cky00r", "SAVE_USERNAME")
- Installez le type ST_Raster.
Dans ce cas, le fichier adminconnect.sde est utilisé par la fonction CreateRasterType_management pour établir une connexion à la géodatabase et installer le type ST_Raster :
arcpy.CreateRasterType_management (r'c:/temp/adminconnect.sde')
Confirmer l'installation
A l'aide d'un client SQL, connectez-vous en tant qu'utilisateur doté de droits d'accès à la base de données Oracle dans laquelle vous avez installé ST_Raster, puis testez l'installation du type ST_Raster en exécutant l'instruction SELECT suivante :
SELECT sde.st_raster_util.describe()
FROM dual;
Les résultats positifs de cette requête incluent le message Aucune donnée trouvée si la géodatabase ne comprend pour le moment aucune donnée raster, ou la liste des colonnes raster de la base de données.
Un message d'erreur est renvoyé si le processus d'écoute d'Oracle ne démarre pas ou si la bibliothèque libst_raster_ora n'est pas accessible. La bibliothèque peut ne pas être accessible si ST_Raster n'a pas été installé, si le fichier extproc.ora n'a pas été mis à jour avec le chemin d'accès à la bibliothèque libst_raster_ora, ou si la bibliothèque libst_raster_ora n'a pas été copiée au bon endroit.
Dans cet exemple, l'utilitaire describe est exécuté pour répertorier les colonnes raster binaires ST_Raster qui se trouvent dans la base de données. Dans ce cas, la géodatabase est nouvelle et ne comporte pour le moment aucune colonne raster. Comme aucun message d'erreur n'est renvoyé, cela signifie que l'installation a réussi.
SELECT sde.st_raster_util.describe()
FROM dual;
SDE.ST_RASTER_UTIL.DESCRIBE()
No data found.
Dans cet exemple, l'utilitaire describe est également exécuté. Toutefois, dans ce cas, le chemin d'accès à la bibliothèque libst_raster_ora n'a pas été ajouté au paramètre extproc.oraENV. Corrigez le problème et exécutez à nouveau la requête pour être sûr qu'il est résolu.
SELECT sde.st_raster_util.describe()
FROM dual;
ERROR:
ORA-28575: unable to open RPC connection to external procedure agent
ORA-06512: at "SDE.ST_RASTER_UTIL", line 190
ORA-06512: at "SDE_ST_RASTER_UTIL", line 377
Maintenant que vous avez confirmé que ST_Raster est installé, modifiez les paramètres du mot-clé de configuration.
Modifier la configuration de la géodatabase
Une fois ST_Raster installé dans la géodatabase, vous devez modifier la configuration de la géodatabase pour que les utilisateurs puissent utiliser ST_Raster lorsqu'ils créent des jeux de données raster et des catalogues d'images. Vous pouvez vous connecter à partir d'ArcGIS Desktop (Standard ou Advanced), puis exécuter des outils de géotraitement pour y parvenir ou utiliser un script Python à partir d'un client ArcGIS Server ou ArcGIS Desktop (Standard ou Advanced).
Exécuter les outils de géotraitement
Si vous avez accès à ArcGIS Desktop, vous pouvez utiliser l'outil Exporter un mot-clé de configuration de la géodatabase pour exporter les paramètres de configuration actuels de la géodatabase dans un fichier texte, définir le paramètre RASTER_STORAGE sur ST_Raster dans le fichier texte et importer le fichier texte modifié à l'aide de l'outil Importer un mot-clé de configuration de la géodatabase
- Ouvrez l'outil Exporter un mot-clé de configuration de la géodatabase dans ArcGIS Desktop.
- Utilisez la connexion à la base de données que vous avez créée pour installer ST_Raster en tant que Connexion à la géodatabase en entrée.
- Spécifiez un emplacement et un nom de fichier pour le fichier texte à créer.
- Ouvrez le fichier texte dans un éditeur de texte et définissez RASTER_STORAGE sur ST_Raster.
- Pour que tous les jeux de données raster et les catalogues d'images utilisent le type ST_Raster sans qu'il soit nécessaire de spécifier un mot-clé, modifiez le paramètre RASTER_STORAGE sous le mot-clé DEFAULTS.
- Si seuls certains des jeux de données raster et catalogues d'images doivent utiliser le type ST_Raster, créez un mot-clé personnalisé et définissez le paramètre RASTER_STORAGE pour ce mot-clé sur ST_Raster.
- Enregistrez et fermez le fichier texte.
- Importez le fichier texte modifié dans la géodatabase à l'aide de l'outil Importer un mot-clé de configuration de la géodatabase.
Utiliser Python
La fonction ArcPy ExportGeodatabsaeConfigurationKeyword_management permet d'exporter les paramètres de configuration actuels de la géodatabase dans un fichier texte et de modifier, puis enregistrer le fichier, et la fonction ImportGeodatabaseConfigurationKeyword_management permet d'importer les modifications dans la géodatabase.
Utilisez le fichier de connexion à la base de données que vous avez créé lors de l'installation de ST_Raster pour input_database lorsque vous exécutez les fonctions ExportGeodatabsaeConfigurationKeyword_management et ImportGeodatabaseConfigurationKeyword_management.
- Exportez la configuration de la géodatabase actuelle.
Dans cet exemple, le fichier gdbconfig est exporté vers le dossier C:\temp.
arcpy.ExportGeodatabaseConfigurationKeyword_management (r'c:/temp/adminconnect.sde', r'c:/temp/gdbconfig.txt')
- Ouvrez le fichier texte dans un éditeur de texte et définissez RASTER_STORAGE sur ST_Raster.
- Pour que tous les jeux de données raster et les catalogues d'images utilisent le type ST_Raster sans qu'il soit nécessaire de spécifier un mot-clé, modifiez le paramètre RASTER_STORAGE sous le mot-clé DEFAULTS.
- Si seuls certains des jeux de données raster et catalogues d'images doivent utiliser le type ST_Raster, créez un mot-clé personnalisé et définissez le paramètre RASTER_STORAGE pour ce mot-clé sur ST_Raster.
- Enregistrez et fermez le fichier texte.
- Importez le fichier mis à jour.
arcpy.ImportGeodatabaseConfigurationKeyword_management (r'c:/temp/adminconnect.sde', r'c:/temp/gdbconfig.txt')
Vous pouvez utiliser vos nouveaux paramètres de configuration dès que les données sont créées.