Slide Soru - Collana Seminari CRS4 2015

Post on 16-Jul-2015

80 views 0 download

transcript

Soluzioni software per l'analisi su web di dati ambientali a componente

geografica

Costantino Sorudino@crs4.it

Outline

➔ Introduzione: Applicazioni web a vocazione geografica

➔ Procedure ETL➔ Esempi applicativi

➔ Progetto Bilancio Idrologico – Sidro➔ Progetto EnviroGRIDS – Bashyt➔ Progetto Acque Costiere – OMT

Introduzione

Il gruppo si occupa di progettare e implementare soluzioni innovative per l'analisi di problematiche ambientali complesse come lo studio del ciclo dell'acqua o l'idrodinamica marina.

Le applicazioni sviluppate sono tipicamente utilizzate nel campo della pianificazione ambientale e del supporto decisionale e sono fruibili dal web.

Alla base delle applicazioni vi è l'utilizzo di strumenti di analisi numerica (modelli) ad approccio fisico.

Modelli ambientali

I modelli ambientali utilizzati necessitano di lunghi tempi di calcolo e risorse di storage elevate, ad esempio:

➔ Nell'ambito dell'analisi del ciclo dell'acqua la calibrazione del modello della regione Sardegna ha richiesto più di 2000 simulazioni. Per singolo run:

➔ Tempo di calcolo: 1h 40m➔ Dimensione dell'output: >10GB

➔ Previsione idrodinamica marina:

➔ Tempo di calcolo: 5h (media) ➔ Dimensione dell'output: >1GB

I codici vengono eseguiti su piattaforme di calcolo ad alte prestazioni (HPC).

Modelli ambientali

I software dei modelli richiedono complesse operazioni di creazione dell'input.

Modelli ambientali

I software dei modelli richiedono complesse operazioni di creazione dell'input.

Download dei dati di input dal web

Modelli ambientali

I software dei modelli richiedono complesse operazioni di creazione dell'input.

Download dei dati di input dal web

Elaborazione input (Condizioni Iniziali, a

contorno ecc)

Modelli ambientali

I software dei modelli richiedono complesse operazioni di creazione dell'input.

Download dei dati di input dal web

Elaborazione input (Condizioni Iniziali, a

contorno ecc) Run del modello

Modelli ambientali

I software dei modelli richiedono complesse operazioni di creazione dell'input.

Il pre-processing dell'input è risolto in modo automatico e temporizzato, senza intervento da parte dell'utente.

Download dei dati di input dal web

Elaborazione input (Condizioni Iniziali, a

contorno ecc) Run del modello

Extract Transform Load (ETL)

L'output dei modelli non è adatto per l'utilizzo su web; è richiesta una selezione dei dati e la loro trasformazione in un formato più performante.

Extract Transform Load (ETL)

L'output dei modelli non è adatto per l'utilizzo su web; è richiesta una selezione dei dati e la loro trasformazione in un formato più performante.

Run del modello

Extract Transform Load (ETL)

L'output dei modelli non è adatto per l'utilizzo su web; è richiesta una selezione dei dati e la loro trasformazione in un formato più performante.

Elaborazione dell'output (Extract e Transform)Run del modello

Extract Transform Load (ETL)

L'output dei modelli non è adatto per l'utilizzo su web; è richiesta una selezione dei dati e la loro trasformazione in un formato più performante.

Elaborazione dell'output (Extract e Transform)Run del modello

Creazione Database (Load)

Extract Transform Load (ETL)

L'output dei modelli non è adatto per l'utilizzo su web; è richiesta una selezione dei dati e la loro trasformazione in un formato più performante.

Elaborazione dell'output (Extract e Transform)Run del modello

Esposizione su web

Creazione Database (Load)

Extract Transform Load (ETL)

L'output dei modelli non è adatto per l'utilizzo su web; è richiesta una selezione dei dati e la loro trasformazione in un formato più performante.

Il post-processing dell'output è risolto in modo automatico e trasparente per l'utente finale.

Elaborazione dell'output (Extract e Transform)Run del modello

Esposizione su web

Creazione Database (Load)

ETL SWAT: Strutture Dati

L'output del modello SWAT viene scritto in file di testo con un struttura tabellare.

Ulteriori informazioni utilizzate nel processo di elaborazione del modello sono memorizzate in file di tipo DBF, Shapefile e Raster.

Per la rappresentazione web dei risultati di SWAT è necessario acquisire e rendere accessibili tutte le informazioni disponibili.

ETL SWAT: Sprite

Il software Sprite implementa la prima fase (Extract e Transform) della procedura ETL per Swat.

➔ Permette la selezione dei dati di interesse.

➔ Estrae i dati geografici (Raster e Shapefile) e climatologici (DBF) dal pre-processore ArcSwat.

➔ Normalizza e converte le informazioni secondo uno schema univoco.

➔ Crea un archivio compresso contenente le informazioni elaborate.

ETL SWAT: SwatSL

Swatsl (Swat to SpatiaLite) esegue le ultime fasi di trasformazione e la fase caricamento (Load) dei dati Swat.

