.

Oracle Spatial GeoRaster-plugin

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

Deze plugin laad een raster in de standaard GDAL_IMPORT tabel, als een kolom met de naam RASTER.

Verbindingen beheren

Om te beginnen moet de Oracle GeoRaster plugin worden geactiveerd met behulp van de Plugin Manager (zie Sectie The Plugins Menus). Wanneer men een GeoRaster in QGIS wilt geladen, moet eerst een verbinding tot stand gebracht worden met de Oracle database die de gegevens bevat. Klik daarvoor op de knop oracle_raster Oracle GeoRaster toevoegen, waardoor het Selecteer het Oracle Spatial GeoRaster invoerscherm zal worden geopend. Klik dan op [Nieuw] om het invoerscherm Nieuwe Oracle-verbinding aanmaken te openen en waarin men de benodigde parameters kan invullen (Zie Figure_oracle_raster_1):

  • Name: Geef een naam voor de verbinding met de database.

  • Database instance: Geef de naam van de database waarmee verbinding moet worden gemaakt.

  • Gebruikersnaam: Geef de gebruikersnaam op die gebruikt zal worden om toegang te krijgen tot de database.

  • Wachtwoord: Geeft het wachtwoord die samen met gegeven gebruikersnaam toegang geeft tot de database.

Figure Oracle Raster 1:

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

Create Oracle connection dialog

Gebruik in het Oracle Spatial GeoRaster paneel (zie Figure_oracle_raster_2), de drop-down lijst om een verbinding te selecteren, en maak gebruik van de [Verbinden]-knop om de verbinding tot stand te brengen. [Bijwerken] van de gegevens van de verbinding is ook mogelijk door de vorige dialoog te starten. De [Delete]-knop kan worden gebruikt om de verbinding te verwijderen uit de drop-down lijst.

Een GeoRaster selecteren

Wanneer de verbinding is opgezet, zal een scherm met subdatasets een overzicht geven van alle tabellen die GeoRasters bevatten in het formaat van een GDAL subdataset naam .

Klik op één van de getoonde subdatasets en klik daarna op [Selecteren] om een tabel aan te wijzen. Vervolgens verschijnt een nieuwe lijst met subdatasets met de namen van GeoRaster kolommen in de tabel. Dit is doorgaans een vrij korte lijst omdat de meeste gebruikers slechts één of twee GeoRaster kolommen in dezelfde tabel hebben.

Klik op één van de getoonde subdatasets en klik vervolgens op [Selecteren] om één van de tabel/kolom-combinaties te kiezen. De dialoog zal nu alle rijen tonen die GeoRaster objecten bevatten. De subdataset-lijst toont nu de Raster Data Tabel en de Raster Id’s.

De keuze kan op elk moment worden gewijzigd om direct naar een bekend GeoRaster te gaan of om terug te gaan naar het begin om een andere tabelnaam te selecteren.

Figure Oracle Raster 2:

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

Selecteren van een Oracle GeoRaster dialoog

In het invoervak Selecteren kan ook een WHERE zoekvraag worden ingevoerd aan het eind van de identificatie-regel, bijvoorbeeld geor:scott/tiger@orcl,gdal_import,raster,geoid=. Zie http://www.gdal.org/frmt_georaster.html voor meer informatie.

Het GeoRaster tonen

Ten slotte zal de rasterafbeeling worden geladen in QGIS door het GeoRaster uit de lijst van de Raster Data Tabellen en Raster Id’s te selecteren.

Het venster Selecteer het Oracle Spatial GeoRaster kan nu worden gesloten. Wanneer het later opnieuw geopend wordt zal het dezelfde verbinding gebruiken en het zal dezelfde voorgaande lijst van subdatasets tonen. Dit maakt het eenvoudig om nog een raster uit diezelfde database te laden.

Notitie

GeoRasters die piramiden bevatten zullen veel sneller worden getoond maar de piramiden moeten vooraf buiten QGIS worden gegenereerd met behulp van Oracle PL/SQL of gdaladdo.

Hier volgt een voorbeeld hoe gdaladdo kan worden gebruikt:

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

Dit is een voorbeeld met gebruikmaking van 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;