[Gfoss] OT: an open, non-ArcObjects based means for working with File Geodatabases
a.furieri a lqt.it
a.furieri a lqt.it
Dom 28 Ago 2011 09:36:58 CEST
On Sat, 27 Aug 2011 23:30:11 +0200, G. Allegri wrote
> In ogni caso, credo sia una cosa utile (sebbene da molti vista come la solita mossa commerciale
> d'aggancio all'OS, sullo stile delle varie big farm), perché offre uno strumento in più verso
> l'integrazione e l'interoperabilità...
> Il che può essere sempre uno step verso una migrazione più free.
>
mi sono scaricato le API ESRI del GeoDatabase:
eccovi una veloce e sommaria recensione.
LICENZA:
assolutamente non libera: vietata la redistribuzione
a terzi, ciascun singolo utente deve scaricarsi le API
per proprio conto previa registrazione ed accettazione
dell'accordo di licenza con ESRI.
SW:
si tratta di un insieme di librerie per Windows (32 e 64 bit)
e per Linux (32 e 64 bit): Mac Os X pare del tutto non
supportato, così come qualsiasi altra piattaforma.
lib pesantucce: circa il doppio di SpatiaLite (in MB)
LINGUAGGI:
C++ (per WinOz anche C#)
STRUTTURA DEL DBMS:
sorprendentemente, abbastanza simile a MySQL.
un GeoDBMS in effetti è un'intera cartella, che contiene
al suo interno moltissimi file: una singola "tavola/layer"
richiede 3 o 4 files distinti (dati, indici, spatial index,
struttura).
Più ovviamente ulteriori files per metadati e cataloghi
FUNZIONALITA':
le API consentono di creare un GeoDB, creare e cancellare
le tavole, interrogare lo schema da un GeoDB già esistente etc.
Inoltre supportano l'interrogazione, inserimento, modifica e
cancellazione di singole features.
LIMITAZIONI:
non è possibile gestire i Rasters, le reti e le topologie
possono essere lette ma la scrittura non è abilitata.
L'unico tipo di Spatial Query supportato è il filtraggio
per BBOX aka MBR (non sono sicurissimo, ma pare di capire
che gli Spatial Index anche quando presenti non possono
essere utilizzati).
SQL:
Assai perplimente: almeno dagli esempi, pare proprio che
SQL sia inteso per gestire tutti i dati "normali", mentre
non supporta affatto la parte Spatial vera e propria.
Non sono riuscito a trovare la minima traccia di supporto
per OFG-SFS: insomma, scordatevi ST_AsText() o ST_GeomFromTex()
Per qualsiasi operazione Spatial occorre usare le API C++
ACCESSI CONCORRENTI:
più utenti possono accedere simultaneamente in lettura.
secondo la documentazione qualsiasi tentativo di accesso
simultaneo in scrittura può facilmente causare la corruzione
irreversibile del GeoDB.
CONCLUSIONI:
Lo dice la documentazione stessa: queste API sono intese
esclusivamente per consentire la migrazione dei dati
da/per altri sistemi di storage.
Insomma, non si tratta affatto di uno Spatial DBMS vero
e proprio, ma semplicemente di un "formato file", per
quanto sofisticato e complesso.
Per supportare le funzioni Spatial in modo degno
servono comunque i prodotti ArcXxx "veri" (a pagamento).
Molto più prosaicamente queste API consentono di recuperare
i dati memorizzati in un GeoDB, oppure di creare da zero un
GeoDB trasferendovi dati di altra provenienza.
Funzioni sicuramente utili e forse anche preziose quando
l'integrazione spinta con sistemi ESRI è un must assoluto.
Ma altrettanto sicuramente del tutto inutili in qualsiasi
altro contesto, cioè quando l'uso di sw ESRI non è previsto
in nessuna fase.
ciao Sandro
-------------- parte successiva --------------
Un allegato HTML ? stato rimosso...
URL: <http://lists.gfoss.it/pipermail/gfoss/attachments/20110828/5ebcd894/attachment.html>
Maggiori informazioni sulla lista
Gfoss