Database relazionali FOSS e GeoDatabase

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Database relazionali FOSS e GeoDatabase"

Transcript

1 Database relazionali FOSS e GeoDatabase dott. Marco Ciolli 1 ing. Fabio Zottele 2 1 D.I.C.A. Università degli Studi di Trento 2 SIG Fondazione Mach - FEM GRASS, FREE ed OPEN SOURCE GIS e GEODATABASE Trento, giugno 2011

2 I data base: caratteristiche principali Un significativo antenato dei database relazionali odierni per caratteristiche e struttura è la vecchia agenda telefonica. Infatti è organizzata tramite un indice (la serie di linguette sul fianco che ci permette di accedere più rapidamente a tutti i nominativi che iniziano con una certa lettera) che gestisce una tabella composta da colonne che identificano il tipo di dato sotto riportato (nome, numero di telefono, a volte indirizzo) all'interno delle registrazioni (se vogliamo chiamarle con il termine inglese le chiameremo "record") che, anche se differiscono l'una dall'altra per i dati riportati al loro interno "hanno tutti la stessa struttura", cioè riportano le stesse informazioni nella medesima maniera.

3 Il primo tentativo per trasferire questo insieme di dati in un aggeggio gestibile dalle calcolatrici era il CSV (Comma Separated Value), file di testo (tuttora utilizzato come file di scambio) dove ogni informazione (numero di telefono di Gino, nome di Fausto, indirizzo di Franco) è separata dalle altre tramite un carattere (in genere una virgola) ed ogni record (cioè la riga della nostra agenda) è separato dagli altri tramite un altro carattere (in genere il carattere di "a capo"). Tale sistema era abbastanza scomodo, per trovare quanto si ricercava all'interno di un file così fatto un'informazione specifica era spesso necessario scorrerselo quasi tutto ed in modo poco pratico. Gino,Bartali,Via Panicale,565446<- Fausto,Coppi,Via Panicale,<- Franco,Bitossi,Via Tornabuoni,465453<- dal CSV nacque l'isam (Indexed Sequential Access Method), che differiva dal CSV per il fatto che i record non erano messi dentro secondo l'ordine di inserimento e quindi potenzialmente a caso), bensì veniva definito un ordinamento (che nel caso dell'agenda telefonica sarebbe l' ordine alfabetico dei cognomi) Gino,Bartali,Via Panicale,565446<- Franco,Bitossi,Via Tornabuoni,465453<- Fausto,Coppi,Via Panicale,<-

4 Tale ordinamento veniva sfruttato sia in scrittura ("dove scrivo il record del telefono di Binda?" "lo inserisco tra il record di Bartali e Bitossi") sia in lettura ("dove vado a cercare il numero di telefono di Coppi?" " lettera C, tra Cinelli e Cumini") così da abbreviare significativamente i tempi di ricerca di una data informazione. Per riuscire a gestire ancora meglio il tutto si crearono anche delle specie di "archivi sussidiari", detti indici, in cui veniva registrato solo l' ordine dei vari record senza tutte le altre informazioni, il che permetteva di andare a svolgere le proprie ricerche in questo "riassunto" in modo molto più veloce (meno roba da leggere=ci metto di meno a leggerla) e poi "puntare diritti" sul database completo per leggere tutto il record una volta che si sapeva dov'era Allora parecchi matematici si misero a cercare metodi per rendere più veloce l' accesso alle informazioni sfornando sistemi di ricerca dai nomi fantasiosi come "ricerca dicotomica" o " a farfalla" (di cui non ci occupiamo qui), sviluppando così tutti quei sistemi oggi definiti "Database non relazionali" (in contrapposizione ai database relazionali)

5 Per risolvere tutti questi problemi in maniera soddisfacente si è dovuto cambiare il modo di "pensare" i database, portando così alla nascita dei database relazionali come sono strutturati oggi con l'evoluzione dei DB relazionali i database ebbero una notevole diffusione e quindi iniziarono a nascere richieste di affidabilità e di prestazioni sempre maggiori, con uno sviluppo teorico notevole dietro ad essi, che permetteva a questo punto di affrontare diversi problemi, di cui di seguito elenco quelli più conosciuti. Ridondanza dei dati: ma è possibile evitare di rimettere nel mio database della contabilità duemila volte l'indirizzo del mio cliente principale? Uniformità dei dati con che nome ho inserito la Cozza Vongola e Molluschi SRL l'ultima volta? CVM? C.V.M.? C.V.M. SRL.? C.V. & M. SRL?" Indipendenza dalla piattaforma sul sistema di Pino per vedere il contenuto di una tabella faccio così su quello di Mino e Lino cosà, su quello di Addolorato e sul mio in un altro modo completamente diverso Sicurezza delle transazioni DISASTRO! stavo mettendo dentro al database tutte le fatture dell'ultimo semestre quando è andata via la corrente ed adesso non so se l'ultima me l'ha presa o no! Ed ora cosa faccio, devo ricostruire l'intera tabella delle fatture per essere certo che non ci siano valori doppi o inseriti a metà? La possibilità di gestire correttamente un ambiente multiutente sono certo di avere inserito l'ordine per le ultime tre scatole di Mandingo a nome del mio miglior cliente e quelle sono finite invece al peggior cliente di un altro commerciale? eppure Sono Sicuro di averle fermate al magazzino per primo.

6 Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale Cos è un Database? Un database è una raccolta di dati che è organizzata in modo tale che il suo contenuto possa essere facilmente consultato, gestito e aggiornato. Il tipo prevalente di database è quello relazionale un database tabellare in cui il dato è definito così da poter essere riorganizzato e consultato in molti modi differenti. (Molti sostengono che non esista una definizione soddisfacente) Un DB può avere una struttura di organizzazione dei dati elementare o molto complicata, in funzione dell ambito applicativo e della quantità e tipologia delle informazioni da memorizzare Degli esempi di data base sono un agenda personale (nomi, calendario appuntamenti), un archivio universitario (studenti, matricole, esami, docenti, insegnamenti) E necessario introdurre alcuni concetti di base: tabella record campi chiavi query SQL DBMS

7 tabella è una raccolta di dati organizzati in righe e colonne ogni tabella, in genere, rappresenta un raccolta di informazioni su uno specifico argomento o tematica ad esempio possiamo avere una tabella per gli studenti, una per i corsi e una per i docenti record (tupla) è una singola riga di una tabella ci consente di identificare un determinato insieme di dati, all interno di tutti quelli che sono contenuti nella tabella per esempio nella tabella Corsi degli studenti di ingegneria ci sarà il record relativo a Pianificazione Ecologica oppure GIS e Cartografia Numerica Dunque un Database è costituito da una serie di tabelle differenti Una tabella è composta da record omogenei Un record è composto dalle voci dei campi Database Campi Tabella Corsi Codice Nome Ore 123E Ecologia P Pianificazione ecologica I GIS e cartografia numerica 100 Record Studenti Matricola Nome Cognome Indirizzo Telefono 1214 Gino Bartali Via Panicale Fausto Coppi Via Panicale 802 Franco Bitossi Via Tornabuoni Docenti CodiceProf Nome Cognome Indirizzo Telefono CodiceCorso 1012 Marco Bianchi Via Bella E 1025 Paolo Rossi Via Allegra P 1050 Alfonso Verdi Via Panoramica I

8 campi sono le colonne che compongono la tabella e ne definiscono la struttura; si può specificare il tipo di ciascun campo (testo, numeri, interi e floating ecc.) e si può imporre una certa serie di regole p.e. che un campo non può essere vuoto o deve avere un massimo numero di caratteri chiave è l insieme dei campi che permette di identificare in modo univoco ed inequivocabile un singolo record all interno della tabella ogni tabella può avere una o più chiavi non si possono avere in tabella due record distinti con lo stesso valore del campo chiave non è possibile avere chiavi contenenti valore NULL una chiave può essere composta da uno o più campi esempi di chiave: Matricola per Studenti, Codice per Corsi, Codiceprof per Docenti è un elemento fondamentale per il collegamento con i GIS Può essere una chiave Non può essere una chiave Corsi Codice Nome Ore 123E Ecologia P Pianificazione ecologica I GIS e cartografia numerica 100 Studenti Matricola Nome Cognome Indirizzo Telefono 1214 Gino Bartali Via Panicale Fausto Coppi Via Panicale 802 Franco Bitossi Via Tornabuoni Docenti CodiceProf Nome Cognome Indirizzo Telefono CodiceCorso 1012 Marco Bianchi Via Bella E 1025 Paolo Rossi Via Allegra P 1050 Alfonso Verdi Via Panoramica I

9 Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale query è un interrogazione sul Database utile per per estrarre, riorganizzare, riclassificare i dati fornisce come risultato un insieme di dati che soddisfano le condizioni imposte in essa normalmente negli strumenti per la gestione dei DB si ha la possibilità di creare la query sia con apposite interfacce facilitate, sia scrivendola direttamente in un linguaggio apposito SQL SQL (Structured Query Language) è un linguaggio per la formulazione di query Una query scritta in SQL può avere questa forma: Select-From-Where SELECT: per indicare i campi richiesti (* per tutti) FROM: per indicare su quali tabelle si deve effettuare la query WHERE: per indicare i vincoli imposti Ad esempio se volessimo estrarre il nome ed il numero di telefono dello studente la cui matricola è 1214, potremmo scrivere una query in SQL: SELECT Nome, Cognome, Telefono FROM Studenti WHERE matricola = 1214 Il risultato sarebbe: Gino Bartali Studenti Matricola Nome Cognome Indirizzo Telefono 1214 Gino Bartali Via Panicale Fausto Coppi Via Panicale 802 Franco Bitossi Via Tornabuoni

