[Gfoss] R: postgresql/postgis: due colonne geometry stessa tabella

Rossin Pietro pietro.rossin a arpa.fvg.it
Mer 19 Ago 2015 13:22:20 CEST


Ciao Sandro
Con quanto scrivi sotto Intendi creare una vista in cui sostituisco la geometria col tipo di geometria?

Allora, la tabella postgis in questione sono 4 geometrie, i poligoni delle province (geom) ed i centroidi (geom_point)
La connessione al server è lentuccia (non ho i dati in locale ma su un server di agenzia)

In pgadmin questa query

SELECT id, geom, provincia, geom_point
  FROM temp.prov3045;
ci impiega 20666ms

questa
SELECT id, GeometryType(geom) as geom, provincia, geom_point
  FROM temp.prov3045;
ci impiega 346ms

nel primo i valori della colonna geom sono di tipo geometry binario (credo) nel secondo vi è la stringa "multipolygon"

In qgis se carico i punti (centroidi) e provo ad aprire la tabella, dal momento in cui clicco su "apri tabella attributi" alla sua apertura passano cronometrati 27 secondi. La geometria da binaria è convertita in testo, tipo

id      geom    provincia
1       SRID=3045;MULTIPOLYGON(((390009.366919483 5072955.68976876, .........., ,390009.366919483 5072955.68976876)))   Trieste

Creando questa vista
CREATE OR REPLACE VIEW temp.provageomtype AS
 SELECT prov3045.id, geometrytype(prov3045.geom) AS geom, prov3045.provincia, prov3045.geom_point
   FROM temp.prov3045;

e caricandola in qgis la resa nell'apertura della tabella attributi è nettamente più veloce, circa 2 secondi.

Va bene questo tipo di informazioni??

Pietro

********************
Una prova che potresti fare, per aiutare nella risoluzione dell'incubo (a parte aprire un ticket, o commentare su uno gia' esistente) e'
costruire la vista in modo da includere ancora il campo geometrico MA attraverso una funzione di riduzione dell'output, tipo...
GeometryType.

In quel modo si potrebbe capire se il costo ("tempo infinito", lo chiamava qualcuno) e' nel caricare la geometria dal disco o nel presentarla al client.

--strk;
AVVISO DI RISERVATEZZA Informazioni riservate possono essere contenute nel messaggio o nei suoi allegati. Se non siete i destinatari indicati nel messaggio, o responsabili per la sua consegna alla persona, o se avete ricevuto il messaggio per errore, siete pregati di non trascriverlo, copiarlo o inviarlo a nessuno. In tal caso vi invitiamo a cancellare il messaggio ed i suoi allegati. Grazie. CONFIDENTIALITY NOTICE Confidential information may be contained in this message or in its attachments. If you are not the addressee indicated in this message, or responsible for message delivering to that person, or if you have received this message in error, you may not transcribe, copy or deliver this message to anyone. In that case, you should delete this message and its attachments. Thank you.


Maggiori informazioni sulla lista Gfoss