open source

GeoServer Beginner’s Guide (not only for novice)

Let’w talk about a new book on Geoserver: a useful manual for everyone.Here’s my review:

“Who has had the idea of entitling this book “Beginner’s guide”? This manual is much much more! Actually, besides supplying beginners with the basics of GIS and Geoserver, it can well work as an operational manual at a more specialized level. Since several years I’ve been working with this software (Geoserver) for job, and therefore I have matured a certain experience; in the book I found some information on Geoserver that previously I could obtain only through several researches in websites and thematic forum. I’ve appreciated very much the “practical” sections and the multi-choices quiz that invite the reader to think again to what he has previously read and, possibly, to read it once more.

The section on GIS basics is very important because the given notions help in understanding and fully exploiting the potential of Geoserver; I’ve enjoyed very much to successfully execute on an ubuntu-like system the detailed and precise procedure for installing Geoserver and all necessary software. Chapters 3, 4 and 5 gradually introduce the reader into the secrets of the management interface and to the way of accessing and loading spatial data. Also in this case I’ve tried to execute the described procedures by following the tips of the authors: surprise! I’ve found myself perfectly comfortable both as an “absolute beginner” and as a GIS expert. The descriptions and the observations on the “WMS reflector” functionality are very useful, since this tool helps the user to publish spatial data according to his own needs.

Also in chapter 6 the approach is very “soft”, since it introduces the reader to the basics of the largely applied OGC standard; but then, gradually, the book checks the reader’s abilities with the practical section “time for action”, sums up the notions he has just learned with “What just happened?” and finally brings him to dare with the section “Have a go hero”.

In my opinion, from chapter 7 on, topics switch to an intermediate level: implementation of simple webgis applications, configuration of geowebcache software to enhance performances, description of REST interface to automatize tasks, up to the very important topic of security are treated. Nevertheless, the confidential tone, the numerous references to examples and practical procedures, together with the concepts learned in the previous chapters, allow even the less expert reader to try to implement and manage a simple spatial data infrastructure.

Chapters 11 e 12 are really appreciable: they list and describe the basics (and not only) for tuning Geoserver and enhancing its performances in enterprise environments, and how to manage “troubleshooting” also by means of several active “mailing lists”. I’ve been impressed by finding in about 30 well organized pages all the useful references, which makes this book resemble a real, easy-to-use and complete “practical handbook” To sum up, I think that this book is suitable and complete both for those who approach Geoserver for the first time and for those who work daily with this software.”

That’s all!  Good job!

You can find more informations and buy the book  here

Installing postgis 2.x as extension on Ubuntu 12.04 LTSInstallare postgis 2.x come estensione su Ubuntu 12.04 LTS

This is the procedure that I follow to implement postgis (vers.2.0) as extension:

  1. Installation of the  postgis 2.x packages  from the Ubuntu official repository;
  2. creation of a new fresh postgreSQL database “mydb” without any postgis function;
  3. creation  of the extension with pgAdminIII:
CREATE EXTENSION "postgis";
CREATE EXTENSION "postgis_topology";
CREATE SCHEMA postgis;
ALTER DATABASE mydb SET search_path="$user", public, postgis,topology;
GRANT ALL ON SCHEMA postgis TO public;
ALTER EXTENSION postgis SET SCHEMA postgis;

Questa è la procedura che ho seguito per implementare postgis (vers.2.0) come estensione:

  1. installazione del pacchetto postgis 2.x dal repository uffciale di Ubuntu;
  2. creazione di un nuovo database postgreSQL “mydb” senza installare nessuna funzione postgis;
  3. creazione dell’estensione attraverso i seguenti comandi eseguiti con pgadminIII:
CREATE EXTENSION "postgis";
CREATE EXTENSION "postgis_topology";
CREATE SCHEMA postgis;
ALTER DATABASE mydb SET search_path="$user", public, postgis,topology;
GRANT ALL ON SCHEMA postgis TO public;
ALTER EXTENSION postgis SET SCHEMA postgis;