10 Ci sono anche DB gerarchici, reticolari e NOSQL (2009) ma sono meno flessibili, più complessi e richiedono maggiori conoscenze anche sulla struttura dei dati da parte dell utente Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale DBMS Software che controllano l'organizzazione, l'immagazzinamento, il caricamento, la sicurezza e l'integrità di un database. Accettano richieste dall'applicazione e istruiscono il sistema operativo per trasferire i dati appropriati DBMS (Data Base Management System) sono cioè i software in grado di gestire i DB consentendo di creare DB (strutture di tabelle, vincoli d integrità di tupla o di dominio, ) gestire dati (inserirli, effettuare query, definire trigger, ) gestire accessi concorrenti, back up, roll back, Alcuni DBMS: PostgreSQL, MySQL Oracle DBMS MicroSoft SQLServer, MicroSoft Access Database Relazionali si chiamano così perché il loro elemento base è la: relazione che è un sottoinsieme della relazione matematica tra due insiemi, detti domini della relazione, rappresentato da un insieme di tuple omogenee, fisicamente rappresentabile con una tabella costituita da righe e colonne.

11 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE Dal database al geodatabase Fabio Zottele SIG Fondazione E. Mach Marco Ciolli DICA Università degli Studi di Trento Trento, venerdì 24 giugno 2011, CORSO GEODATABASE

12 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE Così, per iniziare... Perchè inserire informazioni georiferite in un database? Quando nasce l'esigenza di utilizzare il DataBaseManagementSystem con un'estensione geografica? Che differenza c'è tra un GIS ed un GEODBMS? È difficile utilizzare un GEODBMS? Dal database al geodatabase

13 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE Perchè inserire informazioni georiferite in un database? L'informazione georiferita è un tipo di informazione complesso, ma può essere rappresentato partendo dalla definizione di un nuovo tipo: la geometria (Geometry) Con questo approccio si utilizzeranno database di tipo relazionale ed a modello Object Oriented (ORDBMS). Ogni estensione spaziale dei DBMS sarà leggermente diversa... DBMS Spatial Extension SyBase ASE Boeing's SQS SmallWorld SmallWorld VMDS Sqlite SpatialLite IBM DB2 spatial Extender Oracle Oracle Spatial Microsoft SQLServer Microsoft SQLServer PostgreSQL PostGIS MySQL MySQL (MySpatial) I database e I DBMSs

14 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE E allora come scegliere? Per effettuare una scelta, la spesa non è il solo fattore da tenere in considerazione, ma è comunque importante... Fonte: Wikipedia 1 I database e I DBMSs Fonte:rivenditori, costi espressi in dollari,

15 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE Tanto per complicare un pò le cose... Differentemente dai database relazionali, i database NoSQL gestiscono ed immagazzinano i dati attraverso grafi o array associativi. NoSQL viene usato quando si hanno piccole transazioni di lettura/scrittura o grandi transazioni di sola lettura. Esempi di database NoSQL sono: il database di Facebook (50TB), di ebay (2PB): NoSQL è stato pensato per avere un'architettura distribuita quindi I dati sono estremamente ridondanti (in totale), ma polverizzati su un grande numero di server e sono alla base di moltissime applicazioni di Cloud Computing. Esistono moltissimi DBMS NoSQL: BigTable di Google, MongoDb, Cassandra di Apache, Dynamo di Amazon, Project Voldemort di LinkedIn DBMS NoSQL con estensione spaziale sonos Neo4j, e AllegroGraph: quest'ultimo usa il Resource Description Framework (RDF) ed usa SPARQL (Sparql Protocol and RDF Query Language) diventando di fatto un GIS semantico Dal database al geodatabase

16 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE Ma cos'è l'estensione geografica... Quando un database viene spatially extended, vengono creati dei tipi di dati nuovi (ad esempio il tipo geometry), vengono fornite le funzioni per operare su questi tipi di dati, vengono attivate delle procedure per verificare la consistenza di questi nuovi dati nel database, e, a volte, vengono forniti delle procedure che ottimizzino l'accesso alle informazioni registrate. Ogni (R)DBMS implementerà differentemente gli oggetti di tipo spaziale. Per favorire l'interoperabilità, oggi quasi tutte le estensioni spaziali utilizzano delle definizioni comuni: Simple feature access (SFA; ISO 19125) Il punto chiave di questo standard ISO è la rappresentazione delle entità vettoriali utilizzando un formato unico: il Well-known Text (WKT) sia per gli oggetti geografici, sia per il sistema di riferimento degli stessi. Per migliorare l'esigenza di memorizzazione si utilizza anche il Well-known Binary (WKB). POINT(0 0) è la descrizione WKT di un punto E61 è lo stesso punto in WKB Dal database al geodatabase

17 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE Che tipi di primitive sono previsti dall'iso 19125? Tipi base: POINT(0 0) LINESTRING(0 0,1 1,1 2) POLYGON((0 0,4 0,4 4,0 4,0 0),(1 1, 2 1, 2 2, 1 2,1 1)) MULTIPOINT(0 0,1 2) MULTILINESTRING((0 0,1 1,1 2),(2 3,3 2,5 4)) MULTIPOLYGON(((0 0,4 0,4 4,0 4,0 0),(1 1,2 1,2 2,1 2,1 1)), ((-1-1,-1-2,-2-2,-2-1,-1-1))) GEOMETRYCOLLECTION(POINT(2 3),LINESTRING((2 3,3 4))) Inoltre, sono previsti I tipi TIN (Triangulated Irregular Network) e POLYHEDRALSURFACE, Le coordinate possono essere 2D (x,y), 3D (x,y,z), 4D (x,y,z,m) con m che fa parte del linear referencing Dal database al geodatabase

18 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE E i sistemi di riferimento? PARAM_MT["Mercator_2SP", PARAMETER["semi_major", ], PARAMETER["semi_minor", ], PARAMETER["central_meridian",180.0], PARAMETER["false_easting", ], PARAMETER["false_northing", ], PARAMETER["standard parallel 1",60.0]] PARAM_MT["Affine", PARAMETER["num_row",3], PARAMETER["num_col",3], PARAMETER["elt_0_1",1], PARAMETER["elt_0_2",2], PARAMETER["elt 1 2",3]] Dal database al geodatabase

19 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE...SQL-MM Part 3 SQL Multimedia Applicatio Spatial (ISO :2006) estende le primitive descritte precedentemente con delle curve interpolate con archi di circonferneza (tolleranza: 1E-8) CIRCULARSTRING(0 0, 1 1, 1 0) Simile alla LINESTRING COMPOUNDCURVE(CIRCULARSTRING(0 0, 1 1, 1 0),(1 0, 0 1)) CURVEPOLYGON(CIRCULARSTRING(0 0, 4 0, 4 4, 0 4, 0 0),(1 1, 3 3, 3 1, 1 1)) MULTICURVE((0 0, 5 5),CIRCULARSTRING(4 0, 4 4, 8 4)) MULTISURFACE(CURVEPOLYGON(CIRCULARSTRING(0 0, 4 0, 4 4, 0 4, 0 0),(1 1, 3 3, 3 1, 1 1)),((10 10, 14 12, 11 10, 10 10),(11 11, , , 11 11))) Il tipo COMPOUNDCURVE può contenere anche degli elementi LINESTRING. Il tipo MULTICURVE può essere un insieme di CURVE, LINESTRING, CIRCULARSTRING e COMPOUNDSTRING Dal database al geodatabase

20 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE...ma che me ne faccio dello STANDARD? Uso gli standard quando voglio garantire l'interoperabiltà: voglio che i dati vengano visualizzati (e processati) da persone, uffici, enti (...) diversi che usano software diversi. Lo standard diventa una LINGUA FRANCA per la comunicazione delle informazioni. Se, in un database con estensione spaziale, ho dei dati in formato standard posso comunicare con questi altri geodatabase: Postgres/PostGIS, Oracle Spatial (9i,10g,11g), MySQL (4.1+), Informix (9,10,11 con Spatial datablade), Microsoft SQL Server, SpatiaLite, Teradata (6.1, 6.2, 12, 13), Ingres GeoSpatial, altibase 5.x, AUTODESK MapGuide, GDAL Dal database al geodatabase

21 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE OK, ma perchè usare RDBMS? Gli RDBMS sono nati per potere gestire ENORMI quantità di dati in maniera che si possa accedere o operare su queste informazioni in maniera veloce, e che molti utenti possano usufruire della banca dati in maniera contemporanea: Struttura client/server MySQL PostgreSQL demone mysqld postmaster configurazione my.cnf postgresql.conf autenticazione e sicurezza porta pg_hba.conf 3306 mappatura utenti superuser client Backup/restore Dal database al geodatabase 5432 pg_ident.conf root postgres mysql psql mysqldump pg_dump

22 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE 4 persone che lavorano sui MIEI dati CONTEMPORANEAMENTE? Quasi tutti I database (anche alcuni NoSQL) permettono a più client di modificare il contenuto delle tabelle in contempranea attraverso il protocollo ACID: Atomicity, Consistency, Isolation e Durability: atomicità: la transazione è indivisibile nella sua esecuzione e la sua esecuzione deve essere o totale o nulla, non sono ammesse esecuzioni intermedie; consistenza: quando inizia una transazione il database si trova in uno stato consistente e quando la transazione termina il database deve essere in uno stato consistente, ovvero non deve violare eventuali vincoli di integrità, quindi non devono verificarsi contraddizioni (inconsistency) tra i dati archiviati nel DB; isolamento: ogni transazione deve essere eseguita in modo isolato e indipendente dalle altre transazioni, l'eventuale fallimento di una transazione non deve interferire con le altre transazioni in esecuzione; durabilità: detta anche persistenza, si riferisce al fatto che una volta che una transazione ha richiesto un commit work, i cambiamenti apportati non dovranno essere più persi. Per evitare che nel lasso di tempo fra il momento in cui la base di dati si impegna a scrivere le modifiche e quello in cui li scrive effettivamente si verifichino perdite di dati dovuti a malfunzionamenti, vengono tenuti dei registri di log, dove sono annotate tutte le operazioni sul DB.. Dal database al geodatabase

23 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE e le dimensioni contano... Quando si lavora su grandi quantità di dati (layers > 1GB) i GIS tradizionali possono diventare molto lenti. Gli RDBMS utilizzano gli indici per velocizzare la ricerca dei dati. Fondamentalmente un indice è la copia di una parte dei dati presenti in una relazione (tablle). Alcuni database permettono un'indicizzazione creata per mezzo di funzioni od espressioni (ad esempio upper(cognome) immagazzina solamente l'iniziale maiuscola del campo cognome) o per mezzo di filtri, dove l'indice immagazzina solamente i valori che rispondono a qualche espressione condizionale. Come esistono molti modi di ordinare I dati, esistono molti indici diversi: B-Trees: indici pensati per numeri, lettere (come nella rubrica telefonica), date... R-Trees: ordinano i dati in rettangoli, sotto rettangoli, sotto-sotto rettangoli... Sono usati da alcuni GIS (GRASS) e da qualche estensione spaziale (ad esempio SpatiaLite) GIST (Generalized Search Tree): cose che stanno da una parte, cose che si sovrappongono... Usato da PostGIS. Dal database al geodatabase

