ORDBMS e NoSQL nel trattamento dei dati geografici parte seconda. 30 Sett. 2015
1. PARTE SECONDA
ORDBMS e NoSQL nel trattamento
dei dati geografici
Cagliari 30 Settembre 2015
2. 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
8. … e non ti hanno ancora detto
dove piazzeranno le trivelle
Pare che i dati dei profili
utente siano il nuovo
petrolio...
9. 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?
11. 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à
13. La Scalabilità è 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
Scalabilità
14. 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/
15. 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)
Scalabilità
NoSQL
16. ●
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
17. 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
18. 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
19. 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