Installation and configuration of a geodatabase Installazione e configurazione di un database geografico

Procedure:

  1. repository and software installation:
sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable
sudo apt-get update
sudo apt-get install -y postgresql-9.0 postgresql-server-dev-9.0 postgresql-contrib-9.0 projlibgeos-3.2.2 libgeos-c1 libgeos-dev libgdal1-1.8.0 libgdal1-dev build-essential libxml2 libxml2-dev checkinstall
wget http://postgis.refractions.net/download/postgis-1.5.3.tar.gztar zxvf postgis-1.5.3.tar.gz && cd postgis-1.5.3/
sudo ./configure && sudo make && sudo checkinstall --pkgname postgis-1.5.3 --pkgversion 1.5.3-src --default

2. creation of the geodatabase template

sudo su postgrescreatedb --template template0 template_giscreatelang plpgsql template_gis
psql -U postgres -d template_gis -f /usr/share/postgresql/9.0/contrib/postgis-1.5/postgis.sql
psql -U postgres -d postgis -f /usr/share/postgresql/9.0/contrib/postgis-1.5/spatial_ref_sys.sql
psql -U postgres -d postgis -c"select postgis_lib_version();"

4. Creation of the geodatabase and optionally his admin user:

CREATE USER dbuser PASSWORD 'secret';
CREATE DATABASE dbname OWNER dbuser TEMPLATE template_gis
\connect dbname
GRANT ALL ON geometry_columns TO dbuser;
GRANT SELECT ON spatial_ref_sys TO dbuser;

SO: Ubuntu 12.04 LTS 64 bit
Fonts: (Nicolo Rigacci, Simon Tokumine)

1. Installazione software e repository:

sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable
sudo apt-get update
sudo apt-get install -y postgresql-9.0 postgresql-server-dev-9.0 postgresql-contrib-9.0 projlibgeos-3.2.2 libgeos-c1 libgeos-dev libgdal1-1.8.0 libgdal1-dev build-essential libxml2 libxml2-dev checkinstall
wget http://postgis.refractions.net/download/postgis-1.5.3.tar.gztar zxvf postgis-1.5.3.tar.gz && cd postgis-1.5.3/
sudo ./configure && sudo make && sudo checkinstall --pkgname postgis-1.5.3 --pkgversion 1.5.3-src --default

2. creazione template Database geografico

sudo su postgrescreatedb --template template0 template_giscreatelang plpgsql template_gis
psql -U postgres -d template_gis -f /usr/share/postgresql/9.0/contrib/postgis-1.5/postgis.sql
psql -U postgres -d postgis -f /usr/share/postgresql/9.0/contrib/postgis-1.5/spatial_ref_sys.sql
psql -U postgres -d postgis -c"select postgis_lib_version();"

3. creazione_di_un_database_geografico

A partire dal template creato si crea un database geografico. Per semplicità di amministrazione si crea un utente che sarà proprietario del database:

CREATE USER dbuser PASSWORD 'secret';
CREATE DATABASE dbname OWNER dbuser TEMPLATE template_gis
\connect dbname
GRANT ALL ON geometry_columns TO dbuser;
GRANT SELECT ON spatial_ref_sys TO dbuser;

SO: Ubuntu 12.04 LTS 64 bit
Fonti: (Nicolo Rigacci, Simon Tokumine)

Installazione di spatialite 2.4 (Release Candidate 4)

Questa è la procedura seguendo le istruzioni di installazione ho personalizzato con l’aiuto di Alessandro Furieri.

  • http://www.gaia-gis.it/spatialite/
  • http://www.gaia-gis.it/spatialite-2.4.0-4/sources.html

Sistema operativo e librerie : Linux ubuntu 10.10; geos 3.2.2-CAPI 1.6.2 ; proj 4.7.1.
SPATIALITE(2.4RC4):

procedura:

Installazione da repository Ubuntu 10.10 di “spatialite-bin_2.4-RC4”

SPATIALITE-gui (1.4.0):

Procedura:

1.Tutti i sorgenti sono stati installati con la seguente sintassi:

@CFLAGS=”-I/usr/include/geotiff” ./configure \
–with-geos-include=/usr/include/geos \
–with-geos-lib=/usr/lib \
@make
@make install

2.Installazione da sorgenti di Spatial-gui-1.4.0 (spatialite_gui-1.4.0.tar.gz);

3.Installazione da sorgenti delle librerie “libgaiagraphics” (libgaiagraphics-0.4.tar.gz);

4.Installazione da repository Ubuntu 10.10 delle librerie “libcairo2-dev”;

5.Installazione dei “wxWidgets” seguendo la procedura http://wiki.wxpython.org/InstallingOnUbuntuOrDebian;

 

 

IL SOFTWARE LIBERO PER GLI INGEGNERI – seminario di formazione e aggiornamento

Il 15 aprile scorso l’associazione Apriti Software! col sostegno dell’Ordine degli Ingegneri della Provincia di Cagliari e del DIEE – Dipartimento di Ingegneria Elettrica ed Elettronica della facoltà di Ingegneria di Cagliari, ha organizzato un seminario di formazione e aggiornamento sull’utilizzo di strumenti free/open source nell’esercizio della professione dell’ingegnere.

Di seguito il mio talk sugli strumenti OS per l’informazione geografica, buona lettura!

Scarica il file PDF

Installation of libreoffice 3.3 on Ubuntu 10.04 (Lucid)Installazione del software libreoffice 3.3 su Ubuntu 10.04 (Lucid)

In this article I want to share my experience with the installation of the Libre Office free software. First of all I just want to thank the document foundation. Iwish you good luck!!! for this great initiative.

Now this simply procedure (taken from the ubuntu forum):

1. Download LibreOffice from: LibreOffice Downloads;

2. Extract the file to ~/Desktop

3. Rename the file to libreoffice

4. Open Terminal and enter this command:

sudo dpkg -i ~/Desktop/libreoffice/DEBS/*.deb

5. Then enter the following command into Terminal:

sudo dpkg -i ~/Desktop/libreoffice/DEBS/desktop-integration/libreoffice3.3-debian-menus_3.3-9526_all.deb

In questo artico lo vorrei condividere la mia esperienza di installazione del sofware libero Libre Office su ubuntu 10.04 (lucid lynx). Di seguito la semplice procedura che ho seguito (Ubuntu forum)

1. Scaricare LibreOffice from: LibreOffice Downloads;
2. Estrarre i file in ~/Desktop
3. Rinominare la directory in “libreoffice”
4. Aprire un terminal ed eseguire:

sudo dpkg -i ~/Desktop/libreoffice/DEBS/*.deb

5. Successivamente questo:

sudo dpkg -i ~/Desktop/libreoffice/DEBS/desktop-integration/libreoffice3.3-debian-menus_3.3-9526_all.deb

The importance of being dynamic (for a WFS)L’importanza di essere dinamico (per un WFS)

These are the results of a “personal” functionality comparison on some GIS desktop:

– web feature service:  Sardinia Region WFS (2000 objects limited)

– layer used: usoSuolo2008

Udig 1.2: AUTOMATIC load of the current map extent objects; AUTOMATIC new request during the navigation (zooming, pan, ecc.); preservation of the thematization; AUTOMATIC load of the web service intire list layer;

gvSIG 1.9: MANUAL load of the current map extent objects; MANUAL new request during the navigation (zooming, pan, ecc.);  NO preservation of the thematization; AUTOMATIC load of the web service intire list layer;

quantum GIS 1.3: NO load of current map extent objects; AUTOMATIC load of the web service intire list layer;

 

ESRI arcGIS 9.3.1: NO load of current map extent objects; NO loading intire list layer of the web service.

 

As you see with these requirements and these Web Feature Service charateristics the best GIS desktop that provide “dynamic WFS request funcionality” is Udig 1.2  followed by gvSIG 1.9, Qgis 1.3 and arcGIS 9.3.1.La maggior parte dei sotware GIS forniscono la possibilità di accedere in maniera più o meno user friendly a servizi di mappe (es. servizi OGC); in particolare mi riferisco al servizio WFS (Web Features Service). In questo articolo vorrei mettere in evidenza l’importanza di poter gestire questa funzionalità in modo dinamico.

Ho eseguito alcuni test funzionali su diversi software (ESRI ArcGIS arcview 9.3.1, gvSIG 1.9, Quatum GIS 1.3 e Udig 1.2) che permettono l’utilizzo del servizio WFS. Come web service di riferimento ho utilizzato quello della Regione Sardegna (limitato a 2000 oggetti/per singola richiesta – per evitare crash del sistema), ed in particolare il layer “usoSuolo2008”.  Con un tematismo così complesso non è pensabile l’aumento  della “capacità di esposizione” del web server senza comprometterne la stabilità e le performance; d’altra parte deve essere possibile una gestione “smart” delle informazioni geografiche esposte.

Questo requisito fondamentale è soddisfatto in maniera completa solo dal sw Udig 1.2M6 ed in maniera parziale dal sw gvSIG 1.9; non viene invece soddisfatto da ESRI ArcGIS arcview 9.3.1 e da Quatum GIS 1.3:

Udig 1.2M6: consente di caricare automaticamente tutti gli elementi esposti dal web server (2000 in questo caso) del layer richiesto qualunque sia il map extent il sw GIS effettua in automatico una nuova richiesta al servizio WFS mostrando tutti i 2000 oggetti ricadenti nel nuovo map extent. Inoltre qualsiasi tematizzazione venga associato al layer essa viene mantenuta durante la navigazione (zoom in, zoom out, panning, ecc.);

gvSIG 1.9: consente di caricare manualmente tutti gli elementi esposti dal web server (2000 in questo caso) del layer richiesto qualunque sia il map extent l’utente deve effettuare manualmente una nuova richiesta al servizio WFS mostrando tutti i 2000 oggetti ricadenti nel nuovo map extent. Qualsiasi tematizzazione venga associata al layer essa non viene mantenuta durante la navigazione (zoom in, zoom out, panning, ecc.);

Quatum GIS 1.3: gestione “statica” della richiesta al servizio WFS , cioè vengono caricati sempre i primi 2000 elementi esposti dal servizio qualunque sia l’inquadramento di mappa definito dall’utente rendendo inutile in queste condizioni l’utilizzo del servizio WFS per layer complessi.

ESRI ArcGIS arcview 9.3.1: gestione “statica” della richiesta al servizio WFS , cioè vengono caricati sempre i primi 2000 elementi esposti dal servizio qualunque sia l’inquadramento di mappa definito dall’utente rendendo inutile in queste condizioni l’utilizzo del servizio WFS per layer complessi. Inoltre arcGIS non consente la visualizzazione dell’intera lista di layer fornita dal servizio WFS, è necessario abilitare diverse connessioni.

Quindi dai  risultati di questo test il software che meglio si adatta all’utilizzo di un servizio WFS  dinamico è Udig 1.2.

Database non relazionali (nosql)|No relational database (nosql)

Segnalo un interessante articolo di Jonathan Ellis sui database non relazionali. In effetti Jonathan mette in luce diversi aspetti e svantaggi dei RDBMS che hanno fatto scegliere diverse aziende database di questo tipo.

“Il problema fondamentale è che i data base relazionali non possono gestire molti dei moderni carichi di lavoro. Vengono individuate tre tre specifiche problematiche:

Tra i progetti più conosciuti ed utilizzati si ricordano Cassandra e MongoDB.I want to point out an interesting article of Jonathan Ellis on “no relational” databases (nosql).

“The fundamental problem is that relational databases cannot handle many modern workloads.  There are three specific problem areas: scaling out to data sets like Digg’s (3 TB for green badges) or Facebook’s (50 TB for inbox search) or eBay’s (2 PB overall), per-server performance, and rigid schema design.”

To reminder projects like Cassandra e MongoDB.