24 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE...ma quanto convengono gli indici? Esempio di ricerca di una particolare stringa all'interno di un campo di elementi circa.... SELECT fullname FROM utenti WHERE fullname LIKE '%Zottele%'; La query impiega 187ms e ritorna 8elementi: non c'è un indice sul campo fullname e quindi viene effettuata una full table scan. CREATE INDEX idx_utenti_fullname_btree_ops ON utenti USING btree (fullname varchar_pattern_ops); SELECT fullname FROM utenti WHERE fullname LIKE '%Zottele%'; La query impiega ora 13ms (14x). CREATE INDEX idx_utenti_ _btree_ops ON utenti USING btree varchar_pattern_ops) SELECT FROM utenti WHERE LIKE Questa query impiega 271 ms: il campo è indicizzato, ma si effettua una full table scan poiché l'ordinamento della stringa avviene da sinistra verso destra ed il campo discriminante è nascosto dalla wildcard. SELECT FROM clienti WHERE reverse( ) LIKE Il campo di ricerca diviene e l'indicizzazione avviene efficientemente (9ms,30x) Dal database al geodatabase

25 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE...e per i dati geografici? Lo standard ISO prevede che in un'estensione spaziale OGC compliant sia presente il dimensionally extended nine-intersection model (DE-9IM): un modello topologico che descrive il rapporto spaziale di due geometrie in 2 dimensioni. Inoltre devono essere implementate ulteriori funzioni (buffer, distanza, lunghezza, area perimetro, linear referencing). Queste funzionalità, rese veloci dalla presenza degli indici, appositamente pensati per I dati geometrici, rendono di fatto l'estensione spaziale un vero e proprio GIS. Dal database al geodatabase

26 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE tutti i dati di tutti su un'unico DBMS? Il pericolo di avere un'unico repository di dati è che, se questo repository non è più disponibile (salta la corrente) l'utente non può più accedere ai dati! Gli RDBMS risolvono questo problema grazie alla replicazione: il database è replicato su molte macchine e le richieste possono essere ridirezionate su un'altra macchina in caso di manutenzione o rottura di un nodo. Esistono molti tipi diversi di replicazione e la replicazione può essere costosa sia dal punto di vista dell'hardware (più computer) o del software (licenze aggiuntive). I NoSQL DBMS utilizzano invece la distribuzione di porzioni ridondanti di database su molte macchine Dal database al geodatabase

27 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE ma è difficile utilizzare un geodbms? Dal punto di vista dell'utente che richiede i dati: NO se si usa un client GIS (qgis, GRASS, ArcGIS...). Basta connettersi alla base dati e analizzare le informazioni. Se però si dovesse operare direttamente sul DBMS (creare nuove tablle...) o interrogare il DBMS attraverso interfacce a basso livello (GDAL, R, MapServer) allora è necessario conoscere il linguaggio SQL. SQL (Structured Query Language) è il linguaggio utilizzato per accedere e gestire i dati di un (R)DBMS, per creare e modificare la struttura del database e per gestire l'accesso agli oggetti contenuti. Sebbene SQL sia uno standard ANSI e ISO, molti database estendono supportano estensioni al linguaggio (dialetti). La prima versione dell'sql fu sviluppata da IBM nei primi anni '70 col nome di SEQUEL. Dal 1986, SQL è uno standard ISO, la versione attuale è SQL:2008. L'operazione più comune nell'sql è la query: per mezzo dell'operatore SELECT vengono estratti i dati da una o più relazioni (JOIN). Il comando non ha effetti persistenti sui dati (sono persistenti INSERT,UPDATE,DELETE). Le transazioni sono delle query successive che devono essere eseguite in gruppo. Dal database al geodatabase

28 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE ma è difficile gestire un DBMS? (1/3) NO, ma dipende dal grado di performance che si vuole fornire agli utenti. La performance può dipendere da quale DBMS si usa, da come si ottimizza il DBMS, da quanti/quali indici vengono applicati e da come gli indici vengano aggiornati. PostgreSQL vs MySQL (MyISAM vs InnoDB) sottoposti a carichi variabili (processi concorrenziali vs richieste per secondo), con due processori differenti (SUN 1.0 GHz Niagara vs dual INTEL 3.0 GHz Woodcrest) Dal database al geodatabase

29 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE ma è difficile gestire un DBMS? (2/3) Dal database al geodatabase

30 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE ma è difficile gestire un DBMS? (3/3) HW: HP ProLiant DL370 G6, Intel Xeon W5580-Nehalem GHz cores. OS: Red Hat Enterprise Linux 5.4 ( eI5), Windows Server Enterprise Edition R2 DB: PostgreSQL 8.4.0, SQL Server 2008 R2 Dal database al geodatabase

31 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE

32 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE

33 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE

34 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE

35 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE

36 Trento, venerdì 24 giugno 2011, CORSO GEODATABASE

37 Database relazionali FOSS e GeoDatabase PostgreSQL, Data Base Open Source e GRASS Marco Ciolli, Fabio Zottele Dipartimento di Ingegneria Civile e Ambientale Universita' degli Studi di Trento GRASS, FREE ed OPEN SOURCE GIS e GEODATABASE Trento, giugno 2011 Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale

38 Gestione dei Data Base in GRASS La gestione dei DB può avvenire in GRASS seguendo differenti procedure a seconda delle versioni di GRASS utilizzate. Le procedure non sono equivalenti e la scelta di una di esse fornisce strumenti differenti di analisi e trattamento dei dati In particolare i dati alfanumerici collegati ai dati geografici possono essere gestiti: Direttamente dal motore di GRASS La gestione diretta dei dati da parte di GRASS non garantisce il rispetto delle principali funzioni dei DB (coerenza, ecc.) il formato dei file è dbf Per mezzo di DataBase esterni interfacciati con GRASS in modo più o meno diretto La gestione dei dati tramite Data Base esterno è più affidabile ed aumenta significativamente le capacità di analisi e trattamento dei dati Qui si accenneranno varie procedure soffermandoci in particolare sulle versioni 6.2.x di GRASS interfacciate con PostgreSQL. Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale

39 Perché conviene utilizzare un archivio esterno a quello di GRASS La gestione diretta dei dati da parte di GRASS poteva portare a: ridondanza dei dati e inconsistenza; problemi di concorrenza per l accesso ai dati contemporaneo da parte di più utenti; perdita di integrità dei dati; problemi di sicurezza; problemi di efficienza dal punto di vista dei tempi di: - ricerca dei dati; - aggiornamento dei dati. Un DBMS, concepito appositamente per gestire archivi e quindi dotato di tutti gli strumenti necessari a questo scopo oltreché di caratteristiche di flessibilità ed espandibilità, permette di ottenere un approccio più mirato nella gestione dei dati. Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale

40 Due tipi di interfaccia L interfaccia tra GRASS e PostgreSQL è stata realizzata seguendo due diversi approcci: Interfaccia diretta Interfaccia mediante ODBC GRASS GRASS Interfaccia GRASS/Postgres Interfaccia GRASS/ODBC PostgreSQL PostgreSQL Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale ODBC driver ODBCPostgreSQL

41

42 GRASS può essere collegato ad uno od a molti database management systems (DBMS). Il set di comandi db.* fornisce un supporto di base SQL per la gestione degli attributi, mentre il set di comandi v.db.* opera sulle mappe vettoriali.

43 Alcune ulteriori funzioni sono state rese disponibili recentemente

44 * Categorie: Il numero di categoria è il vector ID. E' usato per collegare lo/gli attributi a ciascun oggetto vettoriale. Un oggetto vettoriale può avere zero, una, due o più categorie. I numeri di Categoria sono immagazzinati entrambi dentro il file della geometria ed all'interno della tavola degli attributi per ciascun oggetto vettoriale (generalmente la colonna "cat"). Usando v.category, i numeri di categoria possono essere stampati o mantenuti. Per fare in modo di collegare un oggetto vettoriale a parecchie tavole diverse, sono necessari diversi numeri di categoria per ciascun oggetto vettoriale.

45 * Layers: E' possibile collegare gli oggetti geografici in una mappa vettoriale a una o più tabelle. Ciascun collegamento (link) a un tabella degli attributi diversa è chiamato layer. Un link definisce quale database driver, quale database e quale tabella deve essere usata. Ciascun numero di categoria in un file della geometria corrisponde ad una riga nella tabella degli attributi (generalmente la colonna "cat"). Usando v.db.connect i layers possono essere listati o mantenuti.

46 I layers di GRASS non contengono oggetti geografici, ma consistono in link alle tavole degli attributi nei quali gli oggetti vettoriali possono avere zero, una o più categorie. Se un oggetto vettoriale ha zero categorie in un layer, allora non appare in quel layer. In questa maniera alcuni oggetti vettoriali possono apparire in alcuni layer ma non in altri. Il beneficio pratico di questo sistema è che permette di collocare oggetti tematicamente distinti ma topologicamente correlati in una singola mappa (per esempio foreste e laghi, o aree coltivate e bacini di raccolta idrica). Questi layers virtuali sono anche utili per collegare serie temporali di dati ad una serie di oggetti che non cambiano nel tempo. Per convenzione il primo layer è quello attivo, per esempio la prima tabella corrisponde al primo layer. Ulteriori tabelle sono collegate ai layer successivi.

47 * SQL support: Il driver DBF fornisce un supporto molto limitato all'sql mentre gli altri DBMS backends (come PostgreSQL, MySQL etc) forniscono un pieno supporto SQL poiché i comandi SQL sono inviati direttamente al DBMI. I comandi SQL possono essere direttamente eseguiti con db.execute, db.select e gli altri moduli db.*. Quando si crea una tabella nuova, si deve creare una tabella degli attributi e la tabella deve essere popolata con una riga per ogni categoria (usando v.to.db). Questa operazione si può realizzare anche in un solo passaggio usando v.db.addtable insieme con la definizione dei tipi di colonna della tabella.