➔ Esegue la trasformazione dei sistemi di riferimento sui dati spaziali.

➔ Legge i file testuali dell'output e li inserisce in tabelle relazionali.

➔ Normalizza i dati su uno schema relazionale univoco per garantire l'integrità e la coerenza delle informazioni.

➔ Salva tutti i dati in uno o più database SQLite con estensione spaziale Spatialite.

Rappresentazione dei dati

Una web-application consente di esporre sul web funzionalità proprie di software standalone, rendendole fruibili attraverso web browser, applicazioni per smartphone e servizi di rete.

Rappresentazione dei dati

Una web-application consente di esporre sul web funzionalità proprie di software standalone, rendendole fruibili attraverso web browser, applicazioni per smartphone e servizi di rete.

Un'architettura classica prevede tre elementi:

Una web-application consente di esporre sul web funzionalità proprie di software standalone, rendendole fruibili attraverso web browser, applicazioni per smartphone e servizi di rete.

Un'architettura classica prevede tre elementi:

Rappresentazione dei dati

Client (Browser / App)

Una web-application consente di esporre sul web funzionalità proprie di software standalone, rendendole fruibili attraverso web browser, applicazioni per smartphone e servizi di rete.

Un'architettura classica prevede tre elementi:

Application Server

Rappresentazione dei dati

Client (Browser / App)

Una web-application consente di esporre sul web funzionalità proprie di software standalone, rendendole fruibili attraverso web browser, applicazioni per smartphone e servizi di rete.

Un'architettura classica prevede tre elementi:

Database Server

Rappresentazione dei dati

Application ServerClient (Browser / App)

Una web-application consente di esporre sul web funzionalità proprie di software standalone, rendendole fruibili attraverso web browser, applicazioni per smartphone e servizi di rete.

Un'architettura classica prevede tre elementi:

Rappresentazione dei dati

Map Server

Application ServerClient (Browser / App)

Database Server

Esempi di Web-Application per l'analisi idrologica e oceanografica

Esempi Applicativi: Sidro

Obiettivo del progetto Bilancio Idrologico è lo studio e la valutazione delle risorse idriche della regione Sardegna, per il periodo 1924 – 2008.

Nell'ambito del progetto è stata eseguita la calibrazione del modello idrologico e sviluppata la web-application Sidro per la consultazione via web dei dati di simulazione prodotti.

Esempi Applicativi: Sidro

Esempi Applicativi: Sidro

Esempi Applicativi: Sidro

Esempi Applicativi: Sidro

Tecnologie impiegate:

Backend

➔ Sprite + Swatsl

➔ SQLite

➔ PostgreSQL + PostGIS

➔ Geoserver

➔ NodeJS

Frontend

➔ JQuery

➔ Bootstrap

➔ OpenLayers

Esempi Applicativi: Bashyt

Il progetto EnviroGRIDS ha l'obiettivo di monitorare e analizzare le risorse idriche dell'intero bacino del mar nero (2.2 milioni di km², 24 nazioni) attraverso tecnologie avanzate.

Nell'ambito del progetto è stata sviluppata l'applicazione Bashyt (BAsin Scale HYdrological Toolkit) che ha permesso di analizzare via web e con strumenti user-friendly la grande mole di dati di simulazione e studio prodotta dai 30 partner coinvolti.

Esempi Applicativi: Bashyt

Esempi Applicativi: Bashyt

Esempi Applicativi: Bashyt

Esempi Applicativi: Bashyt

Tecnologie impiegate:

Backend

➔ Glite (Grid)

➔ Sprite + Swatsl

➔ SQLite

➔ Mapserver

➔ Tomcat

Frontend

➔ JQuery

➔ mscross

Esempi Applicativi: OMT

Il progetto Acque Costiere ha l'obiettivo di studiare l’idrodinamica costiera per l’intera regione Sardegna e di consentire la previsione di fenomeni di inquinamento derivanti da Oil Spill.

Nell'ambito del progetto è stata messa in opera una infrastruttura modellistica allo stato dell'arte per la previsione operazionale delle dinamiche oceanografiche.

L'applicazione web-based OMT (Operational Marine Tool) accede all'infrastruttura di calcolo ed espone i risultati in maniera semplice e intuitiva.

Esempi Applicativi: OMT

Esempi Applicativi: OMT

Esempi Applicativi: OMT

Esempi Applicativi: OMT

Esempi Applicativi: OMT

Tecnologie impiegate:

Backend

➔ Python

➔ Linux

➔ Tomcat

Frontend

➔ JQuery

➔ Bootstrap

Conclusioni

➔ L'integrazione di competenze, dati e strumenti di interpretazione affidabili consente di ottenere una visione olistica e intuitiva di problemi complessi.

➔ L'utilizzo del web attraverso lo studio di front-end usabili e ergonomici permette di rendere trasparente agli utenti la complessità architetturale di back-end complessi come quelli descritti.

➔ Le soluzioni e le tecnologie mostrate possono essere estese ed applicate in ambiti di natura diversa.