.

Complemento GeoRaster espacial de Oracle

In Oracle databases, raster data can be stored in SDO_GEORASTER objects available with the Oracle Spatial extension. In QGIS, the oracle_raster Oracle Spatial GeoRaster plugin is supported by GDAL and depends on Oracle’s database product being installed and working on your machine. While Oracle is proprietary software, they provide their software free for development and testing purposes. Here is one simple example of how to load raster images to GeoRaster:

$ gdal_translate -of georaster input_file.tif geor:scott/tiger@orcl

Esto cargará el raster en la tabla predeterminada GDAL_IMPORT, como una columna llamada “RASTER”

Administrar conexiones

Firstly, the Oracle GeoRaster Plugin must be enabled using the Plugin Manager (see El diálogo de complementos). The first time you load a GeoRaster in QGIS, you must create a connection to the Oracle database that contains the data. To do this, begin by clicking on the oracle_raster Add Oracle GeoRaster Layer toolbar button – this will open the Select Oracle Spatial GeoRaster dialog window. Click on [New] to open the dialog window, and specify the connection parameters (See Figure_oracle_raster_1):

  • Nombre: Introduzca un nombre para al conexión a la base de datos.

  • Instancia de la base de datos: Introduzca el nombre de la base de datos a la que desea conectarse.

  • Nombre de usuario: Especificar su nombre de usuario que usará para acceder a la base de datos.

  • Contraseña: Proporcionar la contraseña asociada con su usuario que es requerida para el acceso a la base de datos.

Figure Oracle Raster 1:

../../../_images/oracle_create_dialog.png

Crear dialogo de conexión de Oracle

Ahora, de vuelta en la ventana principal de GeoRaster espacial de Oracle (vea la Figure_oracle_raster_2), utilice la lista desplegable para elegir una conexión y utilice el botón [Conectar] para establecer la conexión. También puede [Editar] la conexión abriendo el dialogo previo y haciendo cambios en la información de la conexión, o usar el botón [Borrar] para eliminar la conexión desde la lista desplegable.

Seleccionar un GeoRaster

Una vez que la conexión se ha establecido, la ventana de subconjuntos de datos mostrará los nombres de todas las tablas que contengan columnas GeoRaster en esa base de datos en el formato de un nombre del subconjunto de datos GDAL.

Haga clic en uno de los subconjuntos de datos listados y después haga en [Seleccionar] para elegir el nombre de la tabla. Ahora se mostrará otra lista de subconjuntos de datos con los nombres de las columnas del GeoRaster en la tabla. Normalmente es una lista corta, ya que la mayoría de los usuarios no tendrán mas de una o dos columnas de GeoRaster en la misma tabla.

Clic sobre uno de los subconjuntos de datos en listados y después sobre [Seleccionar] para elegir una de las combinaciones tabla/columna. El dialogo mostrará ahora todos los registros que contengan objetos GeoRaster. Note que la lista de subconjunto de datos mostrará ahora las parejas de tablas de datos raster e Id de raster.

En cualquier momento, la entrada seleccionada se puede ser editar para ir directamente a un GeoRaster conocido o para regresar al inicio y seleccionar otro nombre de tabla.

Figure Oracle Raster 2:

../../../_images/oracle_select_dialog.png

Diálogo de selección de GeoRaster de Oracle

La entrada de datos seleccionados también puede usarse para introducir una cláusula WHERE al final de la cadena de identificación (ej. geor:scott/tiger@orcl,gdal_import,raster,geoid=). Vea http://www.gdal.org/frmt_georaster.html para mayor información.

Mostrar GeoRaster

Finally, by selecting a GeoRaster from the list of Raster Data Tables and Raster Ids, the raster image will be loaded into QGIS.

El dialogo Seleccionar GeoRaster espacial de Oracle puede cerrarse ahora y la siguiente ocasión en que se abra mantendrá la misma conexión y mostrará la misma lista previa de subconjuntos de datos, haciendo muy fácil abrir otra imagen del mismo contexto.

Nota

GeoRasters that contain pyramids will display much faster, but the pyramids need to be generated outside of QGIS using Oracle PL/SQL or gdaladdo.

Lo siguiente es un ejemplo usando gdaladdo:

gdaladdo georaster:scott/tiger@orcl,georaster\_table,georaster,georid=6 -r
nearest 2 4 6 8 16 32

Este es un ejemplo usando PL/SQL:

$ sqlplus scott/tiger
SQL> DECLARE
 gr sdo_georaster;
BEGIN
    SELECT image INTO gr FROM cities WHERE id = 1 FOR UPDATE;
    sdo_geor.generatePyramid(gr, 'rLevel=5, resampling=NN');
    UPDATE cities SET image = gr WHERE id = 1;
    COMMIT;
END;