48 comandi db e di interazione con i db: a cosa servono comandi db comandi per connessione db: 1. db.connect 2. db.test 3. db.drivers 4. db.login comandi per tabelle: 1. db.columns 2. db.copy 3. db.describe 4. db.tables comandi che consentono esecuzione query SQL (operazioni su tabelle): db.execute db.select

49 db.connect - Permette la connessione ad un database tramite un interfaccia dbm

50 db.test Effettua un test del driver db per verificarne l'operatività

51 db.drivers - Mostra la lista dei driver db disponibili

52 db.login - Setta user e password di un certo driver db

53 db.columns Permette di visualizzare le colonne di una data tabella contenuta in un database

54 Quando il database è connesso e le tabelle sono visibili è possibile però usare anche l'interfaccia grafica, più user friendly, per visualizzare le colonne di una data tabella contenuta in un database

55 db.copy - Permette all'utente di copiare una tabella fra due database che possono anche essere connessi attraverso drivers differenti

56 db.describe Permette di visualizzare le informazioni inerenti una tabella. Se viene usato il parametro -c si ottengono solo i nomi delle colonne invece della descrizione completa

57 db.tables Fa la lista di tutte le tabelle contenute in un database

58 db.execute Esegue delle stringhe SQL scritte direttamente oppure contenute in file di testo

59 db.select - Stampa il risultato della selezione effettuata su un database a partire da una stringa SQL letta da un file di input oppure scritta nell'interfaccia

60 I comandi db e di interazione vector-db: a cosa servono comandi v.db comandi per connessione vector-db: v.db.connect v.to.db v.db.update v.db.addtable v.db.droptable v.db.reconnect.all comandi che consentono esecuzione query SQL sui dati contenuti nelle tabelle: Display Manager d.vect v.extract v.reclass

61 v.db.connect Stampa o setta la connessione database per un determinato vettoriale

62 v.to.db - Permette di inserire in un database i dati provenienti da un file vettoriale

63 v.db.update Permette di assegnare un nuovo valore ad una colonna connessa ad una certa mappa

64 v.db.addtable - crea e aggiunge una nuova tabella degli attributi ad un layer dato di una mappa vettoriale esistente

65 v.db.droptable rimuove la tabella degli attributi di una mappa vettoriale esistente

66 v.db.reconnect.all riconnette i file vettoriali a un nuovo database

67 db.dropcol: Elimina una colonna da una tabella degli attributi selezionata

68 E ancora: db.in.ogr: Importa tabelle degli attributi in vari formati db.out.ogr: Exporta tabelle degli attributi in vari formati

69 Visualizzazione di una tabella dati dal layer manager E' possibile visualizzare il contenuto di una tabella collegata al layer visualizzato

70 Realizzazione di una query dal table manager E' possibile realizzare una query direttamente dal table manager, in questo caso tutti I SIC del Trentino con superficie maggiore 4000 ettari

71 Realizzazione di una query dal table manager E' possibile utilizzare il query builder del table manager

72 Realizzazione di una query dal table manager

73 Aggiungere layers di mappe vector dal Table Manager

74 Eliminare layers di mappe vector dal Table Manager

75 Modificare layers di mappe vector dal Table Manager

76 Gestire tabelle di mappe vector dal Table Manager

77 esecuzione di una query dal d.vect si richiede la visualizzazione delle zone di censimento aventi area minore di Funziona con i monitor lanciati da d.mon

78 esecuzione di una query dal layer manager Qui si richiede la visualizzazione dei SIC del Trentino la cui superficie sia minore di 4000 ettari

79 esecuzione di una query dal gis.m (tcltk - old) E' possibile selezionare le modalità di visualizzazione degli oggetti, visualizzare il risultato di una query sul monitor attivo ed estrarre un nuovo vettoriale dal risultato della query qui si richiede la visualizzazione degli edifici di Trento con quota del tetto minore di 10 m

80 esecuzione di una query dal v.extract si richiede che venga creata una nuova mappa contenente solo le strade per cui l emissione tra le ore 8 e le 9 sia maggiore di 5000 (g CO/km)

81 d.what.vect -help Description: Allows the user to interactively query a vector map layer at user-selected locations within the current geographic region. Usage: d.what.vect [-1txdfe] [map=name[,name,...]] Flags: -1 Identify just one location -t Terse output. For parsing by programs. -x Print information as plain text to terminal window. -d Print topological information (debugging). -f Enable flashing (slower). -e Open form in edit mode.

82 Da terminale: Vector -> Query with mouse (Form mode, editing enabled) d.what.vect -e nomefile

83 La vecchia interfaccia d.m è ancora attiva, si richiama da console digitando: d.m& Essa utilizza i monitor x1, x2, x3

84 Solo il Postmaster può far partire questo script per creare un nuovo database

85

86 v.db.univar: Calcola statistica univariata sulla colonna selezionata di una tabella per una mappa vector

87 v.db.join: Permette di fare operazioni di join (joining) fra una tabella ed una tabella di una mappa vector

88 v.db.renamecol: Rinomina una colonna nella tabella degli attributi connessa a una data mappa vector

89 v.db.dropcol: Elimina una colonna dalla tabella degli attributi connessa a una data mappa

90 Confrontando l ODBC con l interfaccia diretta Svantaggi interfaccia GRASS-ODBC: L accesso è più lento, ci sono più strati software da attraversare. Maggior occupazione di memoria. Vantaggi interfaccia GRASS-ODBC : Indipendenza dal software DBMS utilizzato, dato che con un unica interfaccia per ODBC, vi è una maggiore facilità nelle operazioni di upgrade del sistema: esistendo i driver ODBC per molti gestori di basi di dati è possibile passare ad un altro gestore dell archivio senza dover riscrivere i programmi di interfaccia realizzati che, comunicando con lo strato ODBC e non direttamente con il gestore della base di dati, sono sempre validi indipendentemente dal DBMS utilizzato. Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale

91 pgdesigner2

92 pgdesigner2

93 pgdesigner2

94 L Open GIS Consortium, Inc. (OGC) è una organizzazione no-profit che tenta di stabilire dei criteri per favorire l interoperabilità tra i software che trattano dati geografici. MapServer

95 Attenzione, questo però non è Open Source! Questa ditta rilascia il codice sorgente di alcuni suoi prodotti (per esempio Mammoth PostgreSQL Replicator per PostgreSQL e 7.4+) ma tale software non è distribuibile a meno che la ditta stessa non cessi l attività

96 Creazione ed accesso all archivio da console Per iniziare si deve creare un archivio: all interno di questo verranno poi definite le diverse tabelle di dati correlati che si vorranno gestire per mezzo di PostgreSQL. % createdb nomedb nomedb è il nome del database che si vuole creare. Una volta creato il database vi si può accedere mediante il comando: % psql nomedb Esempio: % createdb grass % psql grass grass => Ho creato e aperto un archivio chiamato grass; l ultima riga è la riga di comando dalla quale lanciare il comando SQL per lavorare sull archivio. grass =>\q % Esco dall archivio, ritorno alla linea di comando della shell di UNIX. Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale

97 E possibile popolare il database anche creando delle tabelle vuote da riempire con dati in formato ASCII L utente deve essere già collegato (cioè deve eseguito psql) con l archivio nel quale vuole lavorare. Per creare una tabella è necessario definire nome e attributi che la comporranno: CREATE TABLE nometab (nomeattr tipoattr [,elenco attr]); Esempio: grass => CREATE TABLE datamap (coord box, dg float8); In questo caso creo, nella base di dati grass, una tabella chiamata datamap, con due attributi: uno nominato coord e di tipo box, l altro nominato dg e di tipo float8. La creazione di una tabella PostgreSQL si può ottenere anche tramite l interfaccia PGAccess in maniera più guidata e facilitata Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale

98 Importare i dati nelle tabelle PostgreSQL Definite le tabelle è possibile popolarle con i dati, caricandoli da un file ascii, con: COPY nometab FROM input USING DELIMITERS separatore ; nometab è il nome della tabella in cui si vogliono copiare i dati; input è il nome del file con i dati da inserire; separatore è il carattere scelto per separare i diversi campi di un record (non usate il tab). Es.: COPY datamap FROM /home/alf/dati.csv USING DELIMITERS ; ; In questo esempio copio nella tabella datamap, creata prima, i dati contenuti nel file dati.csv; in questo file gli attributi di ogni record saranno separati dal simbolo ;. E indispensabile che i dati da importare abbiano la stessa struttura della tabella Se il file ha più colonne della tabella nella quale lo si vuole copiare, quelle in eccedenza vengono ignorate da PostgreSQL e un messaggio ci avvisa di questo. Per inserire pochi valori si può usare il comando INSERT INTO nometabella VALUES (seriedivalori); La stessa operazione ottenuta col comando COPY si può realizzare con PGAccess Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale

99 Formato dei file ascii Nel file ascii che si vuole utilizzare come fonte per i dati da inserire nelle tabelle gestite da PosgreSQL è necessario: inserire un record per ogni riga; separare gli attributi che compongono un record con un carattere separatore a cui poi si dovrà fare riferimento quando si darà il comando copy oppure nel field delimiter della finestra di PGAccess; indicare il termine dell elenco con la seguente sequenza di caratteri: \. Esempio: ( , ),( , ) ( , ),( , ) ( , ),( , ) ( , ),( , ) \. Un file ascii costruito in questo modo permette di popolare la tabella datamap, definita in precedenza, con l elenco dei dati posto nel file. Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale

100 pgadminiii

101

102

103 PgAccess è un'interfaccia grafica per PostgreSQL scritta in Tcl/Tk, che permette di gestire facilmente l'archivio: operazioni sulle tabelle, interrogazioni,..., senza dover ricorrere ai comandi in linea e può essere visualizzata in contemporanea con GRASS. Questo consente un rapido accesso alle tabelle e di poter effettuare al di fuori di GRASS tutte quelle elaborazioni che non sono direttamente vincolate alla geometria degli oggetti risparmiando tempo e risorse. Purtroppo lo sviluppo è apparentemente fermo da qualche anno. Lo sforzo che era stato fatto era quello di trasformarlo in uno strumento per scrivere applicazioni che lavorano in una struttura distribuita client-server model (un database centrale PostgreSQL e dei remote clients). E disponibile per Linux,Unix, MacOS, Windows. Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale

