際際滷

際際滷Share a Scribd company logo
PARTE SECONDA
ORDBMS e NoSQL nel trattamento
dei dati geografici
Cagliari 30 Settembre 2015
RDBMS: Sistema di gestione di database con
modello di dati relazionale
ORDBMS: Sistema per la gestione di insiemi di
dati simile ad un DBMS relazionale ma con un
modello dei dati orientato agli oggetti, cio竪 oggetti,
classi, ereditariet, polimorfismo sono supportati
direttamente nello schema del database e nel
linguaggio di interrogazione. (SQL:1999)
(O)RDBMS
Cagliari 30 Settembre 2015
Cagliari 30 Settembre 2015http://db-engines.com/en/ranking
Cagliari 30 Settembre 2015
MYSQL Spatial:
 https://dev.mysql.com/doc/refman/5.0/en/using-spatial-data.html
 https://dev.mysql.com/doc/refman/5.0/en/spatial-extensions.html
Oracle Spatial:
 http://docs.oracle.com/cd/B28359_01/appdev.111/b28400/sdo_intro.htm#i881614
DB2 Spatial:
 http://www-03.ibm.com/software/products/en/db2spaext
Sql Server:
 https://technet.microsoft.com/en-us/library/bb933876%28v=sql.105%29.aspx
Postgis:
 http://postgis.net/
http://postgis.net/docs/manual-2.1/
(O)RDBMS
Cagliari 30 Settembre 2015
Una breve sessione su phpPgAdmin.....
http://gisepi.crs4.it/phppgadmin/
Login: 'studente' Password: '123pass456'
Postgis
Cagliari 30 Settembre 2015
Gis computing
Cagliari 30 Settembre 2015
workflow, risorse (disco, memoria, core), grid
computing, cloud computing
 e non ti hanno ancora detto
dove piazzeranno le trivelle
Pare che i dati dei profili
utente siano il nuovo
petrolio...
get more data

Internet of things, reti di sensori, social,
sequenze temporali, profilazione, business
intelligence
 analisi e gestione di big data
 modello del dato flessibile
 numero accessi e performance
...quale 竪 il ruolo del gis in questo contesto?
Dimensione dei dati

I dati e la loro geolocazione
Flessibilit e modello dei dati
vincoli, chiavi esterne, indici, gestione dati
etc..
Nei (O)RDBMS la gestione del modello dei
dati 竪 rigida (e.g verifiche di coerenza)
anche se modificabile.
Flessibilit
皆界温鉛温恢庄鉛庄岳
La 皆界温鉛温恢庄鉛庄岳 竪 il vero tallone d'achille dei
(O)RDBMS. Le possibili soluzioni per BIG-data quali
database distribuiti o partizionamento non hanno
portato soluzioni convincenti.
Esempio: I punti di accesso distribuiti
territorialmente nelle infrastrutture dei social
(numero utenti  numero accessi e dimensione dati )
 molti utenti, molti accessi, big data le soluzioni
NoSQL diventano una necessit in diversi campi
皆界温鉛温恢庄鉛庄岳
NoSQL
or
Not only SQL
or
Not Relational
or...
SparkSQL
http://blogs.esri.com/esri/arcgis/2013/08/16/st_geometry-aggregate-functions-for-hive-in-spatial-framework-for-hadoop/
Struttura a nodi, comunicazione asincrona.

Un insiemi di nodi definisce un cluster

Meccanismo di interrogazione map - reduce

Indici primario su chiave  valore

Limite nel dato atomico ( singolo attributo,
documento, cella etc..) 20 Mb
Flessibilit del modello dei dati (cambiamenti a
caldo garantito senza interruzioni servizio)
皆界温鉛温恢庄鉛庄岳
NoSQL

Ancora giovane: pochi strumenti accessori GIS

Utilizzo risorse: gestire una struttura con vari nodi e
quindi dotare di core, memoria e disco ciascun nodo
 su basi di dati non big il costo / efficenza 竪 a
favore dei (O)RDBMS

Indicizzazione secondaria sui dati spaziali da
migliorare

I NoSQL non risolvono tutto da soli: 竪 neccessario
realizzare sovra-strutture ad hoc per la gestione delle
query
NoSQL
Tipo 1) modello del dato chiave-valore (Key-
Values) il valore 竪 un oggetto del tutto trasparente
per il sistema, cio竪 non 竪 possibile fare query sui
valori ma solo sulle chiavi.
Tipo 2) gestisce database orientati ai documenti
(Document database) sono simili a tabelle hash con
un unico campo di identificazione e valori che
possono essere di qualunque tipo. I documenti (XML,
JSON, BSON, etc.) possono contenere strutture
nidificate. Supportano indici secondari, replicazione
e interrogazioni ad hoc.
Tipi di motori NoSQL
Tipo 3) gestisce database orientati alle colonne
(Column-oriented) organizzano i dati per colonne, le
righe possono avere associate diverse colonne e
tutte accessibili attraverso una chiave di riga. le
righe non hanno necessariamente le stesse colonne
e le colonne possono essere aggiunte alle righe in
qualsiasi momento senza doverle aggiungere alle
altre righe della stessa famiglia.
Tipi di motori NoSQL
Tipo 4) gestisce database a grafo (Graph
database) rappresentano un caso particolare di
database orientati ai documenti in cui i documenti
rappresentano sia i nodi che le relazioni che
interconnettono i nodi. Questi database sono utili
per risolvere i problemi di memorizzazione e
gestione di dati interconnessi.
Tipi di motori NoSQL
CouchDB
https://github.com/couchbase/geocouch/
MongoDB
http://www.slideshare.net/nknize/rtree-spatial-indexing-with-mongodb-mongodc
http://docs.mongodb.org/manual/applications/geospatial-indexes/
http://mongogis.org/
NoSQL orientati ai documenti
Couchbase
http://docs.couchbase.com/admin/admin/Views/views-geospatial.html
Amazon DynameDB
https://github.com/awslabs/dynamodb-geo
NoSQL orientati ai documenti
Hbase (Hadoop)
http://www.slideshare.net/Hadoop_Summit/grailer-hochmuth-june27515pmroom212v3
http://www.slideshare.net/hhdd2005/hgrid-a-data-model-for-large-geospatial-data-sets-in-hbase?related=1
Gis hadoop:
https://github.com/Esri/gis-tools-for-hadoop
Spatial hadoop:
http://spatialhadoop.cs.umn.edu/
NoSQL orientati alle colonne
AllegroGraph
http://franz.com/agraph/allegrograph/
http://franz.com/agraph/support/documentation/current/sparql-geo.html
Neo4j Spatial
https://github.com/neo4j-contrib/spatial
NoSQL graphDB
...MongoDB
- GeoJSON objects
 shell
- Legacy coordinate pairs
http://mongly.openmymind.net/geo/index
Domande?

More Related Content

ORDBMS e NoSQL nel trattamento dei dati geografici parte seconda. 30 Sett. 2015