ARCHITETTURA DI SISTEMA
Filippo Licenziati
PROGETTO E REALIZZAZIONE DI
SISTEMI INFORMATIVI
TERRITORIALI
l’architettura
1
ARCHITETTURA DI SISTEMA
2
PROGETTO S.I.T.
STUDIO DI
FATTIBILITÀ
ANALISI DEI
DATI
PROGETTO DEL
DATABASE
ACQUISIZIONE
DATI
ANALISI DELLE
FONTI
CARTOGRAFICHE
PIANO DI
ACQUISIZIONE
VERIFICHE
ANALISI
FUNZIONALE
PROGETTO DELLE
PERSONALIZZAZ.
REALIZZAZIONE
DEL PROTOTIPO
ANALISI DELLE
UTENZE
PROGETTO
SISTEMISTICO
SISTEMA
ARCHITETTURA DI SISTEMA
INDICE
ANALISI DELLE UTENZE
• caratterizzazione
• stime quantitative
PROGETTO SISTEMISTICO
• architettura applicativa
• architettura di rete
• configurazione hardware
• implementazione del database
3
ARCHITETTURA DI SISTEMA
4
ANALISI DELLE UTENZE
Caratterizzazione e
stima quantitativa degli
utenti e del database
ARCHITETTURA DI SISTEMA
Caratterizzazione dell’utenza
• secondo le capacità operative
• secondo le esigenze d’accesso
• secondo le necessità operative
5
ARCHITETTURA DI SISTEMA
Capacità operative (I)
UTENTE ESPERTO
accede direttamente al
database attraverso le
funzioni primitive del
software di ambiente
6
ARCHITETTURA DI SISTEMA
Capacità operative (II)
UTENTE ABITUALE
accede a funzioni
personalizzate, con limitate
possibilità di modifica o di
downloading
7
ARCHITETTURA DI SISTEMA
Capacità operative (III)
UTENTE
OCCASIONALE
accede a funzioni
personalizzate, senza
possibilità di modifica o
di downloading
8
ARCHITETTURA DI SISTEMA
Esigenze di accesso (I)
ACCESSO PER TERRITORIO
9
ARCHITETTURA DI SISTEMA
Esigenze di accesso (II)
ACCESSO PER TEMATISMO
10
ARCHITETTURA DI SISTEMA
Esigenze di accesso (III)
ACCESSO INCROCIATO
11
ARCHITETTURA DI SISTEMA
12
Esigenze operative (I)
CONSULTAZIONE
le attività di consultazione
consistono nell’interrogazione
del database e
nell’elaborazione delle
informazioni in esso
contenute, senza apportare
modifiche permanenti
ARCHITETTURA DI SISTEMA
13
Esigenze operative (II)
AGGIORNAMENTO
le attività di aggiornamento
comportano una proposta
di modifica permanente,
che diverrà definitiva dopo
la validazione
ARCHITETTURA DI SISTEMA
14
Esigenze operative (III)
VALIDAZIONE
la validazione
autorizza in via
definitiva una
modifica
permanente del
database
ARCHITETTURA DI SISTEMA
Stima quantitativa
NUMERO E
TIPOLOGIA
DEGLI UTENTI
numero e tipologia
dei p.d.l. e delle
licenze client
15
ARCHITETTURA DI SISTEMA
Dislocazione
DISLOCAZIONE
DEGLI UTENTI
tipologia e velocità
della rete e
configurazione dei
server
16
ARCHITETTURA DI SISTEMA
Dimensioni del database
VOLUME E
TECNOLOGIA
DEL DB
scelta del DB non
grafico e
dimensionamento
delle memorie di
massa
17
ARCHITETTURA DI SISTEMA
18
PROGETTO SISTEMISTICO
Configurazione della
struttura di elaborazione e
dell’infrastruttura di
comunicazione
ARCHITETTURA DI SISTEMA
19
ARCHITETTURA APPLICATIVA
web based
client/server
ARCHITETTURA DI SISTEMA
Architettura client/server
Un'applicazione client/server è un tipo di applicazione di rete,
nella quale un computer client istanzia l'interfaccia utente di
un'applicazione connettendosi ad una server application.
20
ARCHITETTURA DI SISTEMA
21
Architettura web based
intranet
Internet
application
server
web server
Con il termine web-application si descrive un'applicazione
accessibile via web (web based) per mezzo di un network, come
ad esempio una intranet o attraverso la Rete Internet.
ARCHITETTURA DI SISTEMA
Stand alone, file based
ArcReader
ArcInfo
ArcEditor
File
ArcView
22
ARCHITETTURA DI SISTEMA
Client/server, database
ArcReader
ArcInfo
ArcEditor
ArcSDE Service
ArcView
Server
Windows, Unix, Linux
Database
23
ARCHITETTURA DI SISTEMA
Web based, database
Browser
Html/JAVA
ArcExplorer
ArcIMS Service
ArcSDE Service
Server
Windows, Unix, Linux
Database
ArcPad
24
ARCHITETTURA DI SISTEMA
25
Architettura completa
ArcEditor
ArcView
ArcExplorer
Client
ArcInfo
Browser
Html/JAVA
ArcIMS Service
ArcReader
ArcSDE Service
Server
ArcPad
Windows, Unix, Linux
File
Database
Dati
ARCHITETTURA DI SISTEMA
26
SOA: Service Oriented Architecture
Attraverso
un'architettura basata sui
web services, applicazioni
software scritte in
linguaggi diversi di
Web Services
programmazione e
implementate su
piattaforme hardware
diverse possono essere
utilizzate per l’elaborazione
di operazioni complesse sia
su reti aziendali sia su
Internet.
Web Server (IIS, IPlanet, Apache, etc.)
ArcIMS Server
Image
Feature
Download
Route
Metadata
ArcIMS
ArcMap
ARCHITETTURA DI SISTEMA
27
ARCHITETTURA DI RETE
PROGETTO DELLA RETE
• LAN
• WAN
• intranet
• extranet
• Internet
ARCHITETTURA DI SISTEMA
28
LAN: Local Area Network
Tipologia di rete informatica con
un'estensione territoriale limitata a
qualche chilometro, tipicamente serve
un'azienda all'interno di un edificio, o al
massimo più edifici adiacenti fra loro.
L'estensione territoriale
limitata favorisce la
velocità della
trasmissione dati, che si
attesta di norma tra i 10
Mbps e i 100 Mbps. Le
LAN più recenti
operano poi fino a 1
Gbps.
La LAN inoltre, sempre in conseguenza dell'estensione territoriale limitata,
ha bassi ritardi e pochissimi errori.
ARCHITETTURA DI SISTEMA
WAN: Wide Area Network
Una rete geografica, in inglese Wide Area
Network, è una rete informatica usata per
connettere insieme più reti locali (LAN) in
modo che un utente di una rete possa
comunicare con utenti di un'altra rete.
Di solito le WAN sono costruite per una
particolare organizzazione e sono private.
29
ARCHITETTURA DI SISTEMA
Intranet
Una intranet è una rete
locale (LAN), o un
raggruppamento di reti
locali, basata sul
protocollo TCP/IP, usata
all'interno di una
organizzazione.
30
ARCHITETTURA DI SISTEMA
31
Protocollo TCP/IP (I)
Per potersi collegare ad Internet, il
solo requisito richiesto ad un
qualsiasi agente o dispositivo
elettronico è quello di poter
"dialogare" con i protocolli.
Tali protocolli controllano l'invio
e la ricezione dei pacchetti. I
protocolli più importanti sono il
Transmission Control Protocol
("Protocollo di trasmissione
dati", TCP) e l'Internet Protocol
("Protocollo Internet", IP).
ARCHITETTURA DI SISTEMA
32
Protocollo TCP/IP (II)
La struttura di comunicazione è a livelli: il protocollo TCP occupa il livello
superiore rispetto a IP. Al di sopra e al di sotto ne funzionano degli altri.
In pratica un pacchetto che parte
da un host attraversa i diversi
strati protocollari che aggiungono
informazioni al pacchetto.
Quando questo raggiunge la
destinazione, avviene uno
spacchettamento inverso e ogni
livello legge le sue informazioni.
ARCHITETTURA DI SISTEMA
Internet
Internet può essere vista come una
rete logica di enorme complessità,
appoggiata a strutture fisiche e
collegamenti di vario tipo, che
interconnette un agente umano o
automatico ad un altro agente tramite, praticamente,
qualsiasi tipo di computer o elaboratore elettronico
oggi o in futuro esistente o immaginabile.
33
ARCHITETTURA DI SISTEMA
Extranet
Quando, via Internet, una parte della intranet viene resa
accessibile a persone esterne all'organizzazione, tale parte
diventa una extranet.
Al fine di impedire accessi indesiderati, l’utente esterno viene
identificato attraverso un’opportuna profilazione (user-id e
password).
34
ARCHITETTURA DI SISTEMA
35
Servizi ASP
I servizi ASP, ovvero l'erogazione di software tramite Internet
dietro pagamento di un canone periodico calcolato sulla base
dell'utilizzo del software stesso, rappresentano una delle aree più
promettenti nel panorama dei servizi di Information Technology.
L'utilizzo dei servizi ASP presenta i seguenti vantaggi:
• riduzione della complessità della gestione dell'informatica in azienda
• diminuzione dei costi di Information Technology (investimenti e costi di
gestione)
• sostituzione di costi fissi di Information Technology con costi variabili (canoni
periodici spesso determinati sulla base dell'utilizzo effettivo degli applicativi)
• accesso ad applicazioni di elevata qualità ed al relativo know-how (spesso non
possibile per le aziende di medie e piccole dimensioni).
ARCHITETTURA DI SISTEMA
36
Collegamenti Internet
DMZ
LAN
application
server
web server
firewall
Internet
Una DMZ (demilitarized zone) è un segmento isolato di LAN raggiungibile sia
da reti interne che esterne che permette, però, connessioni esclusivamente
verso l'esterno: gli host attestati sulla DMZ non possono connettersi alla rete
aziendale interna.
Un firewall è un apparato di rete hardware o software che filtra tutti i
pacchetti entranti ed uscenti, da e verso una rete o un computer, applicando
regole che contribuiscono alla sicurezza della stessa.
ARCHITETTURA DI SISTEMA
37
CONFIGURAZIONE HARDWARE
data server
application server
net server
web server
clients
protezione dei dati
ARCHITETTURA DI SISTEMA
Database server (I)
server dedicati alla gestione di database centralizzati o
distribuiti (cioè localizzati in una o più macchine accessibili
attraverso i protocolli di rete)
38
ARCHITETTURA DI SISTEMA
39
Database server (II)
Vantaggi:
• concentrazione dei dati validi su una
singola macchina o classe di macchine, con
maggiori possibilità di garantire l'integrità,
il mirroring, il backup, la riservatezza e la
validità dei dati;
• fornitura di servizio di CPU con garanzie
di limitazione di accesso, permessi operativi;
Il ruolo di server DBMS e' svolto tradizionalmente da macchine
UNIX con gestionali di basi dati di grossa levatura quali Oracle,
Informix e Sybase
ARCHITETTURA DI SISTEMA
40
Storage Area Network (I)
Un'architettura SAN
lavora in modo che tutti
i dispositivi di
memorizzazione siano
disponibili a qualsiasi
server della LAN di cui
la SAN fa parte.
Il vantaggio di un'architettura di questo tipo è che tutta la
potenza di calcolo dei server è utilizzata per le applicazioni, in
quanto i dati non risiedono direttamente in alcuno di questi.
ARCHITETTURA DI SISTEMA
41
Storage Area Network (II)
In una rete SAN le
periferiche di storage
sono connesse ai server
attraverso una
topologia costituita
essenzialmente da
canali - solitamente in
fibra ottica - e da vari
dispositivi di switching,
evitando così un
sovraccarico della LAN.
ARCHITETTURA DI SISTEMA
42
Network Attached Storage
Dispositivo collegato ad una rete di computer
la cui funzione è quella di condividere tra gli
utenti della rete una area di storage (o disco).
I NAS sono generalmente, ma non necessariamente, dei
computer ridotti con a bordo il minimo necessario per poter
comunicare via rete. Oggigiorno i NAS più diffusi sono in
pratica dei PC con a bordo il sistema operativo Linux
(comunque non visibile dall'utente), e numerosi hard disk
per l'immagazzinamento dati.
Questa architettura ha il vantaggio di rendere disponibili i file
contemporaneamente su diverse piattaforme come ad esempio Linux, Windows
e Unix, in quanto il sistema operativo implementa i server di rete per tutti gli
standard più diffusi quali ad esempio FTP, Network File System (NFS) e Samba
per le reti Windows.
ARCHITETTURA DI SISTEMA
NAS e SAN (I)
43
ARCHITETTURA DI SISTEMA
44
NAS e SAN (II)
NAS
SAN
I SAN “comprendono” una
rete, piuttosto di usarla per il
loro funzionamento, e sono
assoggettati a tecnologie e
protocolli spesso proprietari
per dar luogo al trasferimento
Talvolta un sistema NAS può
essere utilizzato come nodo di una delle informazioni utili a
definire le funzionalità di
SAN, data la scalabilità di tale
comunicazione interne.
architettura.
I NAS, invece, sono dispositivi
direttamente collegati alla
LAN.
ARCHITETTURA DI SISTEMA
45
Application server
macchina dedicata
all’esecuzione degli
applicativi, che viene
affidata non ai PC, ma a
server con particolari ed
elevate risorse di calcolo
Il ruolo di application server, che agli inizi del movimento clientserver era appannaggio di UNIX, sembra sempre più passare a
macchine Windows NT.
ARCHITETTURA DI SISTEMA
46
Net server
Il server di rete è un computer dedicato che
funge da "computer centrale" di una rete
locale e che deve possedere particolari
caratteristiche di:
• alta affidabilità
• elevata potenza elaborativa
• accesso condiviso da parte di tutti i
computer della rete
I servizi che un server di rete eroga sono:
• gestione utenti e gruppi di lavoro
• aree di dati condivise a cui tutti gli
utenti accedono in contemporanea
• programmi condivisi in rete
• caselle di posta elettronica interne
• sistema di sicurezza contro gli accessi
indesiderati da internet e dall'esterno
• sistema di salvataggio automatico dei dati
• sistema automatico di spegnimento
ARCHITETTURA DI SISTEMA
47
Web server
Si occupa di fornire le
pagine web, su richiesta
del browser residente sul
client.
Le informazioni inviate
dal web server viaggiano
in rete trasportate dal
protocollo HTTP.
Il computer utilizzato da
Tim Berners-Lee
come primo server web nel 1990
ARCHITETTURA DI SISTEMA
Clients
Qualsiasi componente che accede
ai servizi o alle risorse di un'altra
componente, detta server.
Un computer collegato ad
un server tramite una rete
informatica (locale o
geografica) ed al quale
richiede uno o più servizi,
utilizzando uno o più
protocolli di rete è un
esempio di client hardware.
48
ARCHITETTURA DI SISTEMA
Protezione dei dati
Un Redundant Array of Independent Disks
(RAID, insieme ridondante di dischi
indipendenti) è un sistema informatico che
usa un insieme di dischi rigidi per
condividere o replicare le informazioni.
I benefici del RAID sono di aumentare
l'integrità dei dati, la tolleranza ai guasti e/o
le prestazioni, rispetto all'uso di un disco
singolo.
49
ARCHITETTURA DI SISTEMA
50
RAID 1: mirroring
Il sistema RAID 1 crea una copia esatta (mirror) di tutti i dati su
due o più dischi. È utile nei casi in cui la ridondanza è più
importante che usare tutti i dischi alla loro massima capacità:
infatti il sistema può avere una capacità massima pari a quella del
disco più piccolo.
Poiché ogni disco può essere gestito
autonomamente nel caso l'altro si guasti,
l'affidabilità aumenta linearmente al numero di
dischi presenti.
RAID 1 aumenta anche le prestazioni in lettura,
visto che molte implementazioni possono leggere
da un disco mentre l'altro è occupato.
ARCHITETTURA DI SISTEMA
51
RAID 5 (I)
Un sistema RAID 5 usa una divisione dei dati a livello di blocco con
i dati di parità distribuiti tra tutti i dischi appartenenti al RAID.
Nell'esempio, una
richiesta al blocco "A1"
potrebbe essere evasa
dal disco 1.
Una simultanea
richiesta per il blocco B1
dovrebbe aspettare, ma
una richiesta simultanea
per il blocco B2
potrebbe essere evasa in
contemporanea.
ARCHITETTURA DI SISTEMA
52
RAID 5 (II)
Il blocco di parità è letto solo quando la lettura di un
settore dà un errore. In questo caso, il settore nella
stessa posizione relativa nei blocchi di dati rimanenti,
insieme al blocco di parità, vengono usati per
ricostruire il blocco mancante. In questo modo
l'errore viene nascosto al computer chiamante.
Nella stessa maniera, se un disco dovesse danneggiarsi
all'interno del sistema, i blocchi di parità dei dischi
rimanenti sono combinati matematicamente "al volo"
con i blocchi dati rimasti per ricostruire i dati del
disco guasto.
ARCHITETTURA DI SISTEMA
53
Protezione dai guasti (I)
La tolleranza ai guasti (faulttolerance) è la capacità di un sistema
di non subire interruzioni di
servizio anche in presenza di guasti.
La tolleranza ai guasti è uno degli
aspetti che costituiscono
l'affidabilità.
Tuttavia la tolleranza ai guasti non garantisce
l'immunità da tutti i guasti, ma solo che i guasti per cui
è stata progettata una protezione non causino
interruzioni del servizio.
ARCHITETTURA DI SISTEMA
Protezione dai guasti (II)
Le principali misure di fault-tolerance sono:
• gruppi di continuità sull’alimentazione elettrica,
• “robustezza” degli apparati,
• sistemi multiprocessore,
• ridondanza dei server,
• verifica di parità
• ridondanza dei dati (RAID)
54
ARCHITETTURA DI SISTEMA
55
IMPLEMENTAZIONE DEL DBMS
distribuzione del database
Data Base Management
System
integrazione con il sistema
informativo
ARCHITETTURA DI SISTEMA
Distribuzione del database
clients
application
server
zona 1
zona 2
zona 3
56
ARCHITETTURA DI SISTEMA
Esecuzione parallela (I)
client
zona 1
zona 2
zona 3
57
ARCHITETTURA DI SISTEMA
Esecuzione parallela (II)
client
zona 1
zona 2
zona 3
58
ARCHITETTURA DI SISTEMA
59
Database Management System
Si occupa di fornire i servizi di
utilizzo del database ad altri
programmi e ad altri computer
secondo la modalità client/server.
Il server memorizza i dati, riceve le
richieste dei client ed elabora le
risposte appropriate.
I DBMS sono complessi sistemi software concepiti, oltre che per
memorizzare i dati, anche per fornire un accesso rapido ed
efficace a una pluralità di utenti contemporaneamente e
garantire protezione sia dai guasti che dagli accessi indebiti.
ARCHITETTURA DI SISTEMA
60
Database Management System
Tra i più diffusi DBMS open source troviamo:
• Firebird SQL
• MySQL
• PostgreSQL
I più diffusi sistemi commerciali sono:
• IBM DB2
• Microsoft SQL Server
• Oracle
ARCHITETTURA DI SISTEMA
61
Integrazione con il sistema informativo
SDE
RDBMS
P.R.G.
PIANI DI COORD.
DISCARICHE
CAVE
…….
ANAGRAFE
ATTI AMMINISTRAT.
…….