104

105

106 Tabella - apertura di tabelle multiple per la visualizzazione, con massimo numero di records (modificabile dal menù preferences) - ridimensionamento colonne, con il drag della linea di griglia verticale - text wrap in cells - layout salvato per ogni tabella - import/export a file esterni (SDF,CSV) - filter capabilities (enter filter like (price>3.14) - sort order capabilities (enter manually the sort field(s)) - editing in place - migliorato il table generator assistant - migliorato il field editing Queries - define, edit and stores "user defined queries" - salva le queries come views (viste) - esecuzione di queries con parametri opzionali dell utente ( select * from invoices where year=[parameter "Year of selection"] ) - viewing of select type queries result - query deleting and renaming - visual query builder with drag & drop capabilities. For any of you who had installed the Tcl/Tk plugin for Netscape Nav. Sequences - defines sequences, delete them and inspect them Functions - define, inspect and delete functions in SQL, plpgsql and pgtcl languages Reports - design and display simple reports from tables - fields and labels, font changing, style and size - saves and loads report description from database - show report previews, sample postscript output file Forms - open user defined forms - form design module available - query widget available, controls bound to query results Scripts - define, modify and call user defined scripts Users - define and modify user information Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale

107 Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale

108 Finestra di PGAccess per la creazione di una nuova query (Query Builder): si scrivono le operazioni in linguaggio SQL nell apposito spazio (in cui è abilitato il copia ed incolla da clipboard) e successivamente si può salvare la query attribuendole un nome, in modo da poterla eseguire tutte le volte che è necessario. CREATE VIEW [nome view] AS SELECT * FROM [nome view] Quindi schiacciando il tasto Esegui Query appare la finestra : Finestra che segnala che si sta eseguendo una query d azione che porta alla creazione di una View, una tabella per la visualizzazione dei risultati della query stessa. Cliccando su Yes, PostgreSQL esegue le operazioni immesse nella finestra Query Builder, e se queste sono state scritte correttamente, apparirà un altra finestra di dialogo. Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale La view crea una sorta di interrogazione permanente che acquista la personalità di una tabella normale.

109 Finestre in cui si visualizzano le query e le view salvate. La figura di sinistra mostra le query (in questo caso sono tutte query d azione) e la figura di destra mostra le corrispondenti view. Per visualizzare una di queste, è sufficiente fare un doppio clic sul nome, o selezionare la view desiderata e premere il pulsante Apri. Finestra in cui si visualizzano le view, richiamabile doppiocliccando sul nome delle view nella finestra visualizzata sopra. La View visualizzata è quella denominata coemissioni, e dunque relativa alle emissioni totali di CO di ogni strada Marco Ciolli, Dipartimento di Ingegneria Civile e Ambientale

Sistemi Informativi e Basi di Dati. Laurea Specialistica in Tecnologie di Analisi degli Impatti Ecotossicologici. Docente: Francesco Geri

Sistemi Informativi e Basi di Dati. Laurea Specialistica in Tecnologie di Analisi degli Impatti Ecotossicologici. Docente: Francesco Geri Sistemi Informativi e Basi di Dati Laurea Specialistica in Tecnologie di Analisi degli Impatti Ecotossicologici Docente: Francesco Geri Dipartimento di Scienze Ambientali G. Sarfatti Via P.A. Mattioli

Dettagli

1.0.4. PostGIS. L'estensione geografica a PostgreSQL

1.0.4. PostGIS. L'estensione geografica a PostgreSQL 1.0.4 PostGIS L'estensione geografica a PostgreSQL Obiettivi Fornire una conoscenza di base su PostGIS dal punto di vista funzionale Presentare le principali interrogazioni SQL su oggetti PostGIS Fornire

Dettagli

Introduzione. Dati di una stessa localizzazione permette di ridurre ridondanza e duplicazioni. I costi ne sono diminuiti.

Introduzione. Dati di una stessa localizzazione permette di ridurre ridondanza e duplicazioni. I costi ne sono diminuiti. Database Spaziale Introduzione Dati di una stessa localizzazione permette di ridurre ridondanza e duplicazioni. I costi ne sono diminuiti. Principio del repository: applicazioni indipendenti che accedono

Dettagli

Introduzione al linguaggio SQL

Introduzione al linguaggio SQL Introduzione al linguaggio SQL Structured Query Language (Linguaggio Strutturato di Interrogazione di Database) prof. Cleto Azzani IPSIA MORETTO BRESCIA (2004) Che cos è un Data Base (Base di dati) Insieme

Dettagli

DBMS (Data Base Management System)

DBMS (Data Base Management System) Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire

Dettagli

Database. Informatica 2014-2015 - Dott. Muzzioli Valerio. 1 di 1. Argomenti trattati: Nozioni di base: i database, i modelli di dati, DBMS

Database. Informatica 2014-2015 - Dott. Muzzioli Valerio. 1 di 1. Argomenti trattati: Nozioni di base: i database, i modelli di dati, DBMS Database Argomenti trattati: Nozioni di base: i database, i modelli di dati, DBMS Database relazionali: tabelle, campi, record; indici di taballa Chiavi primarie ed esterne Relazioni tra tabelle: definizione

Dettagli

MODULO 5 DATA BASE PROGRAMMA. Progettazione rapida introduzione alla progettazione di DB

MODULO 5 DATA BASE PROGRAMMA. Progettazione rapida introduzione alla progettazione di DB MODULO 5 DATA BASE MODULO 5 - DATA BASE 1 PROGRAMMA Introduzione: concetti generali di teoria Progettazione rapida introduzione alla progettazione di DB Utilizzo di Access pratica sulla creazione e l utilizzo

Dettagli

A. Bardine - Introduzione a PostgreSQL. PostgreSQL è un software relazionale e ad oggetti per la gestione di basi di dati

A. Bardine - Introduzione a PostgreSQL. PostgreSQL è un software relazionale e ad oggetti per la gestione di basi di dati Basi di dati PostgreSQL è un software relazionale e ad oggetti per la gestione di basi di dati PostgreSQL è Open-Source ed il suo sviluppo procede da 15 anni il suo codice sorgente è quindi disponibile

Dettagli

L ARCHIVIAZIONE E LA GESTIONE DATI ATTRAVERSO L INTERAZIONE TRA MICROSOFT ACCESS ED EXCEL 1 INTRODUZIONE

L ARCHIVIAZIONE E LA GESTIONE DATI ATTRAVERSO L INTERAZIONE TRA MICROSOFT ACCESS ED EXCEL 1 INTRODUZIONE Roccatello Ing. Eduard L ARCHIVIAZIONE E LA GESTIONE DATI ATTRAVERSO L INTERAZIONE TRA MICROSOFT ACCESS ED EXCEL 1 INTRODUZIONE Agenda Presentazione docente Definizione calendario Questionario pre corso

Dettagli

FileMaker 12. Guida ODBC e JDBC

FileMaker 12. Guida ODBC e JDBC FileMaker 12 Guida ODBC e JDBC 2004 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker e Bento sono marchi di FileMaker, Inc.

Dettagli

Basi di dati. Introduzione a PostgreSQL. K.Donno - Introduzione a PostgreSQL

Basi di dati. Introduzione a PostgreSQL. K.Donno - Introduzione a PostgreSQL Basi di dati Introduzione a PostgreSQL Introduzione a PostgreSQL PostgreSQL è un software relazionale e ad oggetti per la gestione di basi di dati PostgreSQL è Open-Source ed il suo sviluppo procede da

Dettagli

La realizzazione di WebGis con strumenti "Open Source".

La realizzazione di WebGis con strumenti Open Source. La realizzazione di WebGis con strumenti "Open Source". Esempi di impiego di strumenti a sorgente aperto per la realizzazione di un Gis con interfaccia Web Cos'è un Web Gis? Da wikipedia: Sono detti WebGIS

Dettagli

Geo-Database. Strumenti e tecniche per la gestione efficiente e scalabile di basi di dati geografiche

Geo-Database. Strumenti e tecniche per la gestione efficiente e scalabile di basi di dati geografiche Geo-Database Strumenti e tecniche per la gestione efficiente e scalabile di basi di dati geografiche Corso di Sistemi Informativi Territoriali Avanzati UD10 Corso di Laurea Magistrale in Pianificazione

Dettagli

Database spaziali FOSS e interoperabilità

Database spaziali FOSS e interoperabilità VII Meeting degli utenti italiani di GRASS Database spaziali FOSS e interoperabilità M. Ciolli, A. Vitti, F. Zottele, P. Zatelli Università di Trento Dipartimento di Ingegneria Civile e Ambientale GENOVA

Dettagli

1 Contesto...3 2 La soluzione...4

1 Contesto...3 2 La soluzione...4 Indice 1 Contesto...3 2 La soluzione...4 2.1 CARATTERISTICHE FUNZIONALI... 5 2.2 PANNELLO DI AMMINISTRAZIONE... 9 2.3 TECNOLOGIA...11 2.4 ARCHITETTURA APPLICATIVA...12 businessup 2 di 12 1 Contesto Sempre

Dettagli

MANUALE DI GESTIONE DEI DATI GEOGRAFICI CON IL SOFTWARE QUANTUM GIS

MANUALE DI GESTIONE DEI DATI GEOGRAFICI CON IL SOFTWARE QUANTUM GIS MANUALE DI GESTIONE DEI DATI GEOGRAFICI CON IL SOFTWARE QUANTUM GIS Compilato: Andrea De Felici Rivisto: Approvato: Versione: 1.0 Distribuito: 01/08/2013 1 INDICE 1. INTRODUZIONE..3 2. PRIMI PASSI.....4

Dettagli

Laboratorio GIS Supporto Didattico 2 Docente Giuseppe Modica A.A. 2010-2011. ARCGIS System. Docente Giuseppe Modica A.A. 2010-2011

Laboratorio GIS Supporto Didattico 2 Docente Giuseppe Modica A.A. 2010-2011. ARCGIS System. Docente Giuseppe Modica A.A. 2010-2011 I software GIS ARCGIS System Docente Giuseppe Modica tel +39 0965 801274 giuseppe.modica@unirc.it A.A. 2010-2011 1 ArcGIS System Architecture 2 1 c:\ ArcGIS Workstation Clients ArcInfo ArcEditor ArcView

Dettagli

Informatica B. Contenuti. Introduzione alle Basi di Dati e ai DBMS. Introduzione a dati e basi dati DBMS Modello dei dati

Informatica B. Contenuti. Introduzione alle Basi di Dati e ai DBMS. Introduzione a dati e basi dati DBMS Modello dei dati Informatica B Introduzione alle Basi di Dati e ai DBMS Contenuti Introduzione a dati e basi dati DBMS Modello dei dati Informazioni e dati Dato: elemento semanticamente significativo (data, codice, ecc.),

Dettagli

L interfaccia a riga di comando di MySql

L interfaccia a riga di comando di MySql L interfaccia a riga di comando di MySql Una volta completata la procedura di installazione possiamo finalmente testare le funzionalità di MySQL. Sia che ci si trovi in ambiente Linux che Windows, l'interfaccia

Dettagli

Istituto Angioy Informatica BASI DI DATI. Prof. Ciaschetti

Istituto Angioy Informatica BASI DI DATI. Prof. Ciaschetti Istituto Angioy Informatica BASI DI DATI Prof. Ciaschetti Introduzione e prime definizioni Una Base di dati o Database è un archivio elettronico opportunamente organizzato per reperire in modo efficiente

Dettagli

Lavorare con MySQL Parte Prima.

Lavorare con MySQL Parte Prima. Lavorare con MySQL Parte Prima. Data la particolarità dell argomento, ho deciso di dividerlo in due lezioni. Nella prima, si parlerà diffusamente di MySQL, cos è un DBMS, cos è l SQL, i campi supportati

Dettagli

Basi di dati. Basi di dati = database. Basi di dati

Basi di dati. Basi di dati = database. Basi di dati Basi di dati Da leggere: Cap. 6 Sawyer, Williams (testo A) Basi di dati = database Sono una delle applicazioni informatiche che hanno avuto il maggiore utilizzo in uffici, aziende, servizi -> oggi anche

Dettagli

DEFINIZIONI FONDAMENTALI

DEFINIZIONI FONDAMENTALI Consorzio per la formazione e la ricerca in Ingegneria dell'informazione DEFINIZIONI FONDAMENTALI Per vincere ci vuole una buona partenza... Docente: Cesare Colombo CEFRIEL colombo@cefriel.it http://www.cefriel.it

Dettagli

Esercitazioni di Basi di Dati

Esercitazioni di Basi di Dati Esercitazioni di Basi di Dati A.A. 2008-09 Dispense del corso Utilizzo base di pgadmin III Lorenzo Sarti sarti@dii.unisi.it PgAdmin III PgAdmin III è un sistema di progettazione e gestione grafica di database

Dettagli

Uso dei data bases con PHP. Prof. Francesco Accaino Iis Altiero Spinelli Sesto Sa Giovanni

Uso dei data bases con PHP. Prof. Francesco Accaino Iis Altiero Spinelli Sesto Sa Giovanni Uso dei data bases con PHP Prof. Francesco Accaino Iis Altiero Spinelli Sesto Sa Giovanni MDAC MDAC è l acronimo di Microsoft Data Access Component e fa parte della tecnologia Microsoft denominata Universal

Dettagli

MySQL Command Line Client: operazioni fondamentali

MySQL Command Line Client: operazioni fondamentali MySQL Command Line Client: operazioni fondamentali INTRODUZIONE Il RDBMS MySQL, oltre a fornire un applicazione che abbia un interfaccia user-friendly, ha a disposizione anche un altro client, che svolge

Dettagli

Cultura Tecnologica di Progetto

Cultura Tecnologica di Progetto Cultura Tecnologica di Progetto Politecnico di Milano Facoltà di Disegno Industriale - DATABASE - A.A. 2003-2004 2004 DataBase DB e DataBase Management System DBMS - I database sono archivi che costituiscono

Dettagli

SISTEMI INFORMATIVI GEOGRAFICI IN GEO- LOGIA

SISTEMI INFORMATIVI GEOGRAFICI IN GEO- LOGIA MARIA TERESA MELIS SISTEMI INFORMATIVI GEOGRAFICI IN GEO- LOGIA titimelis@unica.it ANNO ACCADEMICO 2013/ 2014 LEZIONE 3 INTRODUZIONE AL SW ARCGIS Corso di Sistemi Informativi Geografici in Geologia a cura

Dettagli

Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 6

Data Base. Master Bio Info Reti e Basi di Dati Lezione 6 Data Base 1 Sommario I concetti fondamentali. Database Relazionale.. Query e SQL MySql, Creazione di un db in MySQL con PHPmyAdmin Creazione database e delle Tabelle Query Inserimento Ricerca Modifica

Dettagli

Lezione V. Aula Multimediale - sabato 29/03/2008

Lezione V. Aula Multimediale - sabato 29/03/2008 Lezione V Aula Multimediale - sabato 29/03/2008 LAB utilizzo di MS Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1)

