Oracle 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 OracleGeoRasterPlugin 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 Loading a QGIS Core Plugin). Wanneer voor de eerste keer een GeoRaster in|qg|moet worden geladen is het nodig eerst een verbinding tot stand te brengen met de Oracle database die de gegevens bevat. Klik daarvoor op de knop oracle_raster Select GeoRaster, 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 voor de benodigde parameters daarin in (Zie Figure_oracle_raster_1):

  • Naam: Vul een naam voor de verbinding naar de database in

  • Database instantie: Vul de naam van de database waarmee een verbinding gemaakt moet worden in

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

  • Wachtwoord: Het wachtwoord dat gekoppeld is aan de gebruikersnaam die nodig is om toegang tot de database te krijgen

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

Nadat de verbinding tot stand gebracht is worden in het sub-datasets paneel de namen getoond van alle tabellen die GeoRaster kolommen bevatten in de database. Zij worden getoond in het format 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 kan 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 paren 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 en 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-reeks, bijvoorbeeld geor:scott/tiger@orcl,gdal_import,raster,geoid=. Zie http://www.gdal.org/frmt_georaster.html voor meer informatie daarover.

Het GeoRaster tonen

Ten slotte zal de rasterafbeeling worden geladen in QGIS door het GeoRaster uit de lijst van de Raster Data Tabel 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 dezelfde context nogmaals op te roepen.

Notitie

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

Hier volgt een voorbeeld met gebruikmaking van gdaladdo:

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;