Dettagli

Aspetti applicativi e tecnologia

Aspetti applicativi e tecnologia Aspetti applicativi e tecnologia Premessa Architetture usate per i database Le prime applicazioni erano definite monolitiche, cioè un unico computer (mainframe) gestiva sia le applicazioni che i dati,

Dettagli

Sistemi avanzati di gestione dei Sistemi Informativi

Sistemi avanzati di gestione dei Sistemi Informativi Esperti nella gestione dei sistemi informativi e tecnologie informatiche Sistemi avanzati di gestione dei Sistemi Informativi Docente: Email: Sito: Eduard Roccatello eduard@roccatello.it http://www.roccatello.it/teaching/gsi/

Dettagli

Database e Microsoft Access. Ing. Antonio Guadagno

Database e Microsoft Access. Ing. Antonio Guadagno Database e Microsoft Access Ing. Antonio Guadagno Database e Microsoft Access Un Database non è altro che un insieme di contenitori e di strumenti informatici che ci permette di gestire grossi quantitativi

Dettagli

Informatica Documentale

Informatica Documentale Informatica Documentale Ivan Scagnetto (scagnett@dimi.uniud.it) Stanza 3, Nodo Sud Dipartimento di Matematica e Informatica Via delle Scienze, n. 206 33100 Udine Tel. 0432 558451 Ricevimento: giovedì,

Dettagli

Progettazione di Sistemi Interattivi. Gli strati e la rete. Struttura e supporti all implementazione di applicazioni in rete (cenni)

Progettazione di Sistemi Interattivi. Gli strati e la rete. Struttura e supporti all implementazione di applicazioni in rete (cenni) Progettazione di Sistemi Interattivi Struttura e supporti all implementazione di applicazioni in rete (cenni) Docente: Daniela Fogli Gli strati e la rete Stratificazione da un altro punto di vista: i calcolatori

Dettagli

Basi di dati. Microsoft Access. Cosa è. Pietro Pala (pala@dsi.unifi.it) Come iniziare. Aprire un database. Creare un database. Creare un database

Basi di dati. Microsoft Access. Cosa è. Pietro Pala (pala@dsi.unifi.it) Come iniziare. Aprire un database. Creare un database. Creare un database Cosa è Basi di dati Pietro Pala (pala@dsi.unifi.it) Microsoft Access Access è un DBMS relazionale in grado di supportare: Specifica grafica dello schema della base dati Specifica grafica delle interrogazioni

Dettagli

Corso di Laboratorio di Basi di Dati

Corso di Laboratorio di Basi di Dati Corso di Laboratorio di Basi di Dati F1I072 - INF/01 a.a 2009/2010 Pierluigi Pierini Technolabs S.p.a. Pierluigi.Pierini@technolabs.it Università degli Studi di L Aquila Dipartimento di Informatica Technolabs

Dettagli

Laboratorio di Basi di Dati e Web

Laboratorio di Basi di Dati e Web Laboratorio di Basi di Dati e Web Docente: Alberto Belussi Lezione 1 SQL Structured Query Language SQL è stato definito nel 1973 ed è oggi il linguaggio più diffuso per i DBMS relazionali Il linguaggio

Dettagli

User Tools: DataBase Manager

User Tools: DataBase Manager Spazio di lavoro Per usare T-SQL Assistant selezionare il link Simple Query e spostare a piacere la piccola finestra dove un menu a tendina mostra i diversi comandi SQL selezionabili, il pulsante Preview

Dettagli

ArcGIS 10 introduzione. Marco Negretti Politecnico di Milano e-mail: marco.negretti@polimi.it http://geomatica.como.polimi.it

ArcGIS 10 introduzione. Marco Negretti Politecnico di Milano e-mail: marco.negretti@polimi.it http://geomatica.como.polimi.it ArcGIS 10 introduzione Marco Negretti Politecnico di Milano e-mail: marco.negretti@polimi.it http://geomatica.como.polimi.it 19/11/2013 contenuti formati dati geografici il sistema ArcGIS ArcMap 1. proprietà

Dettagli

Le Basi di Dati. Le Basi di Dati

Le Basi di Dati. Le Basi di Dati Le Basi di Dati 20/05/02 Prof. Carlo Blundo 1 Le Basi di Dati Le Base di Dati (database) sono un insieme di tabelle di dati strutturate in maniera da favorire la ricerca di informazioni specializzate per

Dettagli

DATABASE. www.andreavai.it

DATABASE. www.andreavai.it Cos'è un database? Quando si usa? Differenze con i fogli elettronici Le tabelle: record, campi, tipi di dati Chiavi e indici Database relazionali (R-DBMS) Relazioni uno-a-uno Relazioni uno-a-molti Relazioni

Dettagli

Software AutoCAD Map 3D - Lezione 1 Caricare, visualizzare e consultare dati vettoriali

Software AutoCAD Map 3D - Lezione 1 Caricare, visualizzare e consultare dati vettoriali Software AutoCAD Map 3D - Lezione 1 Caricare, visualizzare e consultare dati vettoriali 0) Premessa Come abbiamo accennato nella Lezione 0, AutoCAD Map 3D nasce sulla base del noto software AutoCAD, per

Dettagli

NoSQL http://nosql. nosql-database.org/ Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Linguaggi e Tecnologie Web A. A.

NoSQL http://nosql. nosql-database.org/ Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Linguaggi e Tecnologie Web A. A. Corso di Laurea Specialistica in Ingegneria Informatica Corso di Linguaggi e Tecnologie Web A. A. 2011-2012 NoSQL http://nosql nosql-database.org/ Eufemia TINELLI Cosa è NoSQL? 1998 il termine NoSQL è

Dettagli

GIS e Geo WEB: piattaforme e architetture. Docente: Cristoforo Abbattista email: abbattista@planetek.it

GIS e Geo WEB: piattaforme e architetture. Docente: Cristoforo Abbattista email: abbattista@planetek.it GIS e Geo WEB: piattaforme e architetture Docente: Cristoforo Abbattista email: abbattista@planetek.it II lezione Componenti e linguaggi GIS e Geo WEB: piattaforme e architetture Conservare in un luogo

Dettagli

Modelli relazionali. Esistono diversi modi di modellare un database. Il modello piu' usato al momento e' il modello relazionale

Modelli relazionali. Esistono diversi modi di modellare un database. Il modello piu' usato al momento e' il modello relazionale Cenni sui DATABASE Cos'e' un database Un database puo' essere definito come una collezione strutturata di record (dati) I dati sono memorizzati su un computer in modo opportuno e possono essere recuperati

Dettagli

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database Uso delle basi di dati Uso delle Basi di Dati Il modulo richiede che il candidato comprenda il concetto di base dati (database) e dimostri di possedere competenza nel suo utilizzo. Cosa è un database,

Dettagli

Geografia libera con PostgreSQL: PostGIS come base di una infrastruttura di dati geografici

Geografia libera con PostgreSQL: PostGIS come base di una infrastruttura di dati geografici con PostgreSQL: PostGIS come base di una infrastruttura di dati geografici - venturato@faunalia.it Paolo Cavallini, Walter Lorenzetti - www.faunalia.it PostGIS Prima giornata nazionale dedicata a PostgreSQL

Dettagli

Tool. Basi di Dati e Sistemi Informativi Prof. Marco Di Felice Dott.sa Sara Zuppiroli A.A. 2012-2013

Tool. Basi di Dati e Sistemi Informativi Prof. Marco Di Felice Dott.sa Sara Zuppiroli A.A. 2012-2013 Tool Basi di Dati e Sistemi Informativi Prof. Marco Di Felice Dott.sa Sara Zuppiroli A.A. 2012-2013 Basi di Dati e Sistemi Informativi () PostgreSQL A.A. 2012-2013 1 / 26 Gli strumenti che vedremo Basi

Dettagli

Basi di dati Il linguaggio SQL

Basi di dati Il linguaggio SQL Basi di dati Il linguaggio SQL teoria e pratica con Microsoft Access Riepilogando Nelle basi di dati esiste 1. una parte invariante nel tempo, lo schema, costituita dalle caratteristiche dei dati (nomi

Dettagli

Basi di dati Il linguaggio SQL

Basi di dati Il linguaggio SQL Riepilogando Basi di dati Il linguaggio SQL Nelle basi di dati esiste 1. una parte invariante nel tempo, lo schema, costituita dalle caratteristiche dei dati (nomi degli attributi, domini, 2. una parte

Dettagli

DATABASE RELAZIONALI

DATABASE RELAZIONALI 1 di 54 UNIVERSITA DEGLI STUDI DI NAPOLI FEDERICO II DIPARTIMENTO DI DISCIPLINE STORICHE ETTORE LEPORE DATABASE RELAZIONALI Dott. Simone Sammartino Istituto per l Ambiente l Marino Costiero I.A.M.C. C.N.R.

Dettagli

Costruzione di Sit Web con PHP e MySQL. Lezione 7 - Esercitazione - Introduzione a MySQL: le tabelle, i tpi di dato, le query

Costruzione di Sit Web con PHP e MySQL. Lezione 7 - Esercitazione - Introduzione a MySQL: le tabelle, i tpi di dato, le query Costruzione di Sit Web con PHP e MySQL Lezione 7 - Esercitazione - Introduzione a MySQL: le tabelle, i tpi di dato, le query Esercitazione In questa lezione si farà insieme una seconda esercitazione che

Dettagli

Tutorial gvsig. Versione 1.1

Tutorial gvsig. Versione 1.1 Tutorial gvsig Versione 1.1 24/10/2007 Tutorial gvsig - Versione 1.1 www.gvsig.org Testo e screenshot a cura di R3 GIS Srl Via Johann Kravogl 2 39012 Merano (BZ) Italia Tel. +39 0473 494949 Fax +39 0473

Dettagli

GIS e Geo WEB: piattaforme e architetture. Docente: Cristoforo Abbattista email: abbattista@planetek.it

GIS e Geo WEB: piattaforme e architetture. Docente: Cristoforo Abbattista email: abbattista@planetek.it GIS e Geo WEB: piattaforme e architetture Docente: Cristoforo Abbattista email: abbattista@planetek.it III lezione Componenti e linguaggi GIS e Geo WEB: piattaforme e architetture Vediamo un po Demo PostgreSQL

Dettagli

Utilizzo dei servizi WFS della Regione Autonoma della Sardegna

Utilizzo dei servizi WFS della Regione Autonoma della Sardegna Utilizzo dei servizi WFS della Regione Autonoma della Sardegna Sistema Informativo Territoriale Regionale (SITR-IDT) Titolo Creatore Utilizzo del servizio WFS della Regione Sardegna SITR Data 02/09/09

Dettagli

Facoltà di Pianificazione del Territorio A.A. 2011/2012. Informatica

Facoltà di Pianificazione del Territorio A.A. 2011/2012. Informatica Facoltà di Pianificazione del Territorio A.A. 2011/2012 Informatica Le basi di dati 2 Dati e Informazioni Un dato in sé non costituisce un informazione in quanto consiste semplicemente di un insieme di

Dettagli

Linee di evoluzione dei Database

Linee di evoluzione dei Database Linee di evoluzione dei Database DB NoSQL Linked Open Data Semantic Web Esigenze e caratteristiche Presenza di grandi volumi di dati..crescenti Struttura non regolare dei dati da gestire Elementi relativamente

Dettagli

Corso di Informatica Generale 1 IN1. Linguaggio SQL

Corso di Informatica Generale 1 IN1. Linguaggio SQL Università Roma Tre Facoltà di Scienze M.F.N. di Laurea in Matematica di Informatica Generale 1 Linguaggio SQL Marco (liverani@mat.uniroma3.it) Sommario Prima parte: le basi dati relazionali Basi di dati:

Dettagli

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. (Structured Query Language) : Il linguaggio è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. prima versione IBM alla fine degli anni '70 per un prototipo di ricerca (System

Dettagli

Laboratorio di Basi di Dati

Laboratorio di Basi di Dati Laboratorio di Basi di Dati Docente: Alberto Belussi Lezione 1 SQL SQL (Structured Query Language) è stato definito nel 1973 ed è oggi il linguaggio più diffuso per i DBMS relazionali. Sono stati proposti

Dettagli

Quantum GIS per la pianificazione urbanistica

Quantum GIS per la pianificazione urbanistica Quantum GIS per la pianificazione urbanistica Piano di Recupero del Centro Storico nel Comune di Montecchio Maggiore Vicenza Flavio Rigolon, ufficio S.I.T. Comune di Montecchio Maggiore http://www.comune.montecchio-maggiore.vi.it

Dettagli

Introduzione a MySQL

Introduzione a MySQL Introduzione a MySQL Cinzia Cappiello Alessandro Raffio Politecnico di Milano Prima di iniziare qualche dettaglio su MySQL MySQL è un sistema di gestione di basi di dati relazionali (RDBMS) composto da

Dettagli

DB2 Universal Database (UDB) DB2 Universal Database (UDB)

DB2 Universal Database (UDB) DB2 Universal Database (UDB) DB2 Universal Database (UDB) Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: DB2Presentazione2009.pdf Sistemi Informativi L-A DB2 Universal

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica Laboratorio di Informatica Corso di Laurea Interfacoltà in Biotecnologie Lezione 3: Basi di Dati Lucido 1 Scopo della lezione Definire cos è una base di dati e un sistema di gestione della base di dati

Dettagli

Base Dati Introduzione

Base Dati Introduzione Università di Cassino Facoltà di Ingegneria Modulo di Alfabetizzazione Informatica Base Dati Introduzione Si ringrazia l ing. Francesco Colace dell Università di Salerno Gli archivi costituiscono una memoria

Dettagli

Organizzazione delle informazioni: Database

Organizzazione delle informazioni: Database Organizzazione delle informazioni: Database Laboratorio Informatico di base A.A. 2013/2014 Dipartimento di Scienze Aziendali e Giuridiche Università della Calabria Dott. Pierluigi Muoio (pierluigi.muoio@unical.it)

Dettagli

Approfondimento: i sistemi di gestione delle basi di dati (DBMS)

Approfondimento: i sistemi di gestione delle basi di dati (DBMS) Approfondimento: i sistemi di gestione delle basi di dati (DBMS) Prerequisito essenziale della funzionalità delle basi di dati è il controllo e la fruibilità dell informazione in esse contenuta: a tale

Dettagli

Corso di Informatica RDBMS RDBMS. Corso di Laurea in Conservazione e Restauro dei Beni Culturali

Corso di Informatica RDBMS RDBMS. Corso di Laurea in Conservazione e Restauro dei Beni Culturali Corso di Laurea in Conservazione e Restauro dei Beni Culturali Corso di Informatica Gianluca Torta Dipartimento di Informatica Tel: 011 670 6782 Mail: torta@di.unito.it RDBMS un Relational DBMS (RDBMS)

Dettagli

MICROSOFT ACCESS. Fabrizio Barani 1

MICROSOFT ACCESS. Fabrizio Barani 1 MICROSOFT ACCESS Premessa ACCESS è un programma di gestione di banche dati, consente la creazione e modifica dei contenitori di informazioni di un database (tabelle), l inserimento di dati anche mediante

Dettagli

Microsoft Access - dispensa didattica ECDL Modulo 5 - a cura di Antonino Terranova PAG 1

Microsoft Access - dispensa didattica ECDL Modulo 5 - a cura di Antonino Terranova PAG 1 Microsoft Access - Determinare l input appropriato per il database...2 Determinare l output appropriato per il database...2 Creare un database usando l autocomposizione...2 Creare la struttura di una tabella...4

Dettagli

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati Corso di Access Modulo L2A (Access) 1.1 Concetti di base 1 Prerequisiti Utilizzo elementare del computer Concetti fondamentali di basi di dati 2 1 Introduzione Un ambiente DBMS è un applicazione che consente

Dettagli

MODULO 5 Basi di dati (database)

MODULO 5 Basi di dati (database) MODULO 5 Basi di dati (database) I contenuti del modulo: questo modulo riguarda la conoscenza da parte del candidato dei concetti fondamentali sulle basi di dati e la sua capacità di utilizzarli. Il modulo

Dettagli

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. INFORMATICA Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. APPLICAZIONI WEB L architettura di riferimento è quella ampiamente diffusa ed

Dettagli

Basi di Dati Spaziali

Basi di Dati Spaziali degli Studi Basi di Dati Spaziali Introduzione ai Geographical Information Systems (GIS) Alessandra Chiarandini - Lezione 2 Le componenti dell Informazione Territoriale Introduzione ai GIS A. Chiarandini

Dettagli

Esercitazione 8. Basi di dati e web

Esercitazione 8. Basi di dati e web Esercitazione 8 Basi di dati e web Rev. 1 Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E8-1 Basi di dati e web Una modalità tipica di accesso alle basi di dati è tramite interfacce web Esiste una

Dettagli

Sistemi per la gestione di database: MySQL ( )

Sistemi per la gestione di database: MySQL ( ) Sistemi per la gestione di database: MySQL ( ) Relational Database e Relational Database Management System Un database è una raccolta di dati organizzata in modo da consentire l accesso, il reperimento

Dettagli

Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass

Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass 0_Iniziare con GRASS Avvio di Grass e creazione della cartella del Database di GRASS Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass

Dettagli

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari Gubiani & Montanari Il DBMS Oracle 1 Il DBMS Oracle Express Edition Donatella Gubiani e Angelo Montanari Il DBMS Oracle Il DBMS Oracle Oracle 10g Express Edition Il DBMS Oracle (nelle sue versioni più

Dettagli

Che cos è un DBMS? Capitolo 1. Perché usare un DBMS? DBMS. Descrizioni dei dati nei DBMS. Modelli di dati

Che cos è un DBMS? Capitolo 1. Perché usare un DBMS? DBMS. Descrizioni dei dati nei DBMS. Modelli di dati Che cos è un DBMS? Capitolo 1 Introduzione ai sistemi di basi di dati Una collezione integrata molto grande di dati Modella organizzazioni del mondo reale Entità (ad esempio studenti, corsi) Relazioni

Dettagli

Alla scoperta dei Graph Database

Alla scoperta dei Graph Database Alla scoperta dei Graph Database Matteo Pani 24 ottobre 2015 One size doesn t fit all Modellare le relazioni I Graph Database Il Labeled Property Graph Model I Graph-DBMS Neo4j Neo4j Internals Cypher Interagire

Dettagli

Basi di Dati e Conoscenza

Basi di Dati e Conoscenza Basi di Dati e Conoscenza II anno Loredana Vigliano Stanza O103 TEL. 0672594645 vigliano@mat.uniroma2.it Obiettivi del corso I parte Conoscere l' algebra su cui si basa la teoria dei Database Relazionali

Dettagli

Basi di dati. Introduzione. Una breve introduzione sulla suite di OpenOffice.org e la gestione dei database

Basi di dati. Introduzione. Una breve introduzione sulla suite di OpenOffice.org e la gestione dei database Basi di dati Introduzione Una breve introduzione sulla suite di OpenOffice.org e la gestione dei database OpenOffice.org (www.openoffice.org) è un potente software opensource che ha, quale scopo primario,

Dettagli

Azioni. Select e join non consentono di modificare il contenuto del DB. Inserzione di nuovi dati. Azioni desiderate. Aggiornamento di dati

Azioni. Select e join non consentono di modificare il contenuto del DB. Inserzione di nuovi dati. Azioni desiderate. Aggiornamento di dati Azioni Select e join non consentono di modificare il contenuto del DB Azioni desiderate Inserzione di nuovi dati Aggiornamento di dati Cancellazione di dati Aggiunta di un record insert into utenti(nome,tel,codice_u)

Dettagli

Istruzioni di installazione di IBM SPSS Modeler Server 15per Windows

Istruzioni di installazione di IBM SPSS Modeler Server 15per Windows Istruzioni di installazione di IBM SPSS Modeler Server 15per Windows IBM SPSS Modeler Server può essere installato e configurato per l esecuzione in modalità di analisi distribuita insieme ad altre installazioni

Dettagli

Sistema di Gestione di Basi di Dati DataBase Management System DBMS

Sistema di Gestione di Basi di Dati DataBase Management System DBMS Base di dati (accezione generica) collezione di dati, utilizzati per rappresentare le informazioni di interesse per una o più applicazioni di una organizzazione (accezione specifica) collezione di dati

Dettagli

MANUALE D USO DEL SOFTWARE APPLICATIVO ADB-TOOLBOX (VERSIONE 1.7 E SUPERIORI) UTILIZZO DEI SERVIZI WMS-WFS-WCS E DEL CATALOGO CSW

MANUALE D USO DEL SOFTWARE APPLICATIVO ADB-TOOLBOX (VERSIONE 1.7 E SUPERIORI) UTILIZZO DEI SERVIZI WMS-WFS-WCS E DEL CATALOGO CSW Ministero dell Ambiente e della Tutela del Territorio e del Mare MANUALE D USO DEL SOFTWARE APPLICATIVO ADB-TOOLBOX (VERSIONE 1.7 E UTILIZZO DEI SERVIZI WMS-WFS-WCS E DEL CATALOGO CSW Titolo Autore Oggetto

Dettagli

AssetCenterTM Versione 3.51

AssetCenterTM Versione 3.51 AssetCenterTM Versione 3.51 Addendum 07 novembre 2000 ITEM ACT-3.51-IT-00795 Addendum - Italian Peregrine Systems, Inc., 1999-2000. Tutti i diritti riservati. Runtime Sybase SQL Anywhere : Sybase, Inc.

Dettagli

Introduzione a Quantum GIS (QGIS) - passaggio dal software ArcView 3.x a software GIS OpenSource

Introduzione a Quantum GIS (QGIS) - passaggio dal software ArcView 3.x a software GIS OpenSource Introduzione a Quantum GIS (QGIS) - passaggio dal software ArcView 3.x a software GIS OpenSource I servizi OGC Forestello Luca - Niccoli Tommaso - Sistema Informativo Ambientale AT01 http://webgis.arpa.piemonte.it

Dettagli

Descrizione generale. Architettura del sistema

Descrizione generale. Architettura del sistema Descrizione generale Sister.Net nasce dall esigenza di avere un sistema generale di Cooperazione Applicativa tra Enti nel settore dell Informazione Geografica che consenta la realizzazione progressiva

Dettagli

Il sistema IBM DB2. Sistemi Informativi T. Versione elettronica: L01.1.IntroduzioneDB2.pdf

Il sistema IBM DB2. Sistemi Informativi T. Versione elettronica: L01.1.IntroduzioneDB2.pdf Il sistema IBM DB2 Sistemi Informativi T Versione elettronica: L01.1.IntroduzioneDB2.pdf IBM DB2 Il DBMS relazionale IBM DB2 è il prodotto di punta dell IBM per la gestione di basi di dati relazionali

Dettagli

GUIDA ALL USO DEL VISUALIZZATORE CARTOGRAFICO

GUIDA ALL USO DEL VISUALIZZATORE CARTOGRAFICO Ministero dell Ambiente e della tutela del territorio e del mare GUIDA ALL USO DEL VISUALIZZATORE CARTOGRAFICO Stato del documento Redatto Approvato Funzione Team di progetto Geoportale nazionale Responsabile

Dettagli

Prima Lezione: Costruire una mappa

Prima Lezione: Costruire una mappa Prima Lezione: Costruire una mappa I tipi di informazione geografica disponibili Navigazione nella mappa Coordinate e scala Vista panoramica Introduzione ai GIS GIS significa Sistema Informativo Geografico

Dettagli

Sistemi Informativi e Basi di Dati

Sistemi Informativi e Basi di Dati Sistemi Informativi e Basi di Dati Laurea Specialistica in Tecnologie di Analisi degli Impatti Ecotossicologici Docente: Francesco Geri Dipartimento di Scienze Ambientali G. Sarfatti Via P.A. Mattioli

Dettagli

Impararlo è molto semplice, esistono manuali, o meglio mattoni, su SQL, ma qui verranno illustrati tutti i comandi più utilizzati... e utili.

Impararlo è molto semplice, esistono manuali, o meglio mattoni, su SQL, ma qui verranno illustrati tutti i comandi più utilizzati... e utili. Sql è un linguaggio standard che permette di operare con i database. Per database intendo uno qualsiasi e non il solito Access, ma anche Oracle, Microsoft SQL Server, Informix, DB2, Sybase... Sql sta per

Dettagli

SCP: SCHEDULER LAYER. a cura di. Alberto Boccato

SCP: SCHEDULER LAYER. a cura di. Alberto Boccato SCP: SCHEDULER LAYER a cura di Alberto Boccato PREMESSA: Negli ultimi tre anni la nostra scuola ha portato avanti un progetto al quale ho partecipato chiamato SCP (Scuola di Calcolo Parallelo). Di fatto

Dettagli

Il DATABASE Access. Concetti Fondamentali

Il DATABASE Access. Concetti Fondamentali Il DATABASE Access Concetti Fondamentali Con la nascita delle comunità di uomini, si è manifestata la necessità di conservare in maniera ordinata informazioni per poi poterne usufruire in futuro. Basta

